From eef20ba1767bb7e5bbaa9e702b2ff383a91d70ab Mon Sep 17 00:00:00 2001 From: chanbengz Date: Tue, 8 Oct 2024 15:55:45 +0800 Subject: [PATCH] chore: update cs301 lab3 --- .gitmodules | 3 + .../practice1/.settings/language.settings.xml | 4 +- .../Lab/lab2/practice1/practice1.cfg | 44 + .../Lab/lab2/practice1/practice1.launch | 22 +- .../practice2/.settings/language.settings.xml | 4 +- .../Lab/lab2/practice2/practice2.cfg | 44 + .../Lab/lab2/practice2/practice2.launch | 25 +- .../Lab/lab3/CS301-2024fall-lab3-TFTLCD.pdf | Bin 2272672 -> 2614052 bytes .../Lab/lab3/lcd/.cproject | 171 + .../Lab/lab3/lcd/.mxproject | 27 + .../Lab/lab3/lcd/.project | 32 + .../lab3/lcd/.settings/language.settings.xml | 25 + .../org.eclipse.core.resources.prefs | 0 .../lcd/.settings/stm32cubeide.project.prefs | 4 + .../Lab/lab3/lcd/Core/Inc/font.h | 455 + .../Lab/lab3/{uart => lcd}/Core/Inc/gpio.h | 0 .../Lab/lab3/lcd/Core/Inc/lcd.h | 238 + .../Lab/lab3/{uart => lcd}/Core/Inc/main.h | 0 .../lab3/lcd/Core/Inc/stm32f1xx_hal_conf.h | 391 + .../{uart => lcd}/Core/Inc/stm32f1xx_it.h | 0 .../Lab/lab3/{uart => lcd}/Core/Src/gpio.c | 0 .../Lab/lab3/lcd/Core/Src/lcd.c | 2841 +++ .../Lab/lab3/lcd/Core/Src/main.c | 217 + .../Core/Src/stm32f1xx_hal_msp.c | 0 .../{uart => lcd}/Core/Src/stm32f1xx_it.c | 0 .../lab3/{uart => lcd}/Core/Src/syscalls.c | 0 .../Lab/lab3/{uart => lcd}/Core/Src/sysmem.c | 0 .../{uart => lcd}/Core/Src/system_stm32f1xx.c | 0 .../Core/Startup/startup_stm32f103rctx.s | 0 .../Lab/lab3/lcd/Debug/Core/Src/gpio.cyclo | 1 + .../Lab/lab3/lcd/Debug/Core/Src/gpio.d | 47 + .../Lab/lab3/lcd/Debug/Core/Src/gpio.o | Bin 0 -> 776116 bytes .../Lab/lab3/lcd/Debug/Core/Src/gpio.su | 1 + .../Lab/lab3/lcd/Debug/Core/Src/lcd.cyclo | 29 + .../Lab/lab3/lcd/Debug/Core/Src/lcd.d | 49 + .../Lab/lab3/lcd/Debug/Core/Src/lcd.o | Bin 0 -> 885860 bytes .../Lab/lab3/lcd/Debug/Core/Src/lcd.su | 29 + .../Lab/lab3/lcd/Debug/Core/Src/main.cyclo | 3 + .../Lab/lab3/lcd/Debug/Core/Src/main.d | 50 + .../Lab/lab3/lcd/Debug/Core/Src/main.o | Bin 0 -> 804216 bytes .../Lab/lab3/lcd/Debug/Core/Src/main.su | 3 + .../Debug/Core/Src/stm32f1xx_hal_msp.cyclo | 1 + .../lcd/Debug/Core/Src/stm32f1xx_hal_msp.d | 46 + .../lcd/Debug/Core/Src/stm32f1xx_hal_msp.o | Bin 0 -> 775268 bytes .../lcd/Debug/Core/Src/stm32f1xx_hal_msp.su | 1 + .../lcd/Debug/Core/Src/stm32f1xx_it.cyclo | 9 + .../lab3/lcd/Debug/Core/Src/stm32f1xx_it.d | 48 + .../lab3/lcd/Debug/Core/Src/stm32f1xx_it.o | Bin 0 -> 776832 bytes .../lab3/lcd/Debug/Core/Src/stm32f1xx_it.su | 9 + .../Lab/lab3/lcd/Debug/Core/Src/subdir.mk | 48 + .../lab3/lcd/Debug/Core/Src/syscalls.cyclo | 18 + .../Lab/lab3/lcd/Debug/Core/Src/syscalls.d | 1 + .../Lab/lab3/lcd/Debug/Core/Src/syscalls.o | Bin 0 -> 82996 bytes .../Lab/lab3/lcd/Debug/Core/Src/syscalls.su | 18 + .../Lab/lab3/lcd/Debug/Core/Src/sysmem.cyclo | 1 + .../Lab/lab3/lcd/Debug/Core/Src/sysmem.d | 1 + .../Lab/lab3/lcd/Debug/Core/Src/sysmem.o | Bin 0 -> 47800 bytes .../Lab/lab3/lcd/Debug/Core/Src/sysmem.su | 1 + .../lcd/Debug/Core/Src/system_stm32f1xx.cyclo | 2 + .../lcd/Debug/Core/Src/system_stm32f1xx.d | 45 + .../lcd/Debug/Core/Src/system_stm32f1xx.o | Bin 0 -> 775884 bytes .../lcd/Debug/Core/Src/system_stm32f1xx.su | 2 + .../Core/Startup/startup_stm32f103rctx.d | 2 + .../Core/Startup/startup_stm32f103rctx.o | Bin 0 -> 6516 bytes .../Lab/lab3/lcd/Debug/Core/Startup/subdir.mk | 27 + .../Src/stm32f1xx_hal.cyclo | 25 + .../STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d | 46 + .../STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o | Bin 0 -> 787728 bytes .../STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.su | 25 + .../Src/stm32f1xx_hal_cortex.cyclo | 29 + .../Src/stm32f1xx_hal_cortex.d | 46 + .../Src/stm32f1xx_hal_cortex.o | Bin 0 -> 790816 bytes .../Src/stm32f1xx_hal_cortex.su | 29 + .../Src/stm32f1xx_hal_dma.cyclo | 13 + .../Src/stm32f1xx_hal_dma.d | 46 + .../Src/stm32f1xx_hal_dma.o | Bin 0 -> 789152 bytes .../Src/stm32f1xx_hal_dma.su | 13 + .../Src/stm32f1xx_hal_exti.cyclo | 9 + .../Src/stm32f1xx_hal_exti.d | 46 + .../Src/stm32f1xx_hal_exti.o | Bin 0 -> 780308 bytes .../Src/stm32f1xx_hal_exti.su | 9 + .../Src/stm32f1xx_hal_flash.cyclo | 14 + .../Src/stm32f1xx_hal_flash.d | 46 + .../Src/stm32f1xx_hal_flash.o | Bin 0 -> 783320 bytes .../Src/stm32f1xx_hal_flash.su | 14 + .../Src/stm32f1xx_hal_flash_ex.cyclo | 16 + .../Src/stm32f1xx_hal_flash_ex.d | 46 + .../Src/stm32f1xx_hal_flash_ex.o | Bin 0 -> 786344 bytes .../Src/stm32f1xx_hal_flash_ex.su | 16 + .../Src/stm32f1xx_hal_gpio.cyclo | 8 + .../Src/stm32f1xx_hal_gpio.d | 46 + .../Src/stm32f1xx_hal_gpio.o | Bin 0 -> 781784 bytes .../Src/stm32f1xx_hal_gpio.su | 8 + .../Src/stm32f1xx_hal_gpio_ex.cyclo | 3 + .../Src/stm32f1xx_hal_gpio_ex.d | 46 + .../Src/stm32f1xx_hal_gpio_ex.o | Bin 0 -> 775132 bytes .../Src/stm32f1xx_hal_gpio_ex.su | 3 + .../Src/stm32f1xx_hal_pwr.cyclo | 18 + .../Src/stm32f1xx_hal_pwr.d | 46 + .../Src/stm32f1xx_hal_pwr.o | Bin 0 -> 783688 bytes .../Src/stm32f1xx_hal_pwr.su | 18 + .../Src/stm32f1xx_hal_rcc.cyclo | 15 + .../Src/stm32f1xx_hal_rcc.d | 46 + .../Src/stm32f1xx_hal_rcc.o | Bin 0 -> 787796 bytes .../Src/stm32f1xx_hal_rcc.su | 15 + .../Src/stm32f1xx_hal_rcc_ex.cyclo | 3 + .../Src/stm32f1xx_hal_rcc_ex.d | 46 + .../Src/stm32f1xx_hal_rcc_ex.o | Bin 0 -> 778576 bytes .../Src/stm32f1xx_hal_rcc_ex.su | 3 + .../Src/stm32f1xx_hal_tim.cyclo | 0 .../Src/stm32f1xx_hal_tim.d | 46 + .../Src/stm32f1xx_hal_tim.o | Bin 0 -> 773188 bytes .../Src/stm32f1xx_hal_tim.su | 0 .../Src/stm32f1xx_hal_tim_ex.cyclo | 0 .../Src/stm32f1xx_hal_tim_ex.d | 46 + .../Src/stm32f1xx_hal_tim_ex.o | Bin 0 -> 773196 bytes .../Src/stm32f1xx_hal_tim_ex.su | 0 .../STM32F1xx_HAL_Driver/Src/subdir.mk | 63 + .../Lab/lab3/lcd/Debug/lcd.elf | Bin 0 -> 808960 bytes .../Lab/lab3/lcd/Debug/lcd.list | 17462 ++++++++++++++++ .../Lab/lab3/lcd/Debug/lcd.map | 2998 +++ .../Lab/lab3/lcd/Debug/makefile | 94 + .../Lab/lab3/lcd/Debug/objects.list | 22 + .../Lab/lab3/lcd/Debug/objects.mk | 9 + .../Lab/lab3/lcd/Debug/sources.mk | 28 + .../Device/ST/STM32F1xx/Include/stm32f103xe.h | 0 .../Device/ST/STM32F1xx/Include/stm32f1xx.h | 0 .../ST/STM32F1xx/Include/system_stm32f1xx.h | 0 .../CMSIS/Device/ST/STM32F1xx/License.md | 0 .../Drivers/CMSIS/Include/cmsis_armcc.h | 0 .../Drivers/CMSIS/Include/cmsis_armclang.h | 0 .../Drivers/CMSIS/Include/cmsis_compiler.h | 0 .../Drivers/CMSIS/Include/cmsis_gcc.h | 0 .../Drivers/CMSIS/Include/cmsis_iccarm.h | 0 .../Drivers/CMSIS/Include/cmsis_version.h | 0 .../Drivers/CMSIS/Include/core_armv8mbl.h | 0 .../Drivers/CMSIS/Include/core_armv8mml.h | 0 .../Drivers/CMSIS/Include/core_cm0.h | 0 .../Drivers/CMSIS/Include/core_cm0plus.h | 0 .../Drivers/CMSIS/Include/core_cm1.h | 0 .../Drivers/CMSIS/Include/core_cm23.h | 0 .../Drivers/CMSIS/Include/core_cm3.h | 0 .../Drivers/CMSIS/Include/core_cm33.h | 0 .../Drivers/CMSIS/Include/core_cm4.h | 0 .../Drivers/CMSIS/Include/core_cm7.h | 0 .../Drivers/CMSIS/Include/core_sc000.h | 0 .../Drivers/CMSIS/Include/core_sc300.h | 0 .../Drivers/CMSIS/Include/mpu_armv7.h | 0 .../Drivers/CMSIS/Include/mpu_armv8.h | 0 .../Drivers/CMSIS/Include/tz_context.h | 0 .../{uart => lcd}/Drivers/CMSIS/LICENSE.txt | 0 .../Inc/Legacy/stm32_hal_legacy.h | 0 .../STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h | 0 .../Inc/stm32f1xx_hal_cortex.h | 0 .../Inc/stm32f1xx_hal_def.h | 0 .../Inc/stm32f1xx_hal_dma.h | 0 .../Inc/stm32f1xx_hal_dma_ex.h | 0 .../Inc/stm32f1xx_hal_exti.h | 0 .../Inc/stm32f1xx_hal_flash.h | 0 .../Inc/stm32f1xx_hal_flash_ex.h | 0 .../Inc/stm32f1xx_hal_gpio.h | 0 .../Inc/stm32f1xx_hal_gpio_ex.h | 0 .../Inc/stm32f1xx_hal_pwr.h | 0 .../Inc/stm32f1xx_hal_rcc.h | 0 .../Inc/stm32f1xx_hal_rcc_ex.h | 0 .../Inc/stm32f1xx_hal_tim.h | 0 .../Inc/stm32f1xx_hal_tim_ex.h | 0 .../Drivers/STM32F1xx_HAL_Driver/License.md | 0 .../STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c | 0 .../Src/stm32f1xx_hal_cortex.c | 0 .../Src/stm32f1xx_hal_dma.c | 0 .../Src/stm32f1xx_hal_exti.c | 0 .../Src/stm32f1xx_hal_flash.c | 0 .../Src/stm32f1xx_hal_flash_ex.c | 0 .../Src/stm32f1xx_hal_gpio.c | 0 .../Src/stm32f1xx_hal_gpio_ex.c | 0 .../Src/stm32f1xx_hal_pwr.c | 0 .../Src/stm32f1xx_hal_rcc.c | 0 .../Src/stm32f1xx_hal_rcc_ex.c | 0 .../Src/stm32f1xx_hal_tim.c | 0 .../Src/stm32f1xx_hal_tim_ex.c | 0 .../lab3/{uart => lcd}/STM32F103RCTX_FLASH.ld | 0 .../Lab/lab3/lcd/lcd.cfg | 44 + .../Lab/lab3/lcd/lcd.ioc | 130 + .../Lab/lab3/lcd/lcd.launch | 96 + ...24fall-lab4-ARMv7 assembly programming.pdf | Bin 0 -> 1583362 bytes .../Lab/{lab3 => lab5}/uart/.cproject | 0 .../Lab/{lab3 => lab5}/uart/.mxproject | 0 .../Lab/{lab3 => lab5}/uart/.project | 0 .../uart/.settings/language.settings.xml | 0 .../org.eclipse.core.resources.prefs | 2 + .../uart/.settings/stm32cubeide.project.prefs | 0 .../Lab/lab5/uart/Core/Inc/gpio.h | 49 + .../Lab/lab5/uart/Core/Inc/main.h | 79 + .../uart/Core/Inc/stm32f1xx_hal_conf.h | 0 .../Lab/lab5/uart/Core/Inc/stm32f1xx_it.h | 69 + .../Lab/{lab3 => lab5}/uart/Core/Inc/usart.h | 0 .../Lab/lab5/uart/Core/Src/gpio.c | 89 + .../Lab/{lab3 => lab5}/uart/Core/Src/main.c | 0 .../lab5/uart/Core/Src/stm32f1xx_hal_msp.c | 88 + .../Lab/lab5/uart/Core/Src/stm32f1xx_it.c | 205 + .../Lab/lab5/uart/Core/Src/syscalls.c | 176 + .../Lab/lab5/uart/Core/Src/sysmem.c | 79 + .../Lab/lab5/uart/Core/Src/system_stm32f1xx.c | 408 + .../Lab/{lab3 => lab5}/uart/Core/Src/usart.c | 0 .../uart/Core/Startup/startup_stm32f103rctx.s | 471 + .../Device/ST/STM32F1xx/Include/stm32f103xe.h | 11769 +++++++++++ .../Device/ST/STM32F1xx/Include/stm32f1xx.h | 275 + .../ST/STM32F1xx/Include/system_stm32f1xx.h | 98 + .../CMSIS/Device/ST/STM32F1xx/License.md | 83 + .../uart/Drivers/CMSIS/Include/cmsis_armcc.h | 865 + .../Drivers/CMSIS/Include/cmsis_armclang.h | 1869 ++ .../Drivers/CMSIS/Include/cmsis_compiler.h | 266 + .../uart/Drivers/CMSIS/Include/cmsis_gcc.h | 2085 ++ .../uart/Drivers/CMSIS/Include/cmsis_iccarm.h | 935 + .../Drivers/CMSIS/Include/cmsis_version.h | 39 + .../Drivers/CMSIS/Include/core_armv8mbl.h | 1918 ++ .../Drivers/CMSIS/Include/core_armv8mml.h | 2927 +++ .../uart/Drivers/CMSIS/Include/core_cm0.h | 949 + .../uart/Drivers/CMSIS/Include/core_cm0plus.h | 1083 + .../uart/Drivers/CMSIS/Include/core_cm1.h | 976 + .../uart/Drivers/CMSIS/Include/core_cm23.h | 1993 ++ .../uart/Drivers/CMSIS/Include/core_cm3.h | 1941 ++ .../uart/Drivers/CMSIS/Include/core_cm33.h | 3002 +++ .../uart/Drivers/CMSIS/Include/core_cm4.h | 2129 ++ .../uart/Drivers/CMSIS/Include/core_cm7.h | 2671 +++ .../uart/Drivers/CMSIS/Include/core_sc000.h | 1022 + .../uart/Drivers/CMSIS/Include/core_sc300.h | 1915 ++ .../uart/Drivers/CMSIS/Include/mpu_armv7.h | 270 + .../uart/Drivers/CMSIS/Include/mpu_armv8.h | 333 + .../uart/Drivers/CMSIS/Include/tz_context.h | 70 + .../Lab/lab5/uart/Drivers/CMSIS/LICENSE.txt | 201 + .../Inc/Legacy/stm32_hal_legacy.h | 3783 ++++ .../STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h | 358 + .../Inc/stm32f1xx_hal_cortex.h | 410 + .../Inc/stm32f1xx_hal_def.h | 210 + .../Inc/stm32f1xx_hal_dma.h | 457 + .../Inc/stm32f1xx_hal_dma_ex.h | 277 + .../Inc/stm32f1xx_hal_exti.h | 320 + .../Inc/stm32f1xx_hal_flash.h | 328 + .../Inc/stm32f1xx_hal_flash_ex.h | 786 + .../Inc/stm32f1xx_hal_gpio.h | 308 + .../Inc/stm32f1xx_hal_gpio_ex.h | 894 + .../Inc/stm32f1xx_hal_pwr.h | 388 + .../Inc/stm32f1xx_hal_rcc.h | 1378 ++ .../Inc/stm32f1xx_hal_rcc_ex.h | 1908 ++ .../Inc/stm32f1xx_hal_tim.h | 2129 ++ .../Inc/stm32f1xx_hal_tim_ex.h | 262 + .../Inc/stm32f1xx_hal_uart.h | 0 .../Drivers/STM32F1xx_HAL_Driver/License.md | 27 + .../STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c | 606 + .../Src/stm32f1xx_hal_cortex.c | 505 + .../Src/stm32f1xx_hal_dma.c | 899 + .../Src/stm32f1xx_hal_exti.c | 555 + .../Src/stm32f1xx_hal_flash.c | 967 + .../Src/stm32f1xx_hal_flash_ex.c | 1127 + .../Src/stm32f1xx_hal_gpio.c | 587 + .../Src/stm32f1xx_hal_gpio_ex.c | 127 + .../Src/stm32f1xx_hal_pwr.c | 621 + .../Src/stm32f1xx_hal_rcc.c | 1403 ++ .../Src/stm32f1xx_hal_rcc_ex.c | 863 + .../Src/stm32f1xx_hal_tim.c | 7483 +++++++ .../Src/stm32f1xx_hal_tim_ex.c | 2335 +++ .../Src/stm32f1xx_hal_uart.c | 0 .../Lab/lab5/uart/STM32F103RCTX_FLASH.ld | 187 + .../Lab/{lab3 => lab5}/uart/uart.ioc | 0 CS323 Compiler Principles/Project | 1 + 267 files changed, 102765 insertions(+), 12 deletions(-) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice1/practice1.cfg create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice2/practice2.cfg create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.cproject create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.mxproject create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.project create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.settings/language.settings.xml rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/.settings/org.eclipse.core.resources.prefs (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.settings/stm32cubeide.project.prefs create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/font.h rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Core/Inc/gpio.h (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/lcd.h rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Core/Inc/main.h (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/stm32f1xx_hal_conf.h rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Core/Inc/stm32f1xx_it.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Core/Src/gpio.c (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/lcd.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/main.c rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Core/Src/stm32f1xx_hal_msp.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Core/Src/stm32f1xx_it.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Core/Src/syscalls.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Core/Src/sysmem.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Core/Src/system_stm32f1xx.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Core/Startup/startup_stm32f103rctx.s (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/main.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/main.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/main.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/main.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/stm32f1xx_hal_msp.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/stm32f1xx_hal_msp.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/stm32f1xx_hal_msp.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/stm32f1xx_hal_msp.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/stm32f1xx_it.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/stm32f1xx_it.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/stm32f1xx_it.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/stm32f1xx_it.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/subdir.mk create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/syscalls.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/syscalls.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/syscalls.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/syscalls.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/sysmem.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/sysmem.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/sysmem.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/sysmem.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/system_stm32f1xx.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/system_stm32f1xx.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/system_stm32f1xx.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/system_stm32f1xx.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Startup/startup_stm32f103rctx.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Startup/startup_stm32f103rctx.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Startup/subdir.mk create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.cyclo create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.d create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.su create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/subdir.mk create mode 100755 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/lcd.elf create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/lcd.list create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/lcd.map create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/makefile create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/objects.list create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/objects.mk create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/sources.mk rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xe.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Device/ST/STM32F1xx/License.md (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/cmsis_armcc.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/cmsis_armclang.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/cmsis_compiler.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/cmsis_gcc.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/cmsis_iccarm.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/cmsis_version.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/core_armv8mbl.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/core_armv8mml.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/core_cm0.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/core_cm0plus.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/core_cm1.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/core_cm23.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/core_cm3.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/core_cm33.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/core_cm4.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/core_cm7.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/core_sc000.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/core_sc300.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/mpu_armv7.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/mpu_armv8.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/Include/tz_context.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/CMSIS/LICENSE.txt (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/License.md (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/lab3/{uart => lcd}/STM32F103RCTX_FLASH.ld (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/lcd.cfg create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/lcd.ioc create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/lcd.launch create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab4/CS301-2024fall-lab4-ARMv7 assembly programming.pdf rename CS301 Embedded System and Microcomputer Principle/Lab/{lab3 => lab5}/uart/.cproject (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/{lab3 => lab5}/uart/.mxproject (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/{lab3 => lab5}/uart/.project (100%) rename CS301 Embedded System and Microcomputer Principle/Lab/{lab3 => lab5}/uart/.settings/language.settings.xml (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.settings/org.eclipse.core.resources.prefs rename CS301 Embedded System and Microcomputer Principle/Lab/{lab3 => lab5}/uart/.settings/stm32cubeide.project.prefs (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/gpio.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/main.h rename CS301 Embedded System and Microcomputer Principle/Lab/{lab3 => lab5}/uart/Core/Inc/stm32f1xx_hal_conf.h (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/stm32f1xx_it.h rename CS301 Embedded System and Microcomputer Principle/Lab/{lab3 => lab5}/uart/Core/Inc/usart.h (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/gpio.c rename CS301 Embedded System and Microcomputer Principle/Lab/{lab3 => lab5}/uart/Core/Src/main.c (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/stm32f1xx_hal_msp.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/stm32f1xx_it.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/syscalls.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/sysmem.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/system_stm32f1xx.c rename CS301 Embedded System and Microcomputer Principle/Lab/{lab3 => lab5}/uart/Core/Src/usart.c (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Startup/startup_stm32f103rctx.s create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xe.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/License.md create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_armcc.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_armclang.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_compiler.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_gcc.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_iccarm.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_version.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_armv8mbl.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_armv8mml.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm0.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm0plus.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm1.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm23.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm3.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm33.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm4.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm7.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_sc000.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_sc300.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/mpu_armv7.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/mpu_armv8.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/tz_context.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/LICENSE.txt create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h rename CS301 Embedded System and Microcomputer Principle/Lab/{lab3 => lab5}/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/License.md create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c rename CS301 Embedded System and Microcomputer Principle/Lab/{lab3 => lab5}/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c (100%) create mode 100644 CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/STM32F103RCTX_FLASH.ld rename CS301 Embedded System and Microcomputer Principle/Lab/{lab3 => lab5}/uart/uart.ioc (100%) create mode 160000 CS323 Compiler Principles/Project diff --git a/.gitmodules b/.gitmodules index d699c7b..af903c9 100644 --- a/.gitmodules +++ b/.gitmodules @@ -16,3 +16,6 @@ [submodule "CS303 Artificial Intelligence/Project"] path = CS303 Artificial Intelligence/Project url = git@github.com:chanbengz/SUSTech_CS303_Project_2024F.git +[submodule "CS323 Compiler Principles/Project"] + path = CS323 Compiler Principles/Project + url = git@github.com:chanbengz/SUSTech_CS323_Project_Incredibuild.git diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice1/.settings/language.settings.xml b/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice1/.settings/language.settings.xml index 3071deb..d2198bf 100644 --- a/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice1/.settings/language.settings.xml +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice1/.settings/language.settings.xml @@ -5,7 +5,7 @@ - + @@ -16,7 +16,7 @@ - + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice1/practice1.cfg b/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice1/practice1.cfg new file mode 100644 index 0000000..f2658fa --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice1/practice1.cfg @@ -0,0 +1,44 @@ +# This is an genericBoard board with a single STM32F103RCTx chip +# +# Generated by STM32CubeIDE +# Take care that such file, as generated, may be overridden without any early notice. Please have a look to debug launch configuration setup(s) + +source [find interface/stlink-dap.cfg] + + +set WORKAREASIZE 0x8000 + +transport select "dapdirect_swd" + +set CHIPNAME STM32F103RCTx +set BOARDNAME genericBoard + +# Enable debug when in low power modes +set ENABLE_LOW_POWER 1 + +# Stop Watchdog counters when halt +set STOP_WATCHDOG 1 + +# STlink Debug clock frequency +set CLOCK_FREQ 8000 + +# Reset configuration +# use hardware reset, connect under reset +# connect_assert_srst needed if low power mode application running (WFI...) +reset_config srst_only srst_nogate connect_assert_srst +set CONNECT_UNDER_RESET 1 +set CORE_RESET 0 + +# ACCESS PORT NUMBER +set AP_NUM 0 +# GDB PORT +set GDB_PORT 3333 + + + + + +# BCTM CPU variables + +source [find target/stm32f1x.cfg] + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice1/practice1.launch b/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice1/practice1.launch index 3178de4..b54d121 100644 --- a/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice1/practice1.launch +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice1/practice1.launch @@ -29,17 +29,31 @@ - + - + + + + + + + + + + + + + + + @@ -65,9 +79,9 @@ - + - + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice2/.settings/language.settings.xml b/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice2/.settings/language.settings.xml index b3e48c9..0cc4523 100644 --- a/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice2/.settings/language.settings.xml +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice2/.settings/language.settings.xml @@ -5,7 +5,7 @@ - + @@ -16,7 +16,7 @@ - + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice2/practice2.cfg b/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice2/practice2.cfg new file mode 100644 index 0000000..f2658fa --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice2/practice2.cfg @@ -0,0 +1,44 @@ +# This is an genericBoard board with a single STM32F103RCTx chip +# +# Generated by STM32CubeIDE +# Take care that such file, as generated, may be overridden without any early notice. Please have a look to debug launch configuration setup(s) + +source [find interface/stlink-dap.cfg] + + +set WORKAREASIZE 0x8000 + +transport select "dapdirect_swd" + +set CHIPNAME STM32F103RCTx +set BOARDNAME genericBoard + +# Enable debug when in low power modes +set ENABLE_LOW_POWER 1 + +# Stop Watchdog counters when halt +set STOP_WATCHDOG 1 + +# STlink Debug clock frequency +set CLOCK_FREQ 8000 + +# Reset configuration +# use hardware reset, connect under reset +# connect_assert_srst needed if low power mode application running (WFI...) +reset_config srst_only srst_nogate connect_assert_srst +set CONNECT_UNDER_RESET 1 +set CORE_RESET 0 + +# ACCESS PORT NUMBER +set AP_NUM 0 +# GDB PORT +set GDB_PORT 3333 + + + + + +# BCTM CPU variables + +source [find target/stm32f1x.cfg] + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice2/practice2.launch b/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice2/practice2.launch index 6605ead..12a356b 100644 --- a/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice2/practice2.launch +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab2/practice2/practice2.launch @@ -29,17 +29,32 @@ - + - + + + + + + + + + + + + + + + + @@ -55,6 +70,7 @@ + @@ -65,9 +81,9 @@ - + - + @@ -92,5 +108,6 @@ + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/CS301-2024fall-lab3-TFTLCD.pdf b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/CS301-2024fall-lab3-TFTLCD.pdf index e1f6b4dcbfcd57f1f39134cfdb75059d8d0014d1..8b61432a03448ad73844af6628112ca1960d0056 100644 GIT binary patch delta 379716 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

sXLXdn=*Uu(>MSke8V2^2?Q=^`=@qxP)Z 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%0DC+)eZ5}@Na_is9@E4?BMgQ+=^psaK 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%0AZafz@&zdr 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�>9c3E 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%0A|wu;6V!5(e;a3cT}aeE%)FVO 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%0AQEGXAr(X3+86wy$b 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

© 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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Inc/stm32f1xx_it.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/stm32f1xx_it.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Inc/stm32f1xx_it.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/stm32f1xx_it.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/gpio.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/gpio.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/gpio.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/gpio.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/lcd.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/lcd.c new file mode 100644 index 0000000..44d6c8b --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/lcd.c @@ -0,0 +1,2841 @@ +/** + **************************************************************************************************** + * @file lcd.c + * @author ����ԭ���Ŷ�(ALIENTEK) + * @version V1.2 + * @date 2023-05-31 + * @brief 2.8��/3.5��/4.3��/7�� TFTLCD(MCU��) �������� + * ֧������IC�ͺŰ���:ILI9341/NT35310/NT35510/SSD1963/ST7789/ST7796/ILI9806 �� + * + * @license Copyright (c) 2020-2032, ������������ӿƼ����޹�˾ + **************************************************************************************************** + * @attention + * + * ʵ��ƽ̨:����ԭ�� STM32F103������ + * ������Ƶ:www.yuanzige.com + * ������̳:www.openedv.com + * ��˾��ַ:www.alientek.com + * �����ַ:openedv.taobao.com + * + * �޸�˵�� + * V1.0 20200530 + * ��һ�η��� + * V1.1 20200607 + * ����lcd_wr_xdata����, ����lcd_ex.c, ��ʱ�任�ռ併��lcd�����Ĵ����� + * V1.2 20230531 + * 1��������ST7796��ILI9806 IC֧�� + * + **************************************************************************************************** + */ + +#include "stdlib.h" +#include "lcd.h" +#include "font.h" +//#include "./SYSTEM/usart/usart.h" + + +/* lcd_ex.c��Ÿ���LCD����IC�ļĴ�����ʼ�����ִ���,�Լ�lcd.c,��.c�ļ� + * ��ֱ�Ӽ��뵽��������,ֻ��lcd.c���õ�,����ͨ��include����ʽ���.(��Ҫ�� + * �����ļ��ٰ�����.c�ļ�!!����ᱨ��!) + */ +//#include "lcd_ex.c" + + +/* LCD�Ļ�����ɫ�ͱ���ɫ */ +uint32_t g_point_color = 0XF800; /* ������ɫ */ +uint32_t g_back_color = 0XFFFF; /* ����ɫ */ + +/* ����LCD��Ҫ���� */ +_lcd_dev lcddev; + + +/** + * @brief LCDд���� + * @note �ú����Ĺ��ܺ� lcd_wr_data ��ȫһģһ�� + * lcd_wr_data ���ÿռ任ʱ��, �ú�������ʱ�任�ռ� + * �ú�������LCD��ʼ��, ���� lcd_ex.c �������, �Խ� + * ʡ����ռ�. + * @param data : Ҫд������� + * @retval �� + */ +void lcd_wr_xdata(uint16_t data) +{ + LCD_RS(1); + LCD_CS(0); + LCD_DATA_OUT(data); + LCD_WR(0); + LCD_WR(1); + LCD_CS(1); +} + +/** + * @brief LCDд�Ĵ������/��ַ���� + * @param regno: �Ĵ������/��ַ + * @retval �� + */ +__attribute__((always_inline)) void lcd_wr_regno(volatile uint16_t regno) +{ + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + LCD_CS(0); + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + LCD_WR(0); + LCD_WR(1); + LCD_CS(1); +} + +/** + * @brief LCDд�Ĵ��� + * @param regno:�Ĵ������/��ַ + * @param data:Ҫд������� + * @retval �� + */ +void lcd_write_reg(uint16_t regno, uint16_t data) +{ + lcd_wr_regno(regno); /* д��Ҫд�ļĴ������ */ + lcd_wr_data(data); /* д������ */ +} + + +/** + * @brief LCD��ʱ����,�����ڲ�����mdk -O1ʱ���Ż�ʱ��Ҫ���õĵط� + * @param t:��ʱ����ֵ + * @retval �� + */ +static void lcd_opt_delay(uint32_t i) +{ + while (i--); +} + +/** + * @brief LCD������ + * @param �� + * @retval ��ȡ�������� + */ +static uint16_t lcd_rd_data(void) +{ + volatile uint16_t ram; /* ��ֹ���Ż� */ + + GPIO_InitTypeDef gpio_init_struct; + /* LCD_DATA ����ģʽ����, ��������, ׼���������� */ + gpio_init_struct.Pin = LCD_DATA_GPIO_PIN; + gpio_init_struct.Mode = GPIO_MODE_INPUT; + gpio_init_struct.Pull = GPIO_PULLUP; + gpio_init_struct.Speed = GPIO_SPEED_FREQ_HIGH; + HAL_GPIO_Init(LCD_DATA_GPIO_PORT, &gpio_init_struct); + + LCD_RS(1); /* RS=1,��ʾ�������� */ + LCD_CS(0); + LCD_RD(0); + lcd_opt_delay(2); + ram = LCD_DATA_IN; /* ��ȡ���� */ + LCD_RD(1); + LCD_CS(1); + + /* LCD_DATA ����ģʽ����, �������, �ָ����״̬ */ + gpio_init_struct.Pin = LCD_DATA_GPIO_PIN; + gpio_init_struct.Mode = GPIO_MODE_OUTPUT_PP; + gpio_init_struct.Pull = GPIO_PULLUP; + gpio_init_struct.Speed = GPIO_SPEED_FREQ_HIGH; + HAL_GPIO_Init(LCD_DATA_GPIO_PORT, &gpio_init_struct); + + return ram; +} + +/** + * @brief ׼��дGRAM + * @param �� + * @retval �� + */ +__attribute__((always_inline)) void lcd_write_ram_prepare(void) +{ + lcd_wr_regno(lcddev.wramcmd); +} + +/** + * @brief ��ȡ��ij�����ɫֵ + * @param x,y:���� + * @retval �˵����ɫ(32λ��ɫ,�������LTDC) + */ +uint32_t lcd_read_point(uint16_t x, uint16_t y) +{ + uint16_t r = 0, g = 0, b = 0; + + if (x >= lcddev.width || y >= lcddev.height)return 0; /* �����˷�Χ,ֱ�ӷ��� */ + + lcd_set_cursor(x, y); /* �������� */ + + if (lcddev.id == 0X5510) + { + lcd_wr_regno(0X2E00); /* 5510 ���Ͷ�GRAMָ�� */ + } + else + { + lcd_wr_regno(0X2E); /* 9341/5310/1963/7789/7796/9806 �ȷ��Ͷ�GRAMָ�� */ + } + + r = lcd_rd_data(); /* �ٶ�(dummy read) */ + + if (lcddev.id == 0x1963) + { + return r; /* 1963ֱ�Ӷ��Ϳ��� */ + } + + r = lcd_rd_data(); /* ʵ��������ɫ */ + + if (lcddev.id == 0x7796) /* 7796 һ�ζ�ȡһ������ֵ */ + { + return r; + } + + /* ILI9341/NT35310/NT35510/ST7789/ILI9806 Ҫ��2�ζ��� */ + b = lcd_rd_data(); + g = r & 0XFF; /* ���� 9341/5310/5510/7789/9806, ��һ�ζ�ȡ����RG��ֵ,R��ǰ,G�ں�,��ռ8λ */ + g <<= 8; + return (((r >> 11) << 11) | ((g >> 10) << 5) | (b >> 11)); /* 9341/5310/5510/7789/9806 ��Ҫ��ʽת��һ�� */ +} + +/** + * @brief LCD������ʾ + * @param �� + * @retval �� + */ +void lcd_display_on(void) +{ + if (lcddev.id == 0X5510) + { + lcd_wr_regno(0X2900); /* ������ʾ */ + } + else /* 9341/5310/1963/7789/7796/9806 �ȷ��Ϳ�����ʾָ�� */ + { + lcd_wr_regno(0X29); /* ������ʾ */ + } +} + +/** + * @brief LCD�ر���ʾ + * @param �� + * @retval �� + */ +void lcd_display_off(void) +{ + if (lcddev.id == 0X5510) + { + lcd_wr_regno(0X2800); /* �ر���ʾ */ + } + else /* 9341/5310/1963/7789/7796/9806 �ȷ��͹ر���ʾָ�� */ + { + lcd_wr_regno(0X28); /* �ر���ʾ */ + } +} + +/** + * @brief ���ù��λ��(��RGB����Ч) + * @param x,y: ���� + * @retval �� + */ +void lcd_set_cursor(uint16_t x, uint16_t y) +{ + if (lcddev.id == 0X1963) + { + if (lcddev.dir == 0) /* ����ģʽ, x������Ҫ�任 */ + { + x = lcddev.width - 1 - x; + lcd_wr_regno(lcddev.setxcmd); + lcd_wr_data(0); + lcd_wr_data(0); + lcd_wr_data(x >> 8); + lcd_wr_data(x & 0XFF); + } + else /* ����ģʽ */ + { + lcd_wr_regno(lcddev.setxcmd); + lcd_wr_data(x >> 8); + lcd_wr_data(x & 0XFF); + lcd_wr_data((lcddev.width - 1) >> 8); + lcd_wr_data((lcddev.width - 1) & 0XFF); + } + + lcd_wr_regno(lcddev.setycmd); + lcd_wr_data(y >> 8); + lcd_wr_data(y & 0XFF); + lcd_wr_data((lcddev.height - 1) >> 8); + lcd_wr_data((lcddev.height - 1) & 0XFF); + + } + else if (lcddev.id == 0X5510) + { + lcd_wr_regno(lcddev.setxcmd); + lcd_wr_data(x >> 8); + lcd_wr_regno(lcddev.setxcmd + 1); + lcd_wr_data(x & 0XFF); + lcd_wr_regno(lcddev.setycmd); + lcd_wr_data(y >> 8); + lcd_wr_regno(lcddev.setycmd + 1); + lcd_wr_data(y & 0XFF); + } + else /* 9341/5310/7789/7796/9806 �� �������� */ + { + lcd_wr_regno(lcddev.setxcmd); + lcd_wr_data(x >> 8); + lcd_wr_data(x & 0XFF); + lcd_wr_regno(lcddev.setycmd); + lcd_wr_data(y >> 8); + lcd_wr_data(y & 0XFF); + } +} + +/** + * @brief ����LCD���Զ�ɨ�跽��(��RGB����Ч) + * @note + * 9341/5310/5510/1963/7789/7796/9806��IC�Ѿ�ʵ�ʲ��� + * ע��:�����������ܻ��ܵ��˺������õ�Ӱ��(������9341), + * ����,һ������ΪL2R_U2D����,�������Ϊ����ɨ�跽ʽ,���ܵ�����ʾ������. + * + * @param dir:0~7,����8������(���嶨���lcd.h) + * @retval �� + */ +void lcd_scan_dir(uint8_t dir) +{ + uint16_t regval = 0; + uint16_t dirreg = 0; + uint16_t temp; + + /* ����ʱ����1963���ı�ɨ�跽��, ����IC�ı�ɨ�跽������ʱ1963�ı䷽��, ����IC���ı�ɨ�跽�� */ + if ((lcddev.dir == 1 && lcddev.id != 0X1963) || (lcddev.dir == 0 && lcddev.id == 0X1963)) + { + switch (dir) /* ����ת�� */ + { + case 0: + dir = 6; + break; + + case 1: + dir = 7; + break; + + case 2: + dir = 4; + break; + + case 3: + dir = 5; + break; + + case 4: + dir = 1; + break; + + case 5: + dir = 0; + break; + + case 6: + dir = 3; + break; + + case 7: + dir = 2; + break; + } + } + + /* ����ɨ�跽ʽ ���� 0X36/0X3600 �Ĵ��� bit 5,6,7 λ��ֵ */ + switch (dir) + { + case L2R_U2D:/* ������,���ϵ��� */ + regval |= (0 << 7) | (0 << 6) | (0 << 5); + break; + + case L2R_D2U:/* ������,���µ��� */ + regval |= (1 << 7) | (0 << 6) | (0 << 5); + break; + + case R2L_U2D:/* ���ҵ���,���ϵ��� */ + regval |= (0 << 7) | (1 << 6) | (0 << 5); + break; + + case R2L_D2U:/* ���ҵ���,���µ��� */ + regval |= (1 << 7) | (1 << 6) | (0 << 5); + break; + + case U2D_L2R:/* ���ϵ���,������ */ + regval |= (0 << 7) | (0 << 6) | (1 << 5); + break; + + case U2D_R2L:/* ���ϵ���,���ҵ��� */ + regval |= (0 << 7) | (1 << 6) | (1 << 5); + break; + + case D2U_L2R:/* ���µ���,������ */ + regval |= (1 << 7) | (0 << 6) | (1 << 5); + break; + + case D2U_R2L:/* ���µ���,���ҵ��� */ + regval |= (1 << 7) | (1 << 6) | (1 << 5); + break; + } + + dirreg = 0X36; /* �Ծ��󲿷�����IC, ��0X36�Ĵ������� */ + + if (lcddev.id == 0X5510) + { + dirreg = 0X3600; /* ����5510, ����������ic�ļĴ����в��� */ + } + + /* 9341 & 7789 & 7796 Ҫ����BGRλ */ + if (lcddev.id == 0X9341 || lcddev.id == 0X7789 || lcddev.id == 0x7796) + { + regval |= 0X08; + } + + lcd_write_reg(dirreg, regval); + + if (lcddev.id != 0X1963) /* 1963�������괦�� */ + { + if (regval & 0X20) + { + if (lcddev.width < lcddev.height) /* ����X,Y */ + { + temp = lcddev.width; + lcddev.width = lcddev.height; + lcddev.height = temp; + } + } + else + { + if (lcddev.width > lcddev.height) /* ����X,Y */ + { + temp = lcddev.width; + lcddev.width = lcddev.height; + lcddev.height = temp; + } + } + } + + /* ������ʾ����(����)��С */ + if (lcddev.id == 0X5510) + { + lcd_wr_regno(lcddev.setxcmd); + lcd_wr_data(0); + lcd_wr_regno(lcddev.setxcmd + 1); + lcd_wr_data(0); + lcd_wr_regno(lcddev.setxcmd + 2); + lcd_wr_data((lcddev.width - 1) >> 8); + lcd_wr_regno(lcddev.setxcmd + 3); + lcd_wr_data((lcddev.width - 1) & 0XFF); + lcd_wr_regno(lcddev.setycmd); + lcd_wr_data(0); + lcd_wr_regno(lcddev.setycmd + 1); + lcd_wr_data(0); + lcd_wr_regno(lcddev.setycmd + 2); + lcd_wr_data((lcddev.height - 1) >> 8); + lcd_wr_regno(lcddev.setycmd + 3); + lcd_wr_data((lcddev.height - 1) & 0XFF); + } + else + { + lcd_wr_regno(lcddev.setxcmd); + lcd_wr_data(0); + lcd_wr_data(0); + lcd_wr_data((lcddev.width - 1) >> 8); + lcd_wr_data((lcddev.width - 1) & 0XFF); + lcd_wr_regno(lcddev.setycmd); + lcd_wr_data(0); + lcd_wr_data(0); + lcd_wr_data((lcddev.height - 1) >> 8); + lcd_wr_data((lcddev.height - 1) & 0XFF); + } +} + +/** + * @brief ���� + * @param x,y: ���� + * @param color: �����ɫ(32λ��ɫ,�������LTDC) + * @retval �� + */ +void lcd_draw_point(uint16_t x, uint16_t y, uint32_t color) +{ + lcd_set_cursor(x, y); /* ���ù��λ�� */ + lcd_write_ram_prepare(); /* ��ʼд��GRAM */ + lcd_wr_data(color); +} + +/** + * @brief SSD1963�����������ú��� + * @param pwm: ����ȼ�,0~100.Խ��Խ��. + * @retval �� + */ +void lcd_ssd_backlight_set(uint8_t pwm) +{ + lcd_wr_regno(0xBE); /* ����PWM��� */ + lcd_wr_data(0x05); /* 1����PWMƵ�� */ + lcd_wr_data(pwm * 2.55); /* 2����PWMռ�ձ� */ + lcd_wr_data(0x01); /* 3����C */ + lcd_wr_data(0xFF); /* 4����D */ + lcd_wr_data(0x00); /* 5����E */ + lcd_wr_data(0x00); /* 6����F */ +} + +/** + * @brief ����LCD��ʾ���� + * @param dir:0,����; 1,���� + * @retval �� + */ +void lcd_display_dir(uint8_t dir) +{ + lcddev.dir = dir; /* ����/���� */ + + if (dir == 0) /* ���� */ + { + lcddev.width = 240; + lcddev.height = 320; + + if (lcddev.id == 0x5510) + { + lcddev.wramcmd = 0X2C00; + lcddev.setxcmd = 0X2A00; + lcddev.setycmd = 0X2B00; + lcddev.width = 480; + lcddev.height = 800; + } + else if (lcddev.id == 0X1963) + { + lcddev.wramcmd = 0X2C; /* ����д��GRAM��ָ�� */ + lcddev.setxcmd = 0X2B; /* ����дX����ָ�� */ + lcddev.setycmd = 0X2A; /* ����дY����ָ�� */ + lcddev.width = 480; /* ���ÿ��480 */ + lcddev.height = 800; /* ���ø߶�800 */ + } + else /* ����IC, ����: 9341 / 5310 / 7789 / 7796 / 9806 ��IC */ + { + lcddev.wramcmd = 0X2C; + lcddev.setxcmd = 0X2A; + lcddev.setycmd = 0X2B; + } + + if (lcddev.id == 0X5310 || lcddev.id == 0x7796) /* �����5310/7796 ���ʾ�� 320*480�ֱ��� */ + { + lcddev.width = 320; + lcddev.height = 480; + } + + if (lcddev.id == 0X9806) /* �����9806 ���ʾ�� 480*800 �ֱ��� */ + { + lcddev.width = 480; + lcddev.height = 800; + } + } + else /* ���� */ + { + lcddev.width = 320; /* Ĭ�Ͽ�� */ + lcddev.height = 240; /* Ĭ�ϸ߶� */ + + if (lcddev.id == 0x5510) + { + lcddev.wramcmd = 0X2C00; + lcddev.setxcmd = 0X2A00; + lcddev.setycmd = 0X2B00; + lcddev.width = 800; + lcddev.height = 480; + } + else if (lcddev.id == 0X1963 || lcddev.id == 0x9806) + { + lcddev.wramcmd = 0X2C; /* ����д��GRAM��ָ�� */ + lcddev.setxcmd = 0X2A; /* ����дX����ָ�� */ + lcddev.setycmd = 0X2B; /* ����дY����ָ�� */ + lcddev.width = 800; /* ���ÿ��800 */ + lcddev.height = 480; /* ���ø߶�480 */ + } + else /* ����IC, ����: 9341 / 5310 / 7789 / 7796 ��IC */ + { + lcddev.wramcmd = 0X2C; + lcddev.setxcmd = 0X2A; + lcddev.setycmd = 0X2B; + } + + if (lcddev.id == 0X5310 || lcddev.id == 0x7796) /* �����5310/7796 ���ʾ�� 320*480�ֱ��� */ + { + lcddev.width = 480; + lcddev.height = 320; + } + } + + lcd_scan_dir(DFT_SCAN_DIR); /* Ĭ��ɨ�跽�� */ +} + +/** + * @brief ���ô���(��RGB����Ч),���Զ����û������굽�������Ͻ�(sx,sy). + * @param sx,sy:������ʼ����(���Ͻ�) + * @param width,height:���ڿ�Ⱥ͸߶�,�������0!! + * @note �����С:width*height. + * + * @retval �� + */ +void lcd_set_window(uint16_t sx, uint16_t sy, uint16_t width, uint16_t height) +{ + uint16_t twidth, theight; + twidth = sx + width - 1; + theight = sy + height - 1; + + if (lcddev.id == 0X1963 && lcddev.dir != 1) /* 1963�������⴦�� */ + { + sx = lcddev.width - width - sx; + height = sy + height - 1; + lcd_wr_regno(lcddev.setxcmd); + lcd_wr_data(sx >> 8); + lcd_wr_data(sx & 0XFF); + lcd_wr_data((sx + width - 1) >> 8); + lcd_wr_data((sx + width - 1) & 0XFF); + lcd_wr_regno(lcddev.setycmd); + lcd_wr_data(sy >> 8); + lcd_wr_data(sy & 0XFF); + lcd_wr_data(height >> 8); + lcd_wr_data(height & 0XFF); + } + else if (lcddev.id == 0X5510) + { + lcd_wr_regno(lcddev.setxcmd); + lcd_wr_data(sx >> 8); + lcd_wr_regno(lcddev.setxcmd + 1); + lcd_wr_data(sx & 0XFF); + lcd_wr_regno(lcddev.setxcmd + 2); + lcd_wr_data(twidth >> 8); + lcd_wr_regno(lcddev.setxcmd + 3); + lcd_wr_data(twidth & 0XFF); + lcd_wr_regno(lcddev.setycmd); + lcd_wr_data(sy >> 8); + lcd_wr_regno(lcddev.setycmd + 1); + lcd_wr_data(sy & 0XFF); + lcd_wr_regno(lcddev.setycmd + 2); + lcd_wr_data(theight >> 8); + lcd_wr_regno(lcddev.setycmd + 3); + lcd_wr_data(theight & 0XFF); + } + else /* 9341/5310/7789/1963/7796/9806���� �� ���ô��� */ + { + lcd_wr_regno(lcddev.setxcmd); + lcd_wr_data(sx >> 8); + lcd_wr_data(sx & 0XFF); + lcd_wr_data(twidth >> 8); + lcd_wr_data(twidth & 0XFF); + lcd_wr_regno(lcddev.setycmd); + lcd_wr_data(sy >> 8); + lcd_wr_data(sy & 0XFF); + lcd_wr_data(theight >> 8); + lcd_wr_data(theight & 0XFF); + } +} + +/** + * @brief ��ʼ��LCD + * @note �ó�ʼ���������Գ�ʼ�������ͺŵ�LCD(�����.c�ļ���ǰ�������) + * + * @param �� + * @retval �� + */ +void lcd_init(void) +{ + GPIO_InitTypeDef gpio_init_struct; + + LCD_BL_GPIO_CLK_ENABLE(); /* LCD_BL��ʱ��ʹ�� */ + LCD_CS_GPIO_CLK_ENABLE(); /* LCD_CS��ʱ��ʹ�� */ + LCD_WR_GPIO_CLK_ENABLE(); /* LCD_WR��ʱ��ʹ�� */ + LCD_RD_GPIO_CLK_ENABLE(); /* LCD_RD��ʱ��ʹ�� */ + LCD_RS_GPIO_CLK_ENABLE(); /* LCD_RS��ʱ��ʹ�� */ + LCD_DATA_GPIO_CLK_ENABLE(); /* LCD_DATA��ʱ��ʹ�� */ + __HAL_RCC_AFIO_CLK_ENABLE(); + __HAL_AFIO_REMAP_SWJ_NOJTAG(); /* ��ֹJTAG, ʹ��SWD, �ͷ�PB3,PB4������������ͨIO�� */ + + gpio_init_struct.Pin = LCD_BL_GPIO_PIN; + gpio_init_struct.Mode = GPIO_MODE_OUTPUT_PP; + gpio_init_struct.Pull = GPIO_PULLUP; + gpio_init_struct.Speed = GPIO_SPEED_FREQ_HIGH; + HAL_GPIO_Init(LCD_BL_GPIO_PORT, &gpio_init_struct); /* LCD_BL����ģʽ����(�������) */ + + gpio_init_struct.Pin = LCD_CS_GPIO_PIN; + gpio_init_struct.Mode = GPIO_MODE_OUTPUT_PP; /* ���츴�� */ + gpio_init_struct.Pull = GPIO_PULLUP; /* ���� */ + gpio_init_struct.Speed = GPIO_SPEED_FREQ_HIGH; /* ���� */ + HAL_GPIO_Init(LCD_CS_GPIO_PORT, &gpio_init_struct); /* ��ʼ��LCD_CS���� */ + + gpio_init_struct.Pin = LCD_WR_GPIO_PIN; + HAL_GPIO_Init(LCD_WR_GPIO_PORT, &gpio_init_struct); /* ��ʼ��LCD_WR���� */ + + gpio_init_struct.Pin = LCD_RD_GPIO_PIN; + HAL_GPIO_Init(LCD_RD_GPIO_PORT, &gpio_init_struct); /* ��ʼ��LCD_RD���� */ + + gpio_init_struct.Pin = LCD_RS_GPIO_PIN; + HAL_GPIO_Init(LCD_RS_GPIO_PORT, &gpio_init_struct); /* ��ʼ��LCD_RS���� */ + + gpio_init_struct.Pin = LCD_DATA_GPIO_PIN; + gpio_init_struct.Mode = GPIO_MODE_OUTPUT_PP; /* ������� */ + HAL_GPIO_Init(LCD_DATA_GPIO_PORT, &gpio_init_struct); /* LCD_DATA����ģʽ���� */ + LCD_WR(1); /* WR Ĭ�ϸߵ�ƽ */ + LCD_RD(1); /* RD Ĭ�ϸߵ�ƽ */ + LCD_CS(1); /* CS Ĭ�ϸߵ�ƽ */ + LCD_RS(1); /* RS Ĭ�ϸߵ�ƽ */ + LCD_DATA_OUT(0XFFFF); /* DATA Ĭ�ϸߵ�ƽ */ + + lcd_opt_delay(0X1FFFF); + + /* ����9341 ID�Ķ�ȡ */ + lcd_wr_regno(0XD3); + lcddev.id = lcd_rd_data(); /* dummy read */ + lcddev.id = lcd_rd_data(); /* ����0X00 */ + lcddev.id = lcd_rd_data(); /* ��ȡ0X93 */ + lcddev.id <<= 8; + lcddev.id |= lcd_rd_data(); /* ��ȡ0X41 */ + + if (lcddev.id != 0X9341) /* ���� 9341 , ���Կ����Dz��� ST7789 */ + { + lcd_wr_regno(0X04); + lcddev.id = lcd_rd_data(); /* dummy read */ + lcddev.id = lcd_rd_data(); /* ����0X85 */ + lcddev.id = lcd_rd_data(); /* ��ȡ0X85 */ + lcddev.id <<= 8; + lcddev.id |= lcd_rd_data(); /* ��ȡ0X52 */ + + if (lcddev.id == 0X8552) /* ��8552��IDת����7789 */ + { + lcddev.id = 0x7789; + } + + if (lcddev.id != 0x7789) /* Ҳ����ST7789, �����Dz��� NT35310 */ + { + lcd_wr_regno(0xD4); + lcddev.id = lcd_rd_data(); /* dummy read */ + lcddev.id = lcd_rd_data(); /* ����0x01 */ + lcddev.id = lcd_rd_data(); /* ����0x53 */ + lcddev.id <<= 8; + lcddev.id |= lcd_rd_data(); /* �������0x10 */ + + if (lcddev.id != 0x5310) /* Ҳ����NT35310,���Կ����Dz���ST7796 */ + { + lcd_wr_regno(0XD3); + lcddev.id = lcd_rd_data(); /* dummy read */ + lcddev.id = lcd_rd_data(); /* ����0X00 */ + lcddev.id = lcd_rd_data(); /* ��ȡ0X77 */ + lcddev.id <<= 8; + lcddev.id |= lcd_rd_data(); /* ��ȡ0X96 */ + + if (lcddev.id != 0x7796) /* Ҳ����ST7796,���Կ����Dz���NT35510 */ + { + /* ������Կ�������ṩ�� */ + lcd_write_reg(0xF000, 0x0055); + lcd_write_reg(0xF001, 0x00AA); + lcd_write_reg(0xF002, 0x0052); + lcd_write_reg(0xF003, 0x0008); + lcd_write_reg(0xF004, 0x0001); + + lcd_wr_regno(0xC500); /* ��ȡID�Ͱ�λ */ + lcddev.id = lcd_rd_data(); /* ����0x55 */ + lcddev.id <<= 8; + + lcd_wr_regno(0xC501); /* ��ȡID�߰�λ */ + lcddev.id |= lcd_rd_data(); /* ����0x10 */ + + //delay_ms(5); /* �ȴ�5ms, ��Ϊ0XC501ָ���1963��˵���������λָ��, �ȴ�5ms��1963��λ����ٲ��� */ + + if (lcddev.id != 0x5510) /* Ҳ����NT5510,���Կ����Dz���ILI9806 */ + { + lcd_wr_regno(0XD3); + lcddev.id = lcd_rd_data(); /* dummy read */ + lcddev.id = lcd_rd_data(); /* ����0X00 */ + lcddev.id = lcd_rd_data(); /* ����0X98 */ + lcddev.id <<= 8; + lcddev.id |= lcd_rd_data(); /* ����0X06 */ + + if (lcddev.id != 0x9806) /* Ҳ����ILI9806,���Կ����Dz���SSD1963 */ + { + lcd_wr_regno(0xA1); + lcddev.id = lcd_rd_data(); + lcddev.id = lcd_rd_data(); /* ����0x57 */ + lcddev.id <<= 8; + lcddev.id |= lcd_rd_data(); /* ����0x61 */ + + if (lcddev.id == 0x5761) lcddev.id = 0x1963; /* SSD1963���ص�ID��5761H,Ϊ��������,����ǿ������Ϊ1963 */ + } + } + } + } + } + } + + /* �ر�ע��, �����main�����������δ���1��ʼ��, ��Ῠ����printf + * ����(������f_putc����), ����, �����ʼ������1, �������ε����� + * ���� printf ��� !!!!!!! + */ + //printf("LCD ID:%x\r\n", lcddev.id); /* ��ӡLCD ID */ + + if (lcddev.id == 0X7789) + { + //lcd_ex_st7789_reginit(); /* ִ��ST7789��ʼ�� */ + lcd_wr_regno(0x11); + + HAL_Delay(120); + + lcd_wr_regno(0x36); + lcd_wr_xdata(0x00); + + + lcd_wr_regno(0x3A); + lcd_wr_xdata(0X05); + + lcd_wr_regno(0xB2); + lcd_wr_xdata(0x0C); + lcd_wr_xdata(0x0C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x33); + lcd_wr_xdata(0x33); + + lcd_wr_regno(0xB7); + lcd_wr_xdata(0x35); + + lcd_wr_regno(0xBB); /* vcom */ + lcd_wr_xdata(0x32); /* 30 */ + + lcd_wr_regno(0xC0); + lcd_wr_xdata(0x0C); + + lcd_wr_regno(0xC2); + lcd_wr_xdata(0x01); + + lcd_wr_regno(0xC3); /* vrh */ + lcd_wr_xdata(0x10); /* 17 0D */ + + lcd_wr_regno(0xC4); /* vdv */ + lcd_wr_xdata(0x20); /* 20 */ + + lcd_wr_regno(0xC6); + lcd_wr_xdata(0x0f); + + lcd_wr_regno(0xD0); + lcd_wr_xdata(0xA4); + lcd_wr_xdata(0xA1); + + lcd_wr_regno(0xE0); /* Set Gamma */ + lcd_wr_xdata(0xd0); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x02); + lcd_wr_xdata(0x07); + lcd_wr_xdata(0x0a); + lcd_wr_xdata(0x28); + lcd_wr_xdata(0x32); + lcd_wr_xdata(0X44); + lcd_wr_xdata(0x42); + lcd_wr_xdata(0x06); + lcd_wr_xdata(0x0e); + lcd_wr_xdata(0x12); + lcd_wr_xdata(0x14); + lcd_wr_xdata(0x17); + + + lcd_wr_regno(0XE1); /* Set Gamma */ + lcd_wr_xdata(0xd0); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x02); + lcd_wr_xdata(0x07); + lcd_wr_xdata(0x0a); + lcd_wr_xdata(0x28); + lcd_wr_xdata(0x31); + lcd_wr_xdata(0x54); + lcd_wr_xdata(0x47); + lcd_wr_xdata(0x0e); + lcd_wr_xdata(0x1c); + lcd_wr_xdata(0x17); + lcd_wr_xdata(0x1b); + lcd_wr_xdata(0x1e); + + + lcd_wr_regno(0x2A); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xef); + + lcd_wr_regno(0x2B); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x3f); + + lcd_wr_regno(0x29); /* display on */ + } + else if (lcddev.id == 0X9341) + { + //lcd_ex_ili9341_reginit(); /* ִ��ILI9341��ʼ�� */ + lcd_wr_regno(0xCF); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xC1); + lcd_wr_xdata(0X30); + lcd_wr_regno(0xED); + lcd_wr_xdata(0x64); + lcd_wr_xdata(0x03); + lcd_wr_xdata(0X12); + lcd_wr_xdata(0X81); + lcd_wr_regno(0xE8); + lcd_wr_xdata(0x85); + lcd_wr_xdata(0x10); + lcd_wr_xdata(0x7A); + lcd_wr_regno(0xCB); + lcd_wr_xdata(0x39); + lcd_wr_xdata(0x2C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x34); + lcd_wr_xdata(0x02); + lcd_wr_regno(0xF7); + lcd_wr_xdata(0x20); + lcd_wr_regno(0xEA); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_regno(0xC0); /* Power control */ + lcd_wr_xdata(0x1B); /* VRH[5:0] */ + lcd_wr_regno(0xC1); /* Power control */ + lcd_wr_xdata(0x01); /* SAP[2:0];BT[3:0] */ + lcd_wr_regno(0xC5); /* VCM control */ + lcd_wr_xdata(0x30); /* 3F */ + lcd_wr_xdata(0x30); /* 3C */ + lcd_wr_regno(0xC7); /* VCM control2 */ + lcd_wr_xdata(0XB7); + lcd_wr_regno(0x36); /* Memory Access Control */ + lcd_wr_xdata(0x48); + lcd_wr_regno(0x3A); + lcd_wr_xdata(0x55); + lcd_wr_regno(0xB1); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x1A); + lcd_wr_regno(0xB6); /* Display Function Control */ + lcd_wr_xdata(0x0A); + lcd_wr_xdata(0xA2); + lcd_wr_regno(0xF2); /* 3Gamma Function Disable */ + lcd_wr_xdata(0x00); + lcd_wr_regno(0x26); /* Gamma curve selected */ + lcd_wr_xdata(0x01); + lcd_wr_regno(0xE0); /* Set Gamma */ + lcd_wr_xdata(0x0F); + lcd_wr_xdata(0x2A); + lcd_wr_xdata(0x28); + lcd_wr_xdata(0x08); + lcd_wr_xdata(0x0E); + lcd_wr_xdata(0x08); + lcd_wr_xdata(0x54); + lcd_wr_xdata(0XA9); + lcd_wr_xdata(0x43); + lcd_wr_xdata(0x0A); + lcd_wr_xdata(0x0F); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_regno(0XE1); /* Set Gamma */ + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x15); + lcd_wr_xdata(0x17); + lcd_wr_xdata(0x07); + lcd_wr_xdata(0x11); + lcd_wr_xdata(0x06); + lcd_wr_xdata(0x2B); + lcd_wr_xdata(0x56); + lcd_wr_xdata(0x3C); + lcd_wr_xdata(0x05); + lcd_wr_xdata(0x10); + lcd_wr_xdata(0x0F); + lcd_wr_xdata(0x3F); + lcd_wr_xdata(0x3F); + lcd_wr_xdata(0x0F); + lcd_wr_regno(0x2B); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x3f); + lcd_wr_regno(0x2A); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xef); + lcd_wr_regno(0x11); /* Exit Sleep */ + HAL_Delay(120); + lcd_wr_regno(0x29); /* display on */ + } + else if (lcddev.id == 0x5310) + { + //lcd_ex_nt35310_reginit(); /* ִ��NT35310��ʼ�� */ + lcd_wr_regno(0xED); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0xFE); + + lcd_wr_regno(0xEE); + lcd_wr_xdata(0xDE); + lcd_wr_xdata(0x21); + + lcd_wr_regno(0xF1); + lcd_wr_xdata(0x01); + lcd_wr_regno(0xDF); + lcd_wr_xdata(0x10); + + /* VCOMvoltage */ + lcd_wr_regno(0xC4); + lcd_wr_xdata(0x8F); /* 5f */ + + lcd_wr_regno(0xC6); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xE2); + lcd_wr_xdata(0xE2); + lcd_wr_xdata(0xE2); + lcd_wr_regno(0xBF); + lcd_wr_xdata(0xAA); + + lcd_wr_regno(0xB0); + lcd_wr_xdata(0x0D); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x0D); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x11); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x19); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x21); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x2D); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x3D); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x5D); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x5D); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xB1); + lcd_wr_xdata(0x80); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x8B); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x96); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xB2); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x02); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x03); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xB3); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xB4); + lcd_wr_xdata(0x8B); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x96); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xA1); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xB5); + lcd_wr_xdata(0x02); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x03); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x04); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xB6); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xB7); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x3F); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x5E); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x64); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x8C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xAC); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xDC); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x70); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x90); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xEB); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xDC); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xB8); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xBA); + lcd_wr_xdata(0x24); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xC1); + lcd_wr_xdata(0x20); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x54); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xFF); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xC2); + lcd_wr_xdata(0x0A); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x04); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xC3); + lcd_wr_xdata(0x3C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x3A); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x39); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x37); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x3C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x36); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x32); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x2F); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x2C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x29); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x26); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x24); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x24); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x23); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x3C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x36); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x32); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x2F); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x2C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x29); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x26); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x24); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x24); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x23); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xC4); + lcd_wr_xdata(0x62); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x05); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x84); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xF0); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x18); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xA4); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x18); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x50); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x0C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x17); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x95); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xF3); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xE6); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xC5); + lcd_wr_xdata(0x32); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x44); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x65); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x76); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x88); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xC6); + lcd_wr_xdata(0x20); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x17); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xC7); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xC8); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xC9); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xE0); + lcd_wr_xdata(0x16); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x1C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x21); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x36); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x46); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x52); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x64); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x7A); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x8B); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x99); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xA8); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xB9); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xC4); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xCA); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xD2); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xD9); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xE0); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xF3); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xE1); + lcd_wr_xdata(0x16); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x1C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x22); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x36); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x45); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x52); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x64); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x7A); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x8B); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x99); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xA8); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xB9); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xC4); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xCA); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xD2); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xD8); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xE0); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xF3); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xE2); + lcd_wr_xdata(0x05); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x0B); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x1B); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x34); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x44); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x4F); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x61); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x79); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x88); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x97); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xA6); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xB7); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xC2); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xC7); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xD1); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xD6); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xDD); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xF3); + lcd_wr_xdata(0x00); + lcd_wr_regno(0xE3); + lcd_wr_xdata(0x05); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xA); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x1C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x33); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x44); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x50); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x62); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x78); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x88); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x97); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xA6); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xB7); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xC2); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xC7); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xD1); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xD5); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xDD); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xF3); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xE4); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x02); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x2A); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x3C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x4B); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x5D); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x74); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x84); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x93); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xA2); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xB3); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xBE); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xC4); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xCD); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xD3); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xDD); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xF3); + lcd_wr_xdata(0x00); + lcd_wr_regno(0xE5); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x02); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x29); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x3C); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x4B); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x5D); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x74); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x84); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x93); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xA2); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xB3); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xBE); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xC4); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xCD); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xD3); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xDC); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xF3); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xE6); + lcd_wr_xdata(0x11); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x34); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x56); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x76); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x77); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x66); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x88); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x99); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xBB); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x99); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x66); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x55); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x55); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x45); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x43); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x44); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xE7); + lcd_wr_xdata(0x32); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x55); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x76); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x66); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x67); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x67); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x87); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x99); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xBB); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x99); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x77); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x44); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x56); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x23); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x33); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x45); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xE8); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x99); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x87); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x88); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x77); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x66); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x88); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xAA); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xBB); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x99); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x66); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x55); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x55); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x44); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x44); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x55); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xE9); + lcd_wr_xdata(0xAA); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0x00); + lcd_wr_xdata(0xAA); + + lcd_wr_regno(0xCF); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xF0); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x50); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xF3); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xF9); + lcd_wr_xdata(0x06); + lcd_wr_xdata(0x10); + lcd_wr_xdata(0x29); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0x3A); + lcd_wr_xdata(0x55); /* 66 */ + + lcd_wr_regno(0x11); + HAL_Delay(100); + lcd_wr_regno(0x29); + lcd_wr_regno(0x35); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0x51); + lcd_wr_xdata(0xFF); + lcd_wr_regno(0x53); + lcd_wr_xdata(0x2C); + lcd_wr_regno(0x55); + lcd_wr_xdata(0x82); + lcd_wr_regno(0x2c); + } + else if (lcddev.id == 0x7796) + { + // lcd_ex_st7796_reginit(); /* ִ��ST7796��ʼ�� */ + lcd_wr_regno(0x11); + + HAL_Delay(120); + + lcd_wr_regno(0x36); /* Memory Data Access Control MY,MX~~ */ + lcd_wr_xdata(0x48); + + lcd_wr_regno(0x3A); + lcd_wr_xdata(0x55); + + lcd_wr_regno(0xF0); + lcd_wr_xdata(0xC3); + + lcd_wr_regno(0xF0); + lcd_wr_xdata(0x96); + + lcd_wr_regno(0xB4); + lcd_wr_xdata(0x01); + + lcd_wr_regno(0xB6); /* Display Function Control */ + lcd_wr_xdata(0x0A); + lcd_wr_xdata(0xA2); + + lcd_wr_regno(0xB7); + lcd_wr_xdata(0xC6); + + lcd_wr_regno(0xB9); + lcd_wr_xdata(0x02); + lcd_wr_xdata(0xE0); + + lcd_wr_regno(0xC0); + lcd_wr_xdata(0x80); + lcd_wr_xdata(0x16); + + lcd_wr_regno(0xC1); + lcd_wr_xdata(0x19); + + lcd_wr_regno(0xC2); + lcd_wr_xdata(0xA7); + + lcd_wr_regno(0xC5); + lcd_wr_xdata(0x16); + + lcd_wr_regno(0xE8); + lcd_wr_xdata(0x40); + lcd_wr_xdata(0x8A); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x29); + lcd_wr_xdata(0x19); + lcd_wr_xdata(0xA5); + lcd_wr_xdata(0x33); + + lcd_wr_regno(0xE0); + lcd_wr_xdata(0xF0); + lcd_wr_xdata(0x07); + lcd_wr_xdata(0x0D); + lcd_wr_xdata(0x04); + lcd_wr_xdata(0x05); + lcd_wr_xdata(0x14); + lcd_wr_xdata(0x36); + lcd_wr_xdata(0x54); + lcd_wr_xdata(0x4C); + lcd_wr_xdata(0x38); + lcd_wr_xdata(0x13); + lcd_wr_xdata(0x14); + lcd_wr_xdata(0x2E); + lcd_wr_xdata(0x34); + + lcd_wr_regno(0xE1); + lcd_wr_xdata(0xF0); + lcd_wr_xdata(0x10); + lcd_wr_xdata(0x14); + lcd_wr_xdata(0x0E); + lcd_wr_xdata(0x0C); + lcd_wr_xdata(0x08); + lcd_wr_xdata(0x35); + lcd_wr_xdata(0x44); + lcd_wr_xdata(0x4C); + lcd_wr_xdata(0x26); + lcd_wr_xdata(0x10); + lcd_wr_xdata(0x12); + lcd_wr_xdata(0x2C); + lcd_wr_xdata(0x32); + + lcd_wr_regno(0xF0); + lcd_wr_xdata(0x3C); + + lcd_wr_regno(0xF0); + lcd_wr_xdata(0x69); + + HAL_Delay(120); + + lcd_wr_regno(0x21); + lcd_wr_regno(0x29); + } + else if (lcddev.id == 0x5510) + { + //lcd_ex_nt35510_reginit(); /* ִ��NT35510��ʼ�� */ + + lcd_write_reg(0xF000, 0x55); + lcd_write_reg(0xF001, 0xAA); + lcd_write_reg(0xF002, 0x52); + lcd_write_reg(0xF003, 0x08); + lcd_write_reg(0xF004, 0x01); + /* AVDD Set AVDD 5.2V */ + lcd_write_reg(0xB000, 0x0D); + lcd_write_reg(0xB001, 0x0D); + lcd_write_reg(0xB002, 0x0D); + /* AVDD ratio */ + lcd_write_reg(0xB600, 0x34); + lcd_write_reg(0xB601, 0x34); + lcd_write_reg(0xB602, 0x34); + /* AVEE -5.2V */ + lcd_write_reg(0xB100, 0x0D); + lcd_write_reg(0xB101, 0x0D); + lcd_write_reg(0xB102, 0x0D); + /* AVEE ratio */ + lcd_write_reg(0xB700, 0x34); + lcd_write_reg(0xB701, 0x34); + lcd_write_reg(0xB702, 0x34); + /* VCL -2.5V */ + lcd_write_reg(0xB200, 0x00); + lcd_write_reg(0xB201, 0x00); + lcd_write_reg(0xB202, 0x00); + /* VCL ratio */ + lcd_write_reg(0xB800, 0x24); + lcd_write_reg(0xB801, 0x24); + lcd_write_reg(0xB802, 0x24); + /* VGH 15V (Free pump) */ + lcd_write_reg(0xBF00, 0x01); + lcd_write_reg(0xB300, 0x0F); + lcd_write_reg(0xB301, 0x0F); + lcd_write_reg(0xB302, 0x0F); + /* VGH ratio */ + lcd_write_reg(0xB900, 0x34); + lcd_write_reg(0xB901, 0x34); + lcd_write_reg(0xB902, 0x34); + /* VGL_REG -10V */ + lcd_write_reg(0xB500, 0x08); + lcd_write_reg(0xB501, 0x08); + lcd_write_reg(0xB502, 0x08); + lcd_write_reg(0xC200, 0x03); + /* VGLX ratio */ + lcd_write_reg(0xBA00, 0x24); + lcd_write_reg(0xBA01, 0x24); + lcd_write_reg(0xBA02, 0x24); + /* VGMP/VGSP 4.5V/0V */ + lcd_write_reg(0xBC00, 0x00); + lcd_write_reg(0xBC01, 0x78); + lcd_write_reg(0xBC02, 0x00); + /* VGMN/VGSN -4.5V/0V */ + lcd_write_reg(0xBD00, 0x00); + lcd_write_reg(0xBD01, 0x78); + lcd_write_reg(0xBD02, 0x00); + /* VCOM */ + lcd_write_reg(0xBE00, 0x00); + lcd_write_reg(0xBE01, 0x64); + /* Gamma Setting */ + lcd_write_reg(0xD100, 0x00); + lcd_write_reg(0xD101, 0x33); + lcd_write_reg(0xD102, 0x00); + lcd_write_reg(0xD103, 0x34); + lcd_write_reg(0xD104, 0x00); + lcd_write_reg(0xD105, 0x3A); + lcd_write_reg(0xD106, 0x00); + lcd_write_reg(0xD107, 0x4A); + lcd_write_reg(0xD108, 0x00); + lcd_write_reg(0xD109, 0x5C); + lcd_write_reg(0xD10A, 0x00); + lcd_write_reg(0xD10B, 0x81); + lcd_write_reg(0xD10C, 0x00); + lcd_write_reg(0xD10D, 0xA6); + lcd_write_reg(0xD10E, 0x00); + lcd_write_reg(0xD10F, 0xE5); + lcd_write_reg(0xD110, 0x01); + lcd_write_reg(0xD111, 0x13); + lcd_write_reg(0xD112, 0x01); + lcd_write_reg(0xD113, 0x54); + lcd_write_reg(0xD114, 0x01); + lcd_write_reg(0xD115, 0x82); + lcd_write_reg(0xD116, 0x01); + lcd_write_reg(0xD117, 0xCA); + lcd_write_reg(0xD118, 0x02); + lcd_write_reg(0xD119, 0x00); + lcd_write_reg(0xD11A, 0x02); + lcd_write_reg(0xD11B, 0x01); + lcd_write_reg(0xD11C, 0x02); + lcd_write_reg(0xD11D, 0x34); + lcd_write_reg(0xD11E, 0x02); + lcd_write_reg(0xD11F, 0x67); + lcd_write_reg(0xD120, 0x02); + lcd_write_reg(0xD121, 0x84); + lcd_write_reg(0xD122, 0x02); + lcd_write_reg(0xD123, 0xA4); + lcd_write_reg(0xD124, 0x02); + lcd_write_reg(0xD125, 0xB7); + lcd_write_reg(0xD126, 0x02); + lcd_write_reg(0xD127, 0xCF); + lcd_write_reg(0xD128, 0x02); + lcd_write_reg(0xD129, 0xDE); + lcd_write_reg(0xD12A, 0x02); + lcd_write_reg(0xD12B, 0xF2); + lcd_write_reg(0xD12C, 0x02); + lcd_write_reg(0xD12D, 0xFE); + lcd_write_reg(0xD12E, 0x03); + lcd_write_reg(0xD12F, 0x10); + lcd_write_reg(0xD130, 0x03); + lcd_write_reg(0xD131, 0x33); + lcd_write_reg(0xD132, 0x03); + lcd_write_reg(0xD133, 0x6D); + lcd_write_reg(0xD200, 0x00); + lcd_write_reg(0xD201, 0x33); + lcd_write_reg(0xD202, 0x00); + lcd_write_reg(0xD203, 0x34); + lcd_write_reg(0xD204, 0x00); + lcd_write_reg(0xD205, 0x3A); + lcd_write_reg(0xD206, 0x00); + lcd_write_reg(0xD207, 0x4A); + lcd_write_reg(0xD208, 0x00); + lcd_write_reg(0xD209, 0x5C); + lcd_write_reg(0xD20A, 0x00); + + lcd_write_reg(0xD20B, 0x81); + lcd_write_reg(0xD20C, 0x00); + lcd_write_reg(0xD20D, 0xA6); + lcd_write_reg(0xD20E, 0x00); + lcd_write_reg(0xD20F, 0xE5); + lcd_write_reg(0xD210, 0x01); + lcd_write_reg(0xD211, 0x13); + lcd_write_reg(0xD212, 0x01); + lcd_write_reg(0xD213, 0x54); + lcd_write_reg(0xD214, 0x01); + lcd_write_reg(0xD215, 0x82); + lcd_write_reg(0xD216, 0x01); + lcd_write_reg(0xD217, 0xCA); + lcd_write_reg(0xD218, 0x02); + lcd_write_reg(0xD219, 0x00); + lcd_write_reg(0xD21A, 0x02); + lcd_write_reg(0xD21B, 0x01); + lcd_write_reg(0xD21C, 0x02); + lcd_write_reg(0xD21D, 0x34); + lcd_write_reg(0xD21E, 0x02); + lcd_write_reg(0xD21F, 0x67); + lcd_write_reg(0xD220, 0x02); + lcd_write_reg(0xD221, 0x84); + lcd_write_reg(0xD222, 0x02); + lcd_write_reg(0xD223, 0xA4); + lcd_write_reg(0xD224, 0x02); + lcd_write_reg(0xD225, 0xB7); + lcd_write_reg(0xD226, 0x02); + lcd_write_reg(0xD227, 0xCF); + lcd_write_reg(0xD228, 0x02); + lcd_write_reg(0xD229, 0xDE); + lcd_write_reg(0xD22A, 0x02); + lcd_write_reg(0xD22B, 0xF2); + lcd_write_reg(0xD22C, 0x02); + lcd_write_reg(0xD22D, 0xFE); + lcd_write_reg(0xD22E, 0x03); + lcd_write_reg(0xD22F, 0x10); + lcd_write_reg(0xD230, 0x03); + lcd_write_reg(0xD231, 0x33); + lcd_write_reg(0xD232, 0x03); + lcd_write_reg(0xD233, 0x6D); + lcd_write_reg(0xD300, 0x00); + lcd_write_reg(0xD301, 0x33); + lcd_write_reg(0xD302, 0x00); + lcd_write_reg(0xD303, 0x34); + lcd_write_reg(0xD304, 0x00); + lcd_write_reg(0xD305, 0x3A); + lcd_write_reg(0xD306, 0x00); + lcd_write_reg(0xD307, 0x4A); + lcd_write_reg(0xD308, 0x00); + lcd_write_reg(0xD309, 0x5C); + lcd_write_reg(0xD30A, 0x00); + + lcd_write_reg(0xD30B, 0x81); + lcd_write_reg(0xD30C, 0x00); + lcd_write_reg(0xD30D, 0xA6); + lcd_write_reg(0xD30E, 0x00); + lcd_write_reg(0xD30F, 0xE5); + lcd_write_reg(0xD310, 0x01); + lcd_write_reg(0xD311, 0x13); + lcd_write_reg(0xD312, 0x01); + lcd_write_reg(0xD313, 0x54); + lcd_write_reg(0xD314, 0x01); + lcd_write_reg(0xD315, 0x82); + lcd_write_reg(0xD316, 0x01); + lcd_write_reg(0xD317, 0xCA); + lcd_write_reg(0xD318, 0x02); + lcd_write_reg(0xD319, 0x00); + lcd_write_reg(0xD31A, 0x02); + lcd_write_reg(0xD31B, 0x01); + lcd_write_reg(0xD31C, 0x02); + lcd_write_reg(0xD31D, 0x34); + lcd_write_reg(0xD31E, 0x02); + lcd_write_reg(0xD31F, 0x67); + lcd_write_reg(0xD320, 0x02); + lcd_write_reg(0xD321, 0x84); + lcd_write_reg(0xD322, 0x02); + lcd_write_reg(0xD323, 0xA4); + lcd_write_reg(0xD324, 0x02); + lcd_write_reg(0xD325, 0xB7); + lcd_write_reg(0xD326, 0x02); + lcd_write_reg(0xD327, 0xCF); + lcd_write_reg(0xD328, 0x02); + lcd_write_reg(0xD329, 0xDE); + lcd_write_reg(0xD32A, 0x02); + lcd_write_reg(0xD32B, 0xF2); + lcd_write_reg(0xD32C, 0x02); + lcd_write_reg(0xD32D, 0xFE); + lcd_write_reg(0xD32E, 0x03); + lcd_write_reg(0xD32F, 0x10); + lcd_write_reg(0xD330, 0x03); + lcd_write_reg(0xD331, 0x33); + lcd_write_reg(0xD332, 0x03); + lcd_write_reg(0xD333, 0x6D); + lcd_write_reg(0xD400, 0x00); + lcd_write_reg(0xD401, 0x33); + lcd_write_reg(0xD402, 0x00); + lcd_write_reg(0xD403, 0x34); + lcd_write_reg(0xD404, 0x00); + lcd_write_reg(0xD405, 0x3A); + lcd_write_reg(0xD406, 0x00); + lcd_write_reg(0xD407, 0x4A); + lcd_write_reg(0xD408, 0x00); + lcd_write_reg(0xD409, 0x5C); + lcd_write_reg(0xD40A, 0x00); + lcd_write_reg(0xD40B, 0x81); + + lcd_write_reg(0xD40C, 0x00); + lcd_write_reg(0xD40D, 0xA6); + lcd_write_reg(0xD40E, 0x00); + lcd_write_reg(0xD40F, 0xE5); + lcd_write_reg(0xD410, 0x01); + lcd_write_reg(0xD411, 0x13); + lcd_write_reg(0xD412, 0x01); + lcd_write_reg(0xD413, 0x54); + lcd_write_reg(0xD414, 0x01); + lcd_write_reg(0xD415, 0x82); + lcd_write_reg(0xD416, 0x01); + lcd_write_reg(0xD417, 0xCA); + lcd_write_reg(0xD418, 0x02); + lcd_write_reg(0xD419, 0x00); + lcd_write_reg(0xD41A, 0x02); + lcd_write_reg(0xD41B, 0x01); + lcd_write_reg(0xD41C, 0x02); + lcd_write_reg(0xD41D, 0x34); + lcd_write_reg(0xD41E, 0x02); + lcd_write_reg(0xD41F, 0x67); + lcd_write_reg(0xD420, 0x02); + lcd_write_reg(0xD421, 0x84); + lcd_write_reg(0xD422, 0x02); + lcd_write_reg(0xD423, 0xA4); + lcd_write_reg(0xD424, 0x02); + lcd_write_reg(0xD425, 0xB7); + lcd_write_reg(0xD426, 0x02); + lcd_write_reg(0xD427, 0xCF); + lcd_write_reg(0xD428, 0x02); + lcd_write_reg(0xD429, 0xDE); + lcd_write_reg(0xD42A, 0x02); + lcd_write_reg(0xD42B, 0xF2); + lcd_write_reg(0xD42C, 0x02); + lcd_write_reg(0xD42D, 0xFE); + lcd_write_reg(0xD42E, 0x03); + lcd_write_reg(0xD42F, 0x10); + lcd_write_reg(0xD430, 0x03); + lcd_write_reg(0xD431, 0x33); + lcd_write_reg(0xD432, 0x03); + lcd_write_reg(0xD433, 0x6D); + lcd_write_reg(0xD500, 0x00); + lcd_write_reg(0xD501, 0x33); + lcd_write_reg(0xD502, 0x00); + lcd_write_reg(0xD503, 0x34); + lcd_write_reg(0xD504, 0x00); + lcd_write_reg(0xD505, 0x3A); + lcd_write_reg(0xD506, 0x00); + lcd_write_reg(0xD507, 0x4A); + lcd_write_reg(0xD508, 0x00); + lcd_write_reg(0xD509, 0x5C); + lcd_write_reg(0xD50A, 0x00); + lcd_write_reg(0xD50B, 0x81); + + lcd_write_reg(0xD50C, 0x00); + lcd_write_reg(0xD50D, 0xA6); + lcd_write_reg(0xD50E, 0x00); + lcd_write_reg(0xD50F, 0xE5); + lcd_write_reg(0xD510, 0x01); + lcd_write_reg(0xD511, 0x13); + lcd_write_reg(0xD512, 0x01); + lcd_write_reg(0xD513, 0x54); + lcd_write_reg(0xD514, 0x01); + lcd_write_reg(0xD515, 0x82); + lcd_write_reg(0xD516, 0x01); + lcd_write_reg(0xD517, 0xCA); + lcd_write_reg(0xD518, 0x02); + lcd_write_reg(0xD519, 0x00); + lcd_write_reg(0xD51A, 0x02); + lcd_write_reg(0xD51B, 0x01); + lcd_write_reg(0xD51C, 0x02); + lcd_write_reg(0xD51D, 0x34); + lcd_write_reg(0xD51E, 0x02); + lcd_write_reg(0xD51F, 0x67); + lcd_write_reg(0xD520, 0x02); + lcd_write_reg(0xD521, 0x84); + lcd_write_reg(0xD522, 0x02); + lcd_write_reg(0xD523, 0xA4); + lcd_write_reg(0xD524, 0x02); + lcd_write_reg(0xD525, 0xB7); + lcd_write_reg(0xD526, 0x02); + lcd_write_reg(0xD527, 0xCF); + lcd_write_reg(0xD528, 0x02); + lcd_write_reg(0xD529, 0xDE); + lcd_write_reg(0xD52A, 0x02); + lcd_write_reg(0xD52B, 0xF2); + lcd_write_reg(0xD52C, 0x02); + lcd_write_reg(0xD52D, 0xFE); + lcd_write_reg(0xD52E, 0x03); + lcd_write_reg(0xD52F, 0x10); + lcd_write_reg(0xD530, 0x03); + lcd_write_reg(0xD531, 0x33); + lcd_write_reg(0xD532, 0x03); + lcd_write_reg(0xD533, 0x6D); + lcd_write_reg(0xD600, 0x00); + lcd_write_reg(0xD601, 0x33); + lcd_write_reg(0xD602, 0x00); + lcd_write_reg(0xD603, 0x34); + lcd_write_reg(0xD604, 0x00); + lcd_write_reg(0xD605, 0x3A); + lcd_write_reg(0xD606, 0x00); + lcd_write_reg(0xD607, 0x4A); + lcd_write_reg(0xD608, 0x00); + lcd_write_reg(0xD609, 0x5C); + lcd_write_reg(0xD60A, 0x00); + lcd_write_reg(0xD60B, 0x81); + + lcd_write_reg(0xD60C, 0x00); + lcd_write_reg(0xD60D, 0xA6); + lcd_write_reg(0xD60E, 0x00); + lcd_write_reg(0xD60F, 0xE5); + lcd_write_reg(0xD610, 0x01); + lcd_write_reg(0xD611, 0x13); + lcd_write_reg(0xD612, 0x01); + lcd_write_reg(0xD613, 0x54); + lcd_write_reg(0xD614, 0x01); + lcd_write_reg(0xD615, 0x82); + lcd_write_reg(0xD616, 0x01); + lcd_write_reg(0xD617, 0xCA); + lcd_write_reg(0xD618, 0x02); + lcd_write_reg(0xD619, 0x00); + lcd_write_reg(0xD61A, 0x02); + lcd_write_reg(0xD61B, 0x01); + lcd_write_reg(0xD61C, 0x02); + lcd_write_reg(0xD61D, 0x34); + lcd_write_reg(0xD61E, 0x02); + lcd_write_reg(0xD61F, 0x67); + lcd_write_reg(0xD620, 0x02); + lcd_write_reg(0xD621, 0x84); + lcd_write_reg(0xD622, 0x02); + lcd_write_reg(0xD623, 0xA4); + lcd_write_reg(0xD624, 0x02); + lcd_write_reg(0xD625, 0xB7); + lcd_write_reg(0xD626, 0x02); + lcd_write_reg(0xD627, 0xCF); + lcd_write_reg(0xD628, 0x02); + lcd_write_reg(0xD629, 0xDE); + lcd_write_reg(0xD62A, 0x02); + lcd_write_reg(0xD62B, 0xF2); + lcd_write_reg(0xD62C, 0x02); + lcd_write_reg(0xD62D, 0xFE); + lcd_write_reg(0xD62E, 0x03); + lcd_write_reg(0xD62F, 0x10); + lcd_write_reg(0xD630, 0x03); + lcd_write_reg(0xD631, 0x33); + lcd_write_reg(0xD632, 0x03); + lcd_write_reg(0xD633, 0x6D); + /* LV2 Page 0 enable */ + lcd_write_reg(0xF000, 0x55); + lcd_write_reg(0xF001, 0xAA); + lcd_write_reg(0xF002, 0x52); + lcd_write_reg(0xF003, 0x08); + lcd_write_reg(0xF004, 0x00); + /* Display control */ + lcd_write_reg(0xB100, 0xCC); + lcd_write_reg(0xB101, 0x00); + /* Source hold time */ + lcd_write_reg(0xB600, 0x05); + /* Gate EQ control */ + lcd_write_reg(0xB700, 0x70); + lcd_write_reg(0xB701, 0x70); + /* Source EQ control (Mode 2) */ + lcd_write_reg(0xB800, 0x01); + lcd_write_reg(0xB801, 0x03); + lcd_write_reg(0xB802, 0x03); + lcd_write_reg(0xB803, 0x03); + /* Inversion mode (2-dot) */ + lcd_write_reg(0xBC00, 0x02); + lcd_write_reg(0xBC01, 0x00); + lcd_write_reg(0xBC02, 0x00); + /* Timing control 4H w/ 4-delay */ + lcd_write_reg(0xC900, 0xD0); + lcd_write_reg(0xC901, 0x02); + lcd_write_reg(0xC902, 0x50); + lcd_write_reg(0xC903, 0x50); + lcd_write_reg(0xC904, 0x50); + lcd_write_reg(0x3500, 0x00); + lcd_write_reg(0x3A00, 0x55); /* 16-bit/pixel */ + lcd_wr_regno(0x1100); + //delay_us(120); + lcd_wr_regno(0x2900); + } + else if (lcddev.id == 0x9806) + { + // lcd_ex_ili9806_reginit(); /* ִ��ILI9806��ʼ�� */ + lcd_wr_regno(0xFF); /* EXTC Command Set enable register */ + lcd_wr_xdata(0xFF); + lcd_wr_xdata(0x98); + lcd_wr_xdata(0x06); + + lcd_wr_regno(0xBC); /* GIP 1 */ + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x0F); + lcd_wr_xdata(0x61); + lcd_wr_xdata(0xFF); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x0B); + lcd_wr_xdata(0x10); + lcd_wr_xdata(0x37); + lcd_wr_xdata(0x63); + lcd_wr_xdata(0xFF); + lcd_wr_xdata(0xFF); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0xFF); + lcd_wr_xdata(0x52); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x40); + + lcd_wr_regno(0xBD); /* GIP 2 */ + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x23); + lcd_wr_xdata(0x45); + lcd_wr_xdata(0x67); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0x23); + lcd_wr_xdata(0x45); + lcd_wr_xdata(0x67); + + lcd_wr_regno(0xBE); /* GIP 3 */ + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0xAB); + lcd_wr_xdata(0x60); + lcd_wr_xdata(0x22); + lcd_wr_xdata(0x22); + lcd_wr_xdata(0x22); + lcd_wr_xdata(0x22); + lcd_wr_xdata(0x22); + + lcd_wr_regno(0xC7); /* VCOM Control */ + lcd_wr_xdata(0x36); + + lcd_wr_regno(0xED); /* EN_volt_reg VGMP / VGMN /VGSP / VGSN voltage to output */ + lcd_wr_xdata(0x7F); + lcd_wr_xdata(0x0F); + + lcd_wr_regno(0XC0); /* Power Control 1 Setting AVDD / AVEE / VGH / VGL */ + lcd_wr_xdata(0x0F); + lcd_wr_xdata(0x0B); + lcd_wr_xdata(0x0A); /* VGH 15V,VGLO-10V */ + + lcd_wr_regno(0XFC); /* AVDD / AVEE generated by internal pumping. */ + lcd_wr_xdata(0x08); + + lcd_wr_regno(0XDF); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x20); + + lcd_wr_regno(0XF3); /* DVDD Voltage Setting */ + lcd_wr_xdata(0x74); + + lcd_wr_regno(0xB4); /* Inversion Type */ + lcd_wr_xdata(0x00); /* 02 */ + lcd_wr_xdata(0x00); /* 02 */ + lcd_wr_xdata(0x00); /* 02 */ + + lcd_wr_regno(0xF7); /* Resolution Control */ + lcd_wr_xdata(0x82); /* 480*800 */ + + lcd_wr_regno(0xB1); /* FRAME RATE Setting */ + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x13); + lcd_wr_xdata(0x13); + + lcd_wr_regno(0XF2); /* CR_EQ_PC_SDT #C0,06,40,28 */ + lcd_wr_xdata(0x80); + lcd_wr_xdata(0x04); + lcd_wr_xdata(0x40); + lcd_wr_xdata(0x28); + + lcd_wr_regno(0XC1); /* Power Control 2 SD OP Bias_VRH1_VRH2_EXT_CPCK_SEL */ + lcd_wr_xdata(0x17); + lcd_wr_xdata(0x88); /* VGMP */ + lcd_wr_xdata(0x88); /* VGMN */ + lcd_wr_xdata(0x20); + + lcd_wr_regno(0xE0); /* Positive Gamma Control */ + lcd_wr_xdata(0x00); /* P1 */ + lcd_wr_xdata(0x0A); /* P2 */ + lcd_wr_xdata(0x12); /* P3 */ + lcd_wr_xdata(0x10); /* P4 */ + lcd_wr_xdata(0x0E); /* P5 */ + lcd_wr_xdata(0x20); /* P6 */ + lcd_wr_xdata(0xCC); /* P7 */ + lcd_wr_xdata(0x07); /* P8 */ + lcd_wr_xdata(0x06); /* P9 */ + lcd_wr_xdata(0x0B); /* P10 */ + lcd_wr_xdata(0x0E); /* P11 */ + lcd_wr_xdata(0x0F); /* P12 */ + lcd_wr_xdata(0x0D); /* P13 */ + lcd_wr_xdata(0x15); /* P14 */ + lcd_wr_xdata(0x10); /* P15 */ + lcd_wr_xdata(0x00); /* P16 */ + + lcd_wr_regno(0xE1); /* Negative Gamma Correction */ + lcd_wr_xdata(0x00); /* P1 */ + lcd_wr_xdata(0x0B); /* P2 */ + lcd_wr_xdata(0x13); /* P3 */ + lcd_wr_xdata(0x0D); /* P4 */ + lcd_wr_xdata(0x0E); /* P5 */ + lcd_wr_xdata(0x1B); /* P6 */ + lcd_wr_xdata(0x71); /* P7 */ + lcd_wr_xdata(0x06); /* P8 */ + lcd_wr_xdata(0x06); /* P9 */ + lcd_wr_xdata(0x0A); /* P10 */ + lcd_wr_xdata(0x0F); /* P11 */ + lcd_wr_xdata(0x0E); /* P12 */ + lcd_wr_xdata(0x0F); /* P13 */ + lcd_wr_xdata(0x15); /* P14 */ + lcd_wr_xdata(0x0C); /* P15 */ + lcd_wr_xdata(0x00); /* P16 */ + + lcd_wr_regno(0x2a); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x01); + lcd_wr_xdata(0xdf); + + lcd_wr_regno(0x2b); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x03); + lcd_wr_xdata(0x1f); + + lcd_wr_regno(0x3A); /* Pixel Format */ + lcd_wr_xdata(0x55); + + lcd_wr_regno(0x36); /* Memory Access Control */ + lcd_wr_xdata(0x00); /* 02-180 */ + + lcd_wr_regno(0x11); + HAL_Delay(120); + lcd_wr_regno(0x29); + HAL_Delay(20); + lcd_wr_regno(0x2C); + } + else if (lcddev.id == 0x1963) + { + //lcd_ex_ssd1963_reginit(); /* ִ��SSD1963��ʼ�� */ + lcd_wr_regno(0xE2); /* Set PLL with OSC = 10MHz (hardware), Multiplier N = 35, 250MHz < VCO < 800MHz = OSC*(N+1), VCO = 300MHz */ + lcd_wr_xdata(0x1D); /* ����1 */ + lcd_wr_xdata(0x02); /* ����2 Divider M = 2, PLL = 300/(M+1) = 100MHz */ + lcd_wr_xdata(0x04); /* ����3 Validate M and N values */ + //delay_us(100); + lcd_wr_regno(0xE0); /* Start PLL command */ + lcd_wr_xdata(0x01); /* enable PLL */ + HAL_Delay(10); + lcd_wr_regno(0xE0); /* Start PLL command again */ + lcd_wr_xdata(0x03); /* now, use PLL output as system clock */ + HAL_Delay(12); + lcd_wr_regno(0x01); /* ��λ */ + HAL_Delay(10); + + lcd_wr_regno(0xE6); /* ��������Ƶ��,33Mhz */ + lcd_wr_xdata(0x2F); + lcd_wr_xdata(0xFF); + lcd_wr_xdata(0xFF); + + lcd_wr_regno(0xB0); /* ����LCDģʽ */ + lcd_wr_xdata(0x20); /* 24λģʽ */ + lcd_wr_xdata(0x00); /* TFT ģʽ */ + + lcd_wr_xdata((SSD_HOR_RESOLUTION - 1) >> 8); /* ����LCDˮƽ���� */ + lcd_wr_xdata(SSD_HOR_RESOLUTION - 1); + lcd_wr_xdata((SSD_VER_RESOLUTION - 1) >> 8); /* ����LCD��ֱ���� */ + lcd_wr_xdata(SSD_VER_RESOLUTION - 1); + lcd_wr_xdata(0x00); /* RGB���� */ + + lcd_wr_regno(0xB4); /* Set horizontal period */ + lcd_wr_xdata((SSD_HT - 1) >> 8); + lcd_wr_xdata(SSD_HT - 1); + lcd_wr_xdata(SSD_HPS >> 8); + lcd_wr_xdata(SSD_HPS); + lcd_wr_xdata(SSD_HOR_PULSE_WIDTH - 1); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + lcd_wr_regno(0xB6); /* Set vertical perio */ + lcd_wr_xdata((SSD_VT - 1) >> 8); + lcd_wr_xdata(SSD_VT - 1); + lcd_wr_xdata(SSD_VPS >> 8); + lcd_wr_xdata(SSD_VPS); + lcd_wr_xdata(SSD_VER_FRONT_PORCH - 1); + lcd_wr_xdata(0x00); + lcd_wr_xdata(0x00); + + lcd_wr_regno(0xF0); /* ����SSD1963��CPU�ӿ�Ϊ16bit */ + lcd_wr_xdata(0x03); /* 16-bit(565 format) data for 16bpp */ + + lcd_wr_regno(0x29); /* ������ʾ */ + /* ����PWM��� ����ͨ��ռ�ձȿɵ� */ + lcd_wr_regno(0xD0); /* �����Զ���ƽ��DBC */ + lcd_wr_xdata(0x00); /* disable */ + + lcd_wr_regno(0xBE); /* ����PWM��� */ + lcd_wr_xdata(0x05); /* 1����PWMƵ�� */ + lcd_wr_xdata(0xFE); /* 2����PWMռ�ձ� */ + lcd_wr_xdata(0x01); /* 3����C */ + lcd_wr_xdata(0x00); /* 4����D */ + lcd_wr_xdata(0x00); /* 5����E */ + lcd_wr_xdata(0x00); /* 6����F */ + + lcd_wr_regno(0xB8); /* ����GPIO���� */ + lcd_wr_xdata(0x03); /* 2��IO�����ó���� */ + lcd_wr_xdata(0x01); /* GPIOʹ��������IO���� */ + lcd_wr_regno(0xBA); + lcd_wr_xdata(0X01); /* GPIO[1:0]=01,����LCD���� */ + lcd_ssd_backlight_set(100); /* ��������Ϊ���� */ + } + + lcd_display_dir(0); /* Ĭ��Ϊ���� */ + LCD_BL(1); /* �������� */ + lcd_clear(WHITE); +} + +/** + * @brief �������� + * @param color: Ҫ��������ɫ + * @retval �� + */ +void lcd_clear(uint16_t color) +{ + uint32_t index = 0; + uint32_t totalpoint = lcddev.width; + totalpoint *= lcddev.height; /* �õ��ܵ��� */ + lcd_set_cursor(0x00, 0x0000); /* ���ù��λ�� */ + lcd_write_ram_prepare(); /* ��ʼд��GRAM */ + + /* Ϊ�����д���ٶ�, ��lcd_wr_data�������в��, �����ظ����� + * RS, CS�IJ���, �Ӷ������ٶ�, ��51֡��ߵ�78֡����, ���50% + * ��������: -O2�Ż�, ��ˢ�� + * �����ٶ�Ҫ���ʱ��, ���Լ����Ż�: lcd_fill, lcd_color_fill, + * lcd_set_cursor �� lcd_draw_point �Ⱥ���, ��ҿ��������Ż� + */ + LCD_RS(1); /* RS=1,��ʾд���� */ + LCD_CS(0); + + for (index = 0; index < totalpoint; index++) + { + LCD_DATA_OUT(color); /* д��Ҫд������ */ + LCD_WR(0); + LCD_WR(1); + } + + LCD_CS(1); +} + +/** + * @brief ��ָ����������䵥����ɫ + * @param (sx,sy),(ex,ey):�����ζԽ�����,�����СΪ:(ex - sx + 1) * (ey - sy + 1) + * @param color: Ҫ������ɫ(32λ��ɫ,�������LTDC) + * @retval �� + */ +void lcd_fill(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint32_t color) +{ + uint16_t i, j; + uint16_t xlen = 0; + xlen = ex - sx + 1; + + for (i = sy; i <= ey; i++) + { + lcd_set_cursor(sx, i); /* ���ù��λ�� */ + lcd_write_ram_prepare(); /* ��ʼд��GRAM */ + + for (j = 0; j < xlen; j++) + { + lcd_wr_data(color); /* д������ */ + } + } +} + +/** + * @brief ��ָ�����������ָ����ɫ�� + * @param (sx,sy),(ex,ey):�����ζԽ�����,�����СΪ:(ex - sx + 1) * (ey - sy + 1) + * @param color: Ҫ������ɫ�����׵�ַ + * @retval �� + */ +void lcd_color_fill(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint16_t *color) +{ + uint16_t height, width; + uint16_t i, j; + width = ex - sx + 1; /* �õ����Ŀ�� */ + height = ey - sy + 1; /* �߶� */ + + for (i = 0; i < height; i++) + { + lcd_set_cursor(sx, sy + i); /* ���ù��λ�� */ + lcd_write_ram_prepare(); /* ��ʼд��GRAM */ + + for (j = 0; j < width; j++) + { + lcd_wr_data(color[i * width + j]); /* д������ */ + } + } +} + +/** + * @brief ���� + * @param x1,y1: ������� + * @param x2,y2: �յ����� + * @param color: �ߵ���ɫ + * @retval �� + */ +void lcd_draw_line(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t color) +{ + uint16_t t; + int xerr = 0, yerr = 0, delta_x, delta_y, distance; + int incx, incy, row, col; + delta_x = x2 - x1; /* ������������ */ + delta_y = y2 - y1; + row = x1; + col = y1; + + if (delta_x > 0)incx = 1; /* ���õ������� */ + else if (delta_x == 0)incx = 0; /* ��ֱ�� */ + else + { + incx = -1; + delta_x = -delta_x; + } + + if (delta_y > 0)incy = 1; + else if (delta_y == 0)incy = 0; /* ˮƽ�� */ + else + { + incy = -1; + delta_y = -delta_y; + } + + if ( delta_x > delta_y)distance = delta_x; /* ѡȡ�������������� */ + else distance = delta_y; + + for (t = 0; t <= distance + 1; t++ ) /* ������� */ + { + lcd_draw_point(row, col, color); /* ���� */ + xerr += delta_x ; + yerr += delta_y ; + + if (xerr > distance) + { + xerr -= distance; + row += incx; + } + + if (yerr > distance) + { + yerr -= distance; + col += incy; + } + } +} + +/** + * @brief ��ˮƽ�� + * @param x,y: ������� + * @param len : �߳��� + * @param color: ���ε���ɫ + * @retval �� + */ +void lcd_draw_hline(uint16_t x, uint16_t y, uint16_t len, uint16_t color) +{ + if ((len == 0) || (x > lcddev.width) || (y > lcddev.height))return; + + lcd_fill(x, y, x + len - 1, y, color); +} + +/** + * @brief ������ + * @param x1,y1: ������� + * @param x2,y2: �յ����� + * @param color: ���ε���ɫ + * @retval �� + */ +void lcd_draw_rectangle(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t color) +{ + lcd_draw_line(x1, y1, x2, y1, color); + lcd_draw_line(x1, y1, x1, y2, color); + lcd_draw_line(x1, y2, x2, y2, color); + lcd_draw_line(x2, y1, x2, y2, color); +} + +/** + * @brief ��Բ + * @param x,y : Բ�������� + * @param r : �뾶 + * @param color: Բ����ɫ + * @retval �� + */ +void lcd_draw_circle(uint16_t x0, uint16_t y0, uint8_t r, uint16_t color) +{ + int a, b; + int di; + a = 0; + b = r; + di = 3 - (r << 1); /* �ж��¸���λ�õı�־ */ + + while (a <= b) + { + lcd_draw_point(x0 + a, y0 - b, color); /* 5 */ + lcd_draw_point(x0 + b, y0 - a, color); /* 0 */ + lcd_draw_point(x0 + b, y0 + a, color); /* 4 */ + lcd_draw_point(x0 + a, y0 + b, color); /* 6 */ + lcd_draw_point(x0 - a, y0 + b, color); /* 1 */ + lcd_draw_point(x0 - b, y0 + a, color); + lcd_draw_point(x0 - a, y0 - b, color); /* 2 */ + lcd_draw_point(x0 - b, y0 - a, color); /* 7 */ + a++; + + /* ʹ��Bresenham�㷨��Բ */ + if (di < 0) + { + di += 4 * a + 6; + } + else + { + di += 10 + 4 * (a - b); + b--; + } + } +} + +/** + * @brief ���ʵ��Բ + * @param x,y: Բ�������� + * @param r : �뾶 + * @param color: Բ����ɫ + * @retval �� + */ +void lcd_fill_circle(uint16_t x, uint16_t y, uint16_t r, uint16_t color) +{ + uint32_t i; + uint32_t imax = ((uint32_t)r * 707) / 1000 + 1; + uint32_t sqmax = (uint32_t)r * (uint32_t)r + (uint32_t)r / 2; + uint32_t xr = r; + + lcd_draw_hline(x - r, y, 2 * r, color); + + for (i = 1; i <= imax; i++) + { + if ((i * i + xr * xr) > sqmax) + { + /* draw lines from outside */ + if (xr > imax) + { + lcd_draw_hline (x - i + 1, y + xr, 2 * (i - 1), color); + lcd_draw_hline (x - i + 1, y - xr, 2 * (i - 1), color); + } + + xr--; + } + + /* draw lines from inside (center) */ + lcd_draw_hline(x - xr, y + i, 2 * xr, color); + lcd_draw_hline(x - xr, y - i, 2 * xr, color); + } +} + +/** + * @brief ��ָ��λ����ʾһ���ַ� + * @param x,y : ���� + * @param chr : Ҫ��ʾ���ַ�:" "--->"~" + * @param size : �����С 12/16/24/32 + * @param mode : ���ӷ�ʽ(1); �ǵ��ӷ�ʽ(0); + * @param color : �ַ�����ɫ; + * @retval �� + */ +void lcd_show_char(uint16_t x, uint16_t y, char chr, uint8_t size, uint8_t mode, uint16_t color) +{ + uint8_t temp, t1, t; + uint16_t y0 = y; + uint8_t csize = 0; + uint8_t *pfont = 0; + + csize = (size / 8 + ((size % 8) ? 1 : 0)) * (size / 2); /* �õ�����һ���ַ���Ӧ������ռ���ֽ��� */ + chr = chr - ' '; /* �õ�ƫ�ƺ��ֵ��ASCII�ֿ��Ǵӿո�ʼȡģ������-' '���Ƕ�Ӧ�ַ����ֿ⣩ */ + + switch (size) + { + case 12: + pfont = (uint8_t *)asc2_1206[chr]; /* ����1206���� */ + break; + + case 16: + pfont = (uint8_t *)asc2_1608[chr]; /* ����1608���� */ + break; + + case 24: + pfont = (uint8_t *)asc2_2412[chr]; /* ����2412���� */ + break; + + case 32: + pfont = (uint8_t *)asc2_3216[chr]; /* ����3216���� */ + break; + + default: + return ; + } + + for (t = 0; t < csize; t++) + { + temp = pfont[t]; /* ��ȡ�ַ��ĵ������� */ + + for (t1 = 0; t1 < 8; t1++) /* һ���ֽ�8���� */ + { + if (temp & 0x80) /* ��Ч��,��Ҫ��ʾ */ + { + lcd_draw_point(x, y, color); /* �������,Ҫ��ʾ����� */ + } + else if (mode == 0) /* ��Ч��,����ʾ */ + { + lcd_draw_point(x, y, g_back_color); /* ������ɫ,�൱������㲻��ʾ(ע�ⱳ��ɫ��ȫ�ֱ�������) */ + } + + temp <<= 1; /* ��λ, �Ա��ȡ��һ��λ��״̬ */ + y++; + + if (y >= lcddev.height)return; /* �������� */ + + if ((y - y0) == size) /* ��ʾ��һ����? */ + { + y = y0; /* y���긴λ */ + x++; /* x������� */ + + if (x >= lcddev.width)return; /* x���곬������ */ + + break; + } + } + } +} + +/** + * @brief ƽ������, m^n + * @param m: ���� + * @param n: ָ�� + * @retval m��n�η� + */ +static uint32_t lcd_pow(uint8_t m, uint8_t n) +{ + uint32_t result = 1; + + while (n--)result *= m; + + return result; +} + +/** + * @brief ��ʾlen������ + * @param x,y : ��ʼ���� + * @param num : ��ֵ(0 ~ 2^32) + * @param len : ��ʾ���ֵ�λ�� + * @param size: ѡ������ 12/16/24/32 + * @param color : ���ֵ���ɫ; + * @retval �� + */ +void lcd_show_num(uint16_t x, uint16_t y, uint32_t num, uint8_t len, uint8_t size, uint16_t color) +{ + uint8_t t, temp; + uint8_t enshow = 0; + + for (t = 0; t < len; t++) /* ������ʾλ��ѭ�� */ + { + temp = (num / lcd_pow(10, len - t - 1)) % 10; /* ��ȡ��Ӧλ������ */ + + if (enshow == 0 && t < (len - 1)) /* û��ʹ����ʾ,�һ���λҪ��ʾ */ + { + if (temp == 0) + { + lcd_show_char(x + (size / 2)*t, y, ' ', size, 0, color);/* ��ʾ�ո�,ռλ */ + continue; /* �����¸�һλ */ + } + else + { + enshow = 1; /* ʹ����ʾ */ + } + + } + + lcd_show_char(x + (size / 2)*t, y, temp + '0', size, 0, color); /* ��ʾ�ַ� */ + } +} + +/** + * @brief ��չ��ʾlen������(��λ��0Ҳ��ʾ) + * @param x,y : ��ʼ���� + * @param num : ��ֵ(0 ~ 2^32) + * @param len : ��ʾ���ֵ�λ�� + * @param size: ѡ������ 12/16/24/32 + * @param mode: ��ʾģʽ + * [7]:0,�����;1,���0. + * [6:1]:���� + * [0]:0,�ǵ�����ʾ;1,������ʾ. + * @param color : ���ֵ���ɫ; + * @retval �� + */ +void lcd_show_xnum(uint16_t x, uint16_t y, uint32_t num, uint8_t len, uint8_t size, uint8_t mode, uint16_t color) +{ + uint8_t t, temp; + uint8_t enshow = 0; + + for (t = 0; t < len; t++) /* ������ʾλ��ѭ�� */ + { + temp = (num / lcd_pow(10, len - t - 1)) % 10; /* ��ȡ��Ӧλ������ */ + + if (enshow == 0 && t < (len - 1)) /* û��ʹ����ʾ,�һ���λҪ��ʾ */ + { + if (temp == 0) + { + if (mode & 0X80) /* ��λ��Ҫ���0 */ + { + lcd_show_char(x + (size / 2)*t, y, '0', size, mode & 0X01, color); /* ��0ռλ */ + } + else + { + lcd_show_char(x + (size / 2)*t, y, ' ', size, mode & 0X01, color); /* �ÿո�ռλ */ + } + + continue; + } + else + { + enshow = 1; /* ʹ����ʾ */ + } + + } + + lcd_show_char(x + (size / 2)*t, y, temp + '0', size, mode & 0X01, color); + } +} + +/** + * @brief ��ʾ�ַ��� + * @param x,y : ��ʼ���� + * @param width,height: �����С + * @param size : ѡ������ 12/16/24/32 + * @param p : �ַ����׵�ַ + * @param color : �ַ�������ɫ; + * @retval �� + */ +void lcd_show_string(uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint8_t size, char *p, uint16_t color) +{ + uint8_t x0 = x; + width += x; + height += y; + + while ((*p <= '~') && (*p >= ' ')) /* �ж��Dz��ǷǷ��ַ�! */ + { + if (x >= width) + { + x = x0; + y += size; + } + + if (y >= height)break; /* �˳� */ + + lcd_show_char(x, y, *p, size, 0, color); + x += size / 2; + p++; + } +} diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/main.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/main.c new file mode 100644 index 0000000..0b69d90 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/main.c @@ -0,0 +1,217 @@ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file : main.c + * @brief : Main program body + ****************************************************************************** + * @attention + * + *

© Copyright (c) 2024 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 "gpio.h" +#include "lcd.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); +/* 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 */ + lcd_init(); + uint8_t x = 0; + while (1) + { + /* USER CODE END WHILE */ + + /* USER CODE BEGIN 3 */ + switch (x) { + case 0: lcd_clear(WHITE); g_back_color = WHITE; break; + case 1: lcd_clear(BLACK); g_back_color = BLACK; break; + case 2: lcd_clear(BLUE); g_back_color = BLUE; break; + case 3: lcd_clear(RED); g_back_color = RED; break; + case 4: lcd_clear(MAGENTA); g_back_color = MAGENTA; break; + case 5: lcd_clear(GREEN); g_back_color = GREEN; break; + case 6: lcd_clear(CYAN); g_back_color = CYAN; break; + case 7: lcd_clear(YELLOW); g_back_color = YELLOW; break; + case 8: lcd_clear(BRRED); g_back_color = BRRED; break; + case 9: lcd_clear(GRAY); g_back_color = GRAY; break; + case 10: lcd_clear(LGRAY); g_back_color = LGRAY; break; + case 11: lcd_clear(BROWN); g_back_color = BROWN; break; + }//end of switch + + lcd_show_string(30, 40, 200, 24, 24, "Mini STM32 ^_^", RED); + lcd_show_string(30, 70, 200, 16, 16, "TFTLCD TEST", RED); + /* Code of showing address of GPIOA->CRL (represented in hexadecimal) BEGIN */ + // lcd_show_string(30, 90, 200, 16, 16, "addr = 0x", RED); + lcd_show_string(30, 90, 100, 16, 16, "addr = 0x", RED); + char hex[17] = "0123456789ABCDEF"; + int i = 7, x = (uint32_t) &GPIOA->CRL; + char num[i + 2]; + while (i >= 0) { + num[i--] = hex[x & 0xF]; + x = x >> 4; + } + lcd_show_string(102, 90, 60, 16, 16, num, RED); + /* Code of showing address of GPIOA->CRL (represented in hexadecimal) END */ + + lcd_draw_rectangle(30, 150, 210, 190, BLACK); + lcd_fill(31, 151, 209, 189, YELLOW); + + x++; + if (x == 12) + x = 0; + + HAL_Delay(2000); + } + /* 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(); + } +} + +/* 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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/stm32f1xx_hal_msp.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/stm32f1xx_hal_msp.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/stm32f1xx_hal_msp.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/stm32f1xx_hal_msp.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/stm32f1xx_it.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/stm32f1xx_it.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/stm32f1xx_it.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/stm32f1xx_it.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/syscalls.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/syscalls.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/syscalls.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/syscalls.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/sysmem.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/sysmem.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/sysmem.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/sysmem.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/system_stm32f1xx.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/system_stm32f1xx.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/system_stm32f1xx.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Src/system_stm32f1xx.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Startup/startup_stm32f103rctx.s b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Startup/startup_stm32f103rctx.s similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Startup/startup_stm32f103rctx.s rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Startup/startup_stm32f103rctx.s diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.cyclo b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.cyclo new file mode 100644 index 0000000..1a0fdbe --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.cyclo @@ -0,0 +1 @@ +../Core/Src/gpio.c:41:6:MX_GPIO_Init 1 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.d b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.d new file mode 100644 index 0000000..2087e9e --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.d @@ -0,0 +1,47 @@ +Core/Src/gpio.o: ../Core/Src/gpio.c ../Core/Inc/gpio.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/stm32f103xe.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_flash.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h +../Core/Inc/gpio.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/stm32f103xe.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_flash.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.o b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.o new file mode 100644 index 0000000000000000000000000000000000000000..96dd9cca26d8f7eaaf1adcf8c0826e626e6b2915 GIT binary patch literal 776116 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®YEav{|b%V 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

~^ch4&DR~*Oxfd@VK5`d?TyH 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⁡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 L@1rOvFpB#(Q_=c? literal 0 HcmV?d00001 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.su b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.su new file mode 100644 index 0000000..a589913 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/gpio.su @@ -0,0 +1 @@ +../Core/Src/gpio.c:41:6:MX_GPIO_Init 40 static diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.cyclo b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.cyclo new file mode 100644 index 0000000..77ecef4 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.cyclo @@ -0,0 +1,29 @@ +../Core/Src/lcd.c:61:6:lcd_wr_xdata 1 +../Core/Src/lcd.c:76:37:lcd_wr_regno 1 +../Core/Src/lcd.c:92:6:lcd_write_reg 1 +../Core/Src/lcd.c:104:13:lcd_opt_delay 2 +../Core/Src/lcd.c:114:17:lcd_rd_data 1 +../Core/Src/lcd.c:149:37:lcd_write_ram_prepare 1 +../Core/Src/lcd.c:159:10:lcd_read_point 6 +../Core/Src/lcd.c:202:6:lcd_display_on 2 +../Core/Src/lcd.c:219:6:lcd_display_off 2 +../Core/Src/lcd.c:236:6:lcd_set_cursor 4 +../Core/Src/lcd.c:297:6:lcd_scan_dir 29 +../Core/Src/lcd.c:456:6:lcd_draw_point 1 +../Core/Src/lcd.c:468:6:lcd_ssd_backlight_set 1 +../Core/Src/lcd.c:484:6:lcd_display_dir 12 +../Core/Src/lcd.c:574:6:lcd_set_window 4 +../Core/Src/lcd.c:636:6:lcd_init 16 +../Core/Src/lcd.c:2402:6:lcd_clear 2 +../Core/Src/lcd.c:2435:6:lcd_fill 3 +../Core/Src/lcd.c:2459:6:lcd_color_fill 3 +../Core/Src/lcd.c:2485:6:lcd_draw_line 9 +../Core/Src/lcd.c:2541:6:lcd_draw_hline 4 +../Core/Src/lcd.c:2555:6:lcd_draw_rectangle 1 +../Core/Src/lcd.c:2570:6:lcd_draw_circle 3 +../Core/Src/lcd.c:2610:6:lcd_fill_circle 4 +../Core/Src/lcd.c:2648:6:lcd_show_char 12 +../Core/Src/lcd.c:2719:17:lcd_pow 2 +../Core/Src/lcd.c:2737:6:lcd_show_num 5 +../Core/Src/lcd.c:2777:6:lcd_show_xnum 6 +../Core/Src/lcd.c:2821:6:lcd_show_string 5 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.d b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.d new file mode 100644 index 0000000..1259ad4 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.d @@ -0,0 +1,49 @@ +Core/Src/lcd.o: ../Core/Src/lcd.c ../Core/Inc/lcd.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/stm32f103xe.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_flash.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ + ../Core/Inc/font.h +../Core/Inc/lcd.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/stm32f103xe.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_flash.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: +../Core/Inc/font.h: diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.o b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.o new file mode 100644 index 0000000000000000000000000000000000000000..07fe74aa54d8f2b2ee574784435c9c7ed554a3b3 GIT binary patch literal 885860 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
    i+?iEnjD0u{B5E+av;ckkP<=QQ<5j0WiCA&IQ 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

    HZtfi)=%TzOFBx-(58xU#!xX%8 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 literal 0 HcmV?d00001 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.su b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.su new file mode 100644 index 0000000..ffa92f6 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/lcd.su @@ -0,0 +1,29 @@ +../Core/Src/lcd.c:61:6:lcd_wr_xdata 16 static +../Core/Src/lcd.c:76:37:lcd_wr_regno 16 static +../Core/Src/lcd.c:92:6:lcd_write_reg 24 static +../Core/Src/lcd.c:104:13:lcd_opt_delay 16 static +../Core/Src/lcd.c:114:17:lcd_rd_data 32 static +../Core/Src/lcd.c:149:37:lcd_write_ram_prepare 16 static +../Core/Src/lcd.c:159:10:lcd_read_point 32 static +../Core/Src/lcd.c:202:6:lcd_display_on 16 static +../Core/Src/lcd.c:219:6:lcd_display_off 16 static +../Core/Src/lcd.c:236:6:lcd_set_cursor 40 static +../Core/Src/lcd.c:297:6:lcd_scan_dir 48 static +../Core/Src/lcd.c:456:6:lcd_draw_point 24 static +../Core/Src/lcd.c:468:6:lcd_ssd_backlight_set 32 static +../Core/Src/lcd.c:484:6:lcd_display_dir 16 static +../Core/Src/lcd.c:574:6:lcd_set_window 48 static +../Core/Src/lcd.c:636:6:lcd_init 368 static +../Core/Src/lcd.c:2402:6:lcd_clear 32 static +../Core/Src/lcd.c:2435:6:lcd_fill 32 static +../Core/Src/lcd.c:2459:6:lcd_color_fill 40 static +../Core/Src/lcd.c:2485:6:lcd_draw_line 64 static +../Core/Src/lcd.c:2541:6:lcd_draw_hline 32 static +../Core/Src/lcd.c:2555:6:lcd_draw_rectangle 32 static +../Core/Src/lcd.c:2570:6:lcd_draw_circle 40 static +../Core/Src/lcd.c:2610:6:lcd_fill_circle 40 static +../Core/Src/lcd.c:2648:6:lcd_show_char 40 static +../Core/Src/lcd.c:2719:17:lcd_pow 24 static +../Core/Src/lcd.c:2737:6:lcd_show_num 48 static +../Core/Src/lcd.c:2777:6:lcd_show_xnum 48 static +../Core/Src/lcd.c:2821:6:lcd_show_string 40 static diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/main.cyclo b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/main.cyclo new file mode 100644 index 0000000..419a3dc --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/main.cyclo @@ -0,0 +1,3 @@ +../Core/Src/main.c:64:5:main 15 +../Core/Src/main.c:147:6:SystemClock_Config 3 +../Core/Src/main.c:189:6:Error_Handler 1 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/main.d b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/main.d new file mode 100644 index 0000000..8c9debc --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/main.d @@ -0,0 +1,50 @@ +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/stm32f103xe.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_flash.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ + ../Core/Inc/gpio.h ../Core/Inc/main.h ../Core/Inc/lcd.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/stm32f103xe.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_flash.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: +../Core/Inc/gpio.h: +../Core/Inc/main.h: +../Core/Inc/lcd.h: diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/main.o b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Src/main.o new file mode 100644 index 0000000000000000000000000000000000000000..92e7c44b36540842d3cd9cd9f38ead66dfc62b7f GIT binary patch literal 804216 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%0Dh>lFSNV8jBgJV_kbq0#-Twbz&%j& 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%0AFSCk$zjVR$Tw}6nTUPy3zjUfD$?0JU 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 OdkW+GOK1cP?fwOV+lCbY literal 0 HcmV?d00001 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Startup/subdir.mk b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Startup/subdir.mk new file mode 100644 index 0000000..0bf8bd0 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Core/Startup/subdir.mk @@ -0,0 +1,27 @@ +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +# Add inputs and outputs from these tool invocations to the build variables +S_SRCS += \ +../Core/Startup/startup_stm32f103rctx.s + +OBJS += \ +./Core/Startup/startup_stm32f103rctx.o + +S_DEPS += \ +./Core/Startup/startup_stm32f103rctx.d + + +# Each subdirectory must supply rules for building sources it contributes +Core/Startup/%.o: ../Core/Startup/%.s Core/Startup/subdir.mk + arm-none-eabi-gcc -mcpu=cortex-m3 -g3 -DDEBUG -c -x assembler-with-cpp -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" "$<" + +clean: clean-Core-2f-Startup + +clean-Core-2f-Startup: + -$(RM) ./Core/Startup/startup_stm32f103rctx.d ./Core/Startup/startup_stm32f103rctx.o + +.PHONY: clean-Core-2f-Startup + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.cyclo b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.cyclo new file mode 100644 index 0000000..9570d3e --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.cyclo @@ -0,0 +1,25 @@ +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:142:19:HAL_Init 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:175:19:HAL_DeInit 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:200:13:HAL_MspInit 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:211:13:HAL_MspDeInit 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:234:26:HAL_InitTick 3 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:293:13:HAL_IncTick 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:304:17:HAL_GetTick 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:313:10:HAL_GetTickPrio 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:322:19:HAL_SetTickFreq 3 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:354:21:HAL_GetTickFreq 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:370:13:HAL_Delay 3 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:396:13:HAL_SuspendTick 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:412:13:HAL_ResumeTick 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:422:10:HAL_GetHalVersion 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:438:10:HAL_GetREVID 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:454:10:HAL_GetDEVID 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:463:10:HAL_GetUIDw0 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:472:10:HAL_GetUIDw1 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:481:10:HAL_GetUIDw2 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:490:6:HAL_DBGMCU_EnableDBGSleepMode 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:506:6:HAL_DBGMCU_DisableDBGSleepMode 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:536:6:HAL_DBGMCU_EnableDBGStopMode 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:552:6:HAL_DBGMCU_DisableDBGStopMode 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:568:6:HAL_DBGMCU_EnableDBGStandbyMode 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c:584:6:HAL_DBGMCU_DisableDBGStandbyMode 1 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d new file mode 100644 index 0000000..bec8f2f --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d @@ -0,0 +1,46 @@ +Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o: \ + ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.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/stm32f103xe.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_flash.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.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/stm32f103xe.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_flash.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o new file mode 100644 index 0000000000000000000000000000000000000000..e35ca708de537a21592a95639fa622d6d0874208 GIT binary patch literal 787728 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%0Au+ zn?iL~cUM7z_7=*8V~v4vr52gM$LM+1-{=+({D z7sQ&)6T%rjQPrM2`~f7bK>d?v%pbO|3Rh5Uvy;XElBk;8e$RPygjePqf}jp35j487 z3F_@t&9ulFm<|>%oUG9joT8${OReqvhL%pO?c1lPkMDl}`RQS|J2-gz{;zNU_6hMC z?-7RuYadh!Xchx&+X9)sIdtJ8TEz&AWR2X4$D8Gn7od_vf#tw<}lyFQ_&WW><2T_-y%FOIf1ck>#paLQMX9Ys-IFR6NE2+4_%XgZl`Y5!TzT2;|B!;N;ZWs!iy0;} z9|PA7rVrSz<}h~Q?~dDd@ULGF_*+g3(*$UjSkD%2`=lNTS1tSmtIKmt?+tv|ySwYd zLAnT`!>-P6pjU0@H<$C9)$JDC?$E|YYZm^mX{VYXv@+|aTYo5Qn%ptmT_gn;7Ykt; z+b~=xw0XM$ZnL5}6pDcUO|PIe0IyuECYwR=TdN|h8;SsodS$x=(|kda#C%bnbaIC& zV~aC}0Vb;qe%W$uw#!ws4EuWN1)7ez8GA=&SdLa2uQu}sxiBs(w^>`TT@o4t3tX#l*dhF2k%1jg21A) zS`XcHHl*oHcw<%^w;Cq5fI4HU!b;k*uN=WLBoZgbjWJjt>T*T7x&FcisG*g%T5Wf| zGTC}uQFrpI;E5f>3U}`x-hO&Q(8m))CBd|Qf)hmF^V0UgY4h$HrdMYsKVFZY;qiSg z4&2c&c)nmgS%5{+&X=}fXe%vPBha9nQ^Go|PakH3uT$O#^ogdhH!a99wImB85;xPz z6c^Q7gg@-iXE8O7!VOR(6Pd*_PHwjdxFOB;h8|}hbLHRax?9318|Tq*pwEkzZZtRD z7}z@QbIHvk1TyRO7NHEy46)260awe*gK8yUCS|n-n6=m^6Ip+OCBi8GR|Zn#P%6 zdK!5c`RXBj#E|Cw?SW1W)ZPyagzrG#YPdu$1Y(25yT-0qj*qUZ8E-)OA*K&kv_eKf zShp5nJ~Y{ym9V&=8S@p_5F9N=)aiLQBHeb&n|vSbm5mLyT|UYQ*;gd1klE8nY`?=o zZrAfmmyYs2I^w~lR5xq_zVg<6L(Uf8c*c8t1DFxiz!G=3|_v!8L z-#&AN3!5BKvdRKQG>in(I3P>Fg^pmWo9P0|4MmI8%2t=F z?Xk-l6v%F0TuiW)FBFJyaiQg?uGofh6T4d@qNSO|qTtIdJ`3)4m>4L>6_=nd(e6-i zWDjx!MkF&@SPZkVyzG=w5q_>`c6I{lhGI`{3Wi4clbAGJua`1`kohLjYZT!IZZE6i zR7bM<`lsAs-k{v?R&TI>@j@&PR$UB?A{&2fZZ|7<-?Iz5xTwj4Ri4tD>l%34fy@O6 z#MHkqh1XyNz}bShI@OXPp>l$077Sl8PI-Yt!W_;%%d$3Iy#!U?E-%S8>TN-mQi1ij zoymZ8Fr-UoZW|f~^Yli^(LXAfV_Ew>Q1ESqg@gi1FIx zly!h<&bF8t1c?0jaPj%m+#+a(r>>XbL4e-RC-l)2O7m>Iy=8zY$c}Em$Z1s<$*rnR)tua zBne|?4%YibK?-rGpru)6R$NfF!u=yQVNnJ*30DzA$?(~+2tRYnbN1jJ?1aA?D7Kh^ zFuUFFKfinb^zL!@}2hm2N*Xc9{f5=d(2|clT{y?|RdIMT^``Q6P7a zBcfgeZBkv!^iry;QOSD9yX?(#>n7b z{&Vo(5wh<&Bpb#TfX7zyG$`jC$hGaZ5lDc0xJHjZl^(7U!tBh$r47SxI8S25;o;{O z$ykOR3Zv@;HZ!gRH4jh%llck>uZC$}LPY$IVE{>BR4eUmFd%Sr1iEG7AfA0J8@WZo z7-O!vb{8)Bbn`uQoz3^hyJHRQFh{8*h=wK-Y>~k|VZp;Q%9;oZHk}_V-~zswvJvB7 zAyMVx-O~*s8NonYqR>Tf8-xvAOxKuyD1p@d6z{ehy#Mg{NBaX)zzbePF3KgM4i#d< zcp!)pv-{0JFF8`oGEu+tykhmkZuiD|0^31uiU(tH|Qh z!|n2vrXH7>Bs9fWD89Dx9d-8}{9NtULvT0aqOtpk=D;qHl<#wxg}ZqxSSA)UW*}Dx zl6cA7U49CXx{LI=Q-0KDnKeM&An_DQJs6upkS_6~A-=s`bTfww?{^9t_20tw_ESuO zu;^s*W*Bf7@vh&xqY^G#aj607^`c`lY`59d=IO&PzdZcZjJ&6VZuFT8q0|X?Z6OMv zZm_+)o~(9{{DW&I58I52i4}5#WbqrCd#}%t3)eEU4%j}%O&3F$E`~Fg@W`Wq>fA8MspIDnVKh7pxim)O9z5SOE^)nsucMlaV}(e)7OXLii@Uh=TuKu$B-!? zlPU_IbiRsaFMt|Rw%V;A0au^efYcq-dW2MieyY}jS}zhcEHY8gaJy~jU2E3Odw|ps z(RfS~-R&-^MIx+@L3Qv~9gX0zQu-XDHU^`v|L11;W%tj`(piP)U$*;EOEpZu7|P8p zqK((n_4IpqTL1j^n?Jw%dVmq;%e*+iRXv^I_^_O>)4~=4T!!h{df${V^K3!d?PF1#$vtc~QVu~ns0~?6`{CXD3Y^QRGOHqF02;iI^o^u6TClt?7Ar9WYSZ`_XyV{*EDEp-maYJHC!6@+O5G>5pAJqvDfs6_qfA;rXTLrbmJc?R^ zY1p!n34!zg8O;vrCQsjWG+6d$Etynlt{#XzkiFbsyOD5TUhtvW{>~xSR1PJ?fXYoS zz>#6-o4#4WE_3kh@Nk46LJh*KD8157fHZGn`>y06bF6M^2Bh1VZ@VSF6-bXO$niJ{ zr*r^lP!=;W@_CMy-V#g=ND1pz=wG!I(%(n#4Y>(c=+zRFQiTjOK;6KdZ(b3E>(+j# z2BhwR){|L8_9p9(v32Al`X_4fMZNXW>moNBkMdM=&66noeD-oswKN^t({L#xx*Gw> zHy|9k*Tnq5XfD>Q#rQAoV#L(X8rLNWLMi&6bd&+ZIAMqTyx=vfn;Q3zKfnDr__sq* zS)>U<&qeG*ne@WRO#n?Tr;Uv5e6iWuB&L=gscH3qrhYb;fqI|`rssJ10zrT`;~(G} z0pIatjV@F-A&X>nyJKJ>BRs8Bp)`_;m_7;7WQY#Tf!x52IbUxEWkW+YqQm+WvcW5@ z^p-JLaDVk)HOEiHA|xZ7vwm%}4D|7G_F;bjGu)T#vZu$3!cRHn8r|VjFggew96fBP zPGz$@v+brKX!#@5s4x%}XtC)yIvb!KWGn0nw?Al9W#7o1ol}VVvu~PC#WW$P@(a_{ z)1wGAnOtr!DlE>CCj$AaB--{%CoKrXTQ2R>;#{bsOP_Zk`^oO zMUyA@ZK1t=d?citMCq9@%;o|V_#cRlX6cX=9UXN|D0<*i3jLi8x|{W%EK z1@!h&c(u&%B{LM#QBif!l2H{OGW^ZUS1(Ur9Sx6;&rU~2!;_Z}|8{hEHak5wImE&n zdX4u1(u;%j5J#n24h~LTmdQ0$JXeL-iFAS61&pzkOxIp~L8OK%K%WM&L{}qw z$CzLmq(v=mren;&O%t$qw;H)x+Yg^FNA4_p`}ilY=>xH{3pR?_K)a|oZkTZuBxoA; z6|#kpA9e%j!FJpZbzcxvgDk^ihGS(0g0IC#PcJtJRKTdoW5xI9BZvry=nZ6Ka*f;l zYPdeNP{J&j56lALA31~|U)3Jh`dveKpIuz{D(eZR$8&p3SBF?XY>_?op$ye6^vrSf zwo@lkDF_OSL{UA=$==eivOK!D7%!5|Z?t1mJ+efx2yY|MOT3d=zSOj8KX3!m*mTVk zr_M}RiwN`A$n)w0EM;hrc{3edMO+7?#~(Sf6{btMbPF zo>3O-OFdx%z#K%-h9_x{+)6*9+E~|?)FMsa?5?~5lUrU|O-mDyV447IK}mr7laU4(6J054O6jAI{B@>9CI*)fO?*LbTvjVdP>65jaX=Q@ z%8m-*z(p0IZVP)6A9G0R!}0S+`k3l!`uOPzChO_Bdiig`_y&kRz;WcR*)}6>;wy6O z?qT^mY*kFK!_bL8qz3&an;xh=n-(|F&%FkI!5o1@L9~{xpZ0)t8^SJ^E6^D@i8j}RzkGO)RHpY2gM+UgKm76)b^u(- z5EsV>zp_iw(%iC`pZtDQwD3do+g{9{Y?Q=BK*l48bEo1+_vdp|NvhP#q-Q{}dd{qvze46)kvcU7lu7W%t*WhX)I#$F zxp-?cQiyY!y$sY1%*{k<&DA}#G?mnRb#Jk)m@kHojc4a`XCz#DJ;Su6#?7lzSrnnc zk$p0K$J!D=YZzQ?%gZW}siiQX%wH@m~4=FcIvv7vOi_B}`!+gn7U^&E#0%y z;7avda&8q9YmzVT0xiW(`BFw|QLGJJtzK9s!&PAqTclf0F&(2F$PBA*tZ!G4tu<|+ zBZ6jtksc?Mh2b^pI@4D9u?w2pg0@F-?UK01wcIz7JWy+!wlC}4TvTuEXwN#BoZl@X zibEC1i0MS!^9i;_z2z#9)=23laA2$+9&x(H9}&0)?%KU*6H(>`0y9%?tW^U=@gHF< z@|be6pGV9koirloGVY;12RP0;DTg$?@;@VZhJ>k);}zKiqU@gIA}!c49Se>uh$V2q zyr86k_KpSu;e#-)G~ZTOPX1Z93Lp0myH(On&$(4>v%3Hj#kry>#L23dQt3+$-+(mJ zBIl8<3nOW%54AAeP^bVA1&2U`geYFx$#)WRTFefFz+y?Gef2N^E6pwJ^1{mR(~T5JzcEN!!9i-cbF1t)$_4`2!{ zPVmp>x+TZGMw*ur_dMHSuaQQH2xo(@e*XC@Jo4>c z5G71HByvb?)GsWJsg0T&V+2P|@FheSKDG$bF#c-my+4%0dui?MbFZh@zwYn{<+FQj zRux?L0UKEG@M7-v51K#V00IB26FU4_&gYQmk1(&vot+vozk!hf=Z74`59tEA0eyg! z*foIm`WZwOi3UaX!Yk7m%PYdM%)%#lA`^jwi6?4lQ3$T`ctiK5MN+}JTEA63DeK)J zKf?7}$K*ulVl6=DW(lTwtQWVI9coybc2N9_qOkSwaQj?kYk*T}Ykwe}lU`WDt$cY8 zx_9o-a44O~qdOB!Lm}eMgdEVAa&T{q(@V-cU#Bv}U`~MbqcCNe-Z99-~r49NM5+O1 z!BqWgRtCZh!E|UK9b9P5#P)PZv+Ly#5KY-y6AGp;sBY03nWq#baB&F&Bex|*P*7Zz zy`yKvd@SZZnIY^HZWrlhWgnKFk}Ia_W^?GCo+)pp~ilbjsljy(3PpCw>~~V>TH67j%X0SaeomgkqZm(851D6CA`Mv1yG)Rw|cSp z%o!2>+|rc=d1T*V5xu=B->Aeo+`{Lu3&0L~GvEHe)N9)hF3+`-ug^~~eZM}M7RLGP z#5k_ZjVHnf)RKmeCF!_n`x`uWOkIJ(HG86+Op^X-gv{eczR^>VR*88L{;n%JY= z4`xRCN5(K=nj^}Sp{94;)V|LW9Dpf*?(df1cvB<6+4?F)0~+ZGH%l5%utcL9LI{fipZar#;O0o9%1W`p~|4 z<-(xn_y=JM%Cw$A9fr+iVXw-~G%-AL27a+Ecyto5V4SppctoZ9pH(h9uc~6x{vR=v zRZLTWDH}AZegQ%E-}4-PmQ0Hu&3#x(%FfShO)GiK<`N}E-IB zc-yC&eb1x++{W(@N;E*zlqp5H$&Ah<#0PfoZcIc z8O;|!D@sF)(Y#5)LwcaN2fP(Fc2+k(!tpSpv(eG<>FLqg$>{9t6cM>+GbbH1!e8u3 z%?_C6vY4_eJI@?kuL^=(j15d1oinY@dw5+~Q6xTid97F_Qc2?#sVbd?I22XtfU=eH z`3Avik=z&I0Dhp0t6QG;q#d5sQK(1=?10eJY=XWXLEmVMd6vNScF?3-+A<9C;(MO( z0Ztj$^@=bO!TEoK`DsVy#-)JzsBF;@qB4P&u^WtzEsB5@vQY64=Ry_oM6sTg8M}~& zEToqibDjg0?cZhzb88626Bv7VSXEx?0t*_5VVa8cBjzg2I;U6}4434^o6 zjhK7MeSFA%YCoZb=mUh`R-_w59(wY?g226zPx*sfuT%aOD{d%SeS43Q>I0J$ctk;0 z{A?iT%LIVEPKGW}+Ycrt6s_1DjU->7#iABCeJaToJvN(KwkVe%7oo77QNuKEaZG@T zs0f_yIVeD~m(tG986_{$tMgb8nZ~Gjm;o8H;kw@6k-%^?`ZZH8OJy7g4y$ETr;(;H&`b?>TIY_(teH53#058(bV@+-*Y{7 zIB}{@lZ7PO6onblUjPu@rmJuxKybs01_$KRm3mqRciEg;_FLiWt%XX4W*9rBo#TGKa`r-ZC4?jsSi}r`NKS_0G zSS!3LeMiGx4A^MLTZ~3f(Pvd&4P|9N_Ve!Aq@$t-z97S7wY;DCH(suEd;M)5L zM(vm%GHPD%fWqlbft`NEA240aWEd*sKv)A?(@+c57i)B}e}rLC<48LVl*z-_oftdq zF6F-d4rN%S@$Zz!)D5eQ4jK|;IL_y5kgz*cWyhI@{7Q-_*)`qmqB{!`&8$;gb60sG zOITbNuw+sO1mvrlQX}X}GPvAg{b_3Omf!`Z79PpX_)!BJZx`@y&Nnk0i>g74Zat9{ z8@Y}Iwj@$s)(23xnIPJGvb*`X{fH`r^T%I4KgIVCIdP%0JI=%0^g6_O{x;(43+kmj zqNSmm$9;LRM#&xo%Wbxki>S#}UsUgszHC|Uy6BgjMRt1v+HW@*+*M@%ufU@*s_ije0p!f~h-g zD-0R27#I0ULVY60E-R*_fZ0l#%>Zr>JP7W5G9G=EXG+_S^@go4Bbi{Cf<1K!tJU%D zgj)yhn8n~f{=+qw0-8QYM$6%ZARM? zIHwBoS@2O&6fDIaG3p);J?&>#cVC%&94&pTX2K&eM(_U`fBr=P{YbtG)QCViiF)bBuuuy0N7%x%q|P&|U1D9+=zEK&9g_fCG%^@9aGrG;lm)IykejpY5W#7O!zVsRWK3` z73pH#@~;Y{xhl4(5pZZ& z(SsVMC+d>zo5GmGtH>-KS%{3xGsgUE2e;t-B(o_*sA079;bz=v6N9gZZschI^QHNi zJc9wEXG~J&z&4C6gmQ|e#=TR`QW2gak8rdc3>|QKS96p zdIDu&Fkb%v8WC^wsyxe9uJ=$#(jI6R~6)Om^udD#kxu=JX(LLIZ79%PTF@5`#Zkxag%6pKw z;fVmqeCOyDSb{J|4>8d%C;8pjzvB`ILcrclvf2Wx~^)^+pUA-)}}Jre2eVp|KU>RcY5 zZkNX|B}uS?X$t1Bt=eCICc!jC=1jS>pkNlC?ntnm9=dP0TO;)`oAXRcD5kFuY#1|i zdzJeuQd5f}BLu9dkXxC9UB(_ZAPqxG9*~-+YU6?_uO>J`9EYOEYvcfugB8Cu+r|P! zks2!iWSTRI@VVwp^^=D{Ao&LFJ{1zhX#_g*^61rWGRQw2n=lrzll|I9FWjdDpMatb z1MPa79y3rFI(lR?atZvr;3Ehp5Serap#i`B?HDeQIs_UoL~UHy{ktZBT5=*e9M=W{ zKOcfM=5bKg50~pDYH-BK3_!Fa_Y@sstkw9+4#^ zKbEoHJCQ(udKWsh(fFV#?h%Yhj4Fe7yHKACip*RzgoMw>tB((#etgSv`i86m;7NcW zKm+OAsEACf=?$xGFvWB?Ly*-i+zw7N5^x1H?CD@z#G{0qOJi=xm0XM|>!1v)d=0Fkl; zdZ*--7NOwYqN=wF=n8jlps4|1xNRI@r3sR*J`^r-2qvi&Dg}@M>s^M0Ak= z1PL+{4%wT>MiX#>p>VuV8flWOj6-R1!fU=NQcyrrDr|MYTE43OqE`wxdS%qgehVfP ziwJjDa22qu^U>@C>IDzob(BW<;2ucn0EOYJRRuF0*a~Vp8|Ke&>JDvJN0<&-Vg{*q z@d$WWed?9!tIo?A>ZO0ToXxP=Q;1%Q=I-gzq6c@K_`dC4Am%??K5F^}Pd#@@^6qQP zpeUf-^hH;_3p=j*M@x&UT~MAn4OFD0Kts}EbBkiE@ek1yF$~OB)JbM}J(n-KXnM0m6Bsj=Z*}({$tEa6l>6?}Effb-J-M}=S$s*gaOQnn2 z4q;ln-hxz>@g!&u1#=Prd3~%Jja2}wuN5XjPL1R%4bxnlyT!l5i0dia}@#oGRc|H6x4gKF1g&J>^w)vGnmun759R>@q_K5E=j3E{S* zMp!?uuZMpQ<_+BWz|60i7pZ;Z%qZ$2fKJR|Ie9(3x97V!&;!=PVb=)C{&w-<$3G#ui+j`h zPbWBITc=DLV$uW4q*a_E#7YzvQmbRDR(H^xTZo)xId)9`+1%9VNF=Yno1aOJY$>Zt)|o znjwGqIUeG-&edzK zRhuenk*9uGfG>b6kGD5P58sMCpqKcLF@h>!|Ae^stP=Xtl~B)b?0wI6goiNqF5Pt4)HG}DSH*?A`ErHX!^+wu`KnVao3mD5qnGR%Lj+NVUgg2 zH&7q`^5NZ2U%xR~!zA!tr&WM7NYOJCJH9Wf=+GYCRD1GyGN+$0K|2%#4}rc*1-N3K z*cQy$7I95H*Dq>mjqI3DBx(|ROYkU!)QO?=GBLemEWz|?BA9+^lh+%Jmc0TA{_9Je zgappRqE=vq1Dfg({sI>`LO10ju&A-&OPf~Pp)kAYyWJKla@iZ?)j%XgB0>Ku67(fE zmKQXzY9>LflIdDPepVtGRg`4(eNoatKu>pLjI?z(v%>~ffjNR~?BCXPNW#77?l+#^m>Ahv=S-rcu#RU|{p1v#9deW$iYW~1t_cb{PT z6e2&-nCIFjrxY7n22lffqLQ2JYX^QqQG49d_0ZxjYwWf`HD#pibIcXnMbWXU5W zz^~3Pr<)_3Z-f(z&C{l{tIWWuN>!*5JTw(H3RfX)>tcf~yj@S`C<(vC$zB~|hP8S| zic4V+g%rn(nc4MfJ~cyJZfdv|Pcvk4uons0U@p}X+@?lJH^UozR*08X1SyNjhdq{o ziY7ZD8c4?|?xxo(ocCtsdswq_DK_uJpxot?)4k! z9?t~12E0IhcjVSo%St{~dU~%w5V0n7@)n+RmnTT5xaYn#*Vc!oN#o!#V2sz4ogxgSQpq|{y)5%!8dEu0Uh$Vk zT!u*?`{U{B17QP&XRH!TtMGQ1l}kE3?t)hTHO#_+u4H%+{%a|>0qXTMMzQYldJ8jO z)4ztPdo~zeZ5gE7w1wHVUnwWVYDK9ITScZ5^HGGtD(NvG`CagYz{`=(5n)4bX+(CZ za*crR`UvqF+81_kf4q*YID;Zy$ILps1>zDWRdL@iW5U3&fpcXs1v{G3i^v!c=8qyi zn&)49xgWb(Ff(ivH!^DA-%BX@_~ODg=1$K_B+6m;&JJM4aI2FO@gm~5?4rp;&Ngj$4zXS+_ms$0$wJeKYo(v_AP}hzby4y>>QOn6wIu569*8*fQNz zD-pSFFcR3u`vgmyDS`TWIA6S;jD~=^zPQ4@Q(qM!bf*y*(Qs!)RpdP~e|+-DyUDTN z7n6Z{yEe5^yDBT5My|_;CluQKtEUREd@)P}w>j=5F@MZn0d<6tnapBD8!KvT)!y277c@-%_^N9#%D2`Q4 zuy&stTGqCzp4usO2Tc~IO7cAEp=7BMkFABobZVr_ME(Y1{4E02kRhr-H9XMOV9lH- z33?z}v@}(MyJ+GLY&j)#-Bu#bNsN~6<6L1vEG$uD;!GH(rwqkCo%FecVH+_5LXf5a?M>#fN1A%{M2-VGJFE*F=8Gd@N{3fBE(&uIxaVesIcjvuZ3^DqHfIGlG9@6 zg7>NJ3{G#?5}L$Ai*W>M(QD|lB~{P~tGtOd?eI-$Z;hmadTC+O)6ya#hd+v?%@A|l z8S_d=?At9qJG}QcwCx=E5a1(|0SB5|TCg%+)70*Qc;`S(1DP|`14>(cSi391v;3d>;R>#=p(Ag0djkayC4O-7_4WC7Y+U)}t%6Q< zhT(Wr9)3%<$+iuODN25jVJ-(=I$ETxc6#XT!a-8t6%TZ*_e~8`cMGqdAsVrf8!Rgr zrj+^-Lj45OBg{9+lf+i*+4ce_eW64p&TmW?^ifIeMbeBH*>Jaz5G!-bi`lbl20AbB2)=elm0Vxybt1GBVs&{<}LN1hE zdOF4jKYl&0RS9)QE;sbe6*JI+OeCGnXG=P=^)G{4GIDWjOcjzym40A= zR69`^3wkRYWZKw}XV{djaI+hMCy;I@(_uYL6-eJJR5i0mk%CgP1Q*HD+SIW0kSU1o z0-0N-*_#iK>*|PLO4!`4A;2SGd#%F=uFvN;g9D_oI>&I%35ix;OM{%oXvURdjIH9| zlHM*{L*Nu(?_JVpLNm81eW<|n^}zwN)ESeD7~Sa`<~d+gC_1QF1IX^Mn!VX*&WZ-u z7U2u9+zKmf12u?olKc|Hr1LQp19*c;0dbG2E$A!54CV~e`6$c(9Tvw=OR2|U47jBQ z)pB94sT~5XtSb@@zc!o3e9UvPP*YX-;yXm9jRf%pq{#=iN>dkhgU^p<)f+%_et{_J z-R9}-)8|jr;(vPhgIvG$)ycyjSgx5uC}VP>09#eAEiTH-hMrd7*($qQj0WY=5c{j( z4FXC#1}tMGPbe%LfcPg#n#AHuz)Lz(POxdia|Lm+_4dHIZcHev^?@6fl|wyQjw*a!;iS>8-}{JdE^h}UtI{#(DC z3q7xJmQ72QO`IT+5>RiY+!m=r_%}*PglrFtght+}Ff5!2ke(B+3559|$S1YV-weJT z#38}%UGrG3XldfzawPwPRV0Vq$XbFE>BA2*Do?*r-Y_nxS3+g((vrzk0FBoYhHzpF zYNOw5!KrU==Ce6?I;)-`mjM(^MbTmDlhLE0Vv;4O5hGe78Dm<7STMb#{jL_hWF#06L26CfxI_2Sc8NJqW ztDz^Dy4xlP{>6QO$HL zZ-K_+T6jDB8kUE@8LpY*?-lt^BxC>*byq5zdio=^T!X5@BRyiBz<^< zI3c|5?*-@!1$)C})-7CKT@+!54SU42{1MU|fcMB7P#&t|nS=aWE^ltZVyRD>fE=|B z^EsQA%Tcto2-&%bQ@eCTO?WrS9YK^0YyBi>M7qV9&{6EMXhYeqdM9PPx~tPG%F;gH zYXqDE8QXjhrvtDJC6PwvxMNiGd{)*HJ2QYOk?npi1Oea9rW3&nwnc<2rW5K0zg-yX z-c1(~lR8ktv;>CW#^(Ed`OfCe`DD-E^8C(uRK{Rb3NZ(TR>2#Fmy(R4k@*4AVvq%d z0{$*j$)2s(TS#kom!qXS1vfJu%vx1Ta9g;tV13~!u($^=l;aKEWqEaGK&M>r{2|@; zj->r3xy>nU2kfW~&Xt)KkLr=worP61RLEo}9kjB?wh0c(U*#Q2aL_y$q4lrxhQ7{n zn^AX(RD+55gU%K86G~YootNddyrNU-`@#1Mvov*A%IwrW`ocfcWtsC;4@IubRKo*7 zRer&jfzo{NABlmW9Ya?MP@Z*+5POaiF=WaAcH-0|J5Y)~1xi~8$|!Qxqv1ew=0oEdyh%poR&nlo2^>HkQ^8?3{*dPE@gOthD!>6T=YE@D~orRyI zrbaJD2-)42E0-yR*9SyxK9?MezNx#;u z(_e#kh(1$Ni*V-r=6tdAati0;Y!))*A4qh^Rk2Ji}7!jh44>ah~Y}wen)tzHSQT%L*QYF>nJ= zm(#>CZOn@@d%@!RFidtVPiHWjcKo!9im0oO zR9Gmp>zI4kTA_GYMpJPG0q7Xs&Geq}`xWy)wAWh*o9_y`J>*nCeHb3IT?&4>4lxhu zR4_aUjU8v2?N@;^e#BvTts6q!Gf+3UEyWZo85U_;u`p`sRw<-WQF6l*W9LRw+ZSlP z1C++Yqd3=Zt_@lF-4YXVO3b69iW?IRUEF*d>#x$@RV*=I^6hU)Jid|LQ7=_7YZxSL zy4LipJaZCvhNnS76vI8V?I(pRL|#r?3D!L+^CSeIp=-zB+QZ$W{-*70#65BKfa^h# z*ui5+VEWTP05GFS>*ap;Dj^4U!5XF~mAX__G)R37`w$gawM10S-LpmMFyx~n^)mS* zoCNTQJAjj=#-Y+9d=`$;8B{tIzW3=C)9!Qb->Myum;)0y06J9&~u}+PjJ9KJ;#B0icZ)*!f$vmzl*48SZsc3x_#N`V;7?%D#4r#}Be- z4PmPT#$C(pC~q)PNOgY+h|I@A5UzP}w*Ev;#?N<$V(v#Kq@r_Dk_Jv=;dLD7?)s{>j_7Vk#a zIIK~r_J&;Jz{*gEkqdl17fz;@qa174xNwFu7*I51d0kwOXUc?mTCoy; zx&U1T}Lqu_R!cMy|248W%`bMzNy5%Py%K z_E{$5L0!|N$Q}-_-$TEE77ft&QKT|>)!0a7K;hWhr|}W%g)-pl=U5}!y+H9 zjnF3xu^h2ZupU(`v~ulm6%{Hp1SWX^Bn2U9)-7O#J|p8MI4zH;x3An2KM-66o||qr z4y&<2_%;}1KDMWaeTdf^>}5U)rdhQI($1o2PP~VQxy)~FmpFcwwb}NAFifhbIgt_K zvPncfOc#&J4&^?sZ8KI?Ci1meQwdkYhJX;biRgf}Wb3P)6^m&^DJ$qfHm3_X2Sbe+_nEDvHh{ zSpXS*2vnBIl~98K232g}aQiXT7frd^puwZiY~@C4K$@6B3>bP5P*;egdzuQ3-GSKj zsbcd`3`7n4M9icNcAO%F-)M?b9eZ;zg*zl#x>2vSWawTKPJlE<8@E!GMx8UC8esk? z_XYJnKEZN#$9?f^&w`L0T)qh)NIDA(9!30beYq6=mk?}^y8v290Mb!0Evlbj-aHo^ zWLeEXjY7mqk*kt%P)|*QA|vWb zR$X16FYng2JIV`s-fnk4o5M-~zw73D@Rtwo;Q)I7FgW_$-|D`C|I0eCB7OV5J$M1Z!4}5S2OAkc#?9QQakP@yIAH{n2T= z2T-pvO^_mx>b0wqQca)wdgxYi5=NmEQS^nMl2DOg`o-abEKR9hJ47T;mDXXC&Qg>$ zLpbqXs3a-&%64ZFd&PaFqF`I-FZE|spfr9)R+*W`A-|)j1vE_{cZsOAexMi^=MdO%O|YY@zx4 zjW@g3)*JeIDKf}D&A!iKv4F=F$dnjatzUJ{mwxrxS(Zg;K&Y>`q7X8{G&G5`iswdP z7GfZIARUbj2>KK=XYe0l=yXP`d#Z^NpgvwdNe3GpzF}S5)wghB`{|-y^FX48!XC_& zt&N*t8UbxE+czjV8R{dM+k_CWz2xHA1UUo$Eieh!nEqNR5jyCEk;et2uEZGieVaTE`d z+|)6Wo3*_zbQ61BwDdYi4nR)Jq=o^5LPcuXj6_Vi7v@P#-Okm{fg;WVQ+kWrk4pPH zaTjbDI535^h$bXc`6B5}hdQ|gf$~>{kYJjO(97f?95vO0dI^?yg_*)}Yzi)cZ(Hf$ zI^v2ZV2`&7bG#L5vwI>BkS6653hVJhJTw~Vs-}i@{y{fAS{k@+i&qCA^>_*D4rz(U z$OB-kM+BbO1_@@(Pi0*+%EB1z4u6B_k+e4Zfww%&%s$f!009JHG$*GP zl%fTduN+FI_xFn`1k_Iqk>wxJv1MqIgYsIr4cEiKqNNEf1d3ssQc}ZW(#}xd{I%IO z@IA<(LA>aVES0%g1Q6yzM1fezOPz%6MbRmb+7P`;c+`kwz{VPZ?%l4o*}yvdEEGqg zF8n7*^tb8fzHze)C?e_1>J1dj?j=o!WTh3U=^+0UL~@A^mRSN{@_8x4o!aV?0&#f? z(G~^i@i7CMp+(~sV>tcsC$we^OdHP}YEgzhT6!Sibs3F6}55^CkiVtn|npaNK_yEl^5r1) z``54kMMBQkC=vSK2Ye7Ju?@Tw8~S3Qco!b>&AvOo9-x9LguQg*0eFH$rK1Q4NOsvu zQ0jn7FE%nJg-PbP28My;$*^FXmuc@U2j(o5P|daxpQ08(Pa0YQ)jeRqFbcn zK9-!GuV?K5I0z(fDO&`SmMh^QCod)*StSMJ+uzO~KRvyD{PDr+vgU4hXp*6jnfL$6 zoTA5X$3vX?{LeiR5rfqeNB{H_kD4bQ{nJl8Zk~AjPe1XbdE&`G{lwGeiKqYc6JIt@ zeEI+SL}+Q|Tm2uyp7g~3G3-fC{2#-f^u#{w;YRf>bV5oMx|{e7H3joHz;g9ZRmtV! z{^2UQ>89tZX>pqppB6N7pzUnSc2&_vhBli zN2@>UVU|{f7N#4-TfO2;ze1IPx&dK^;`vwits=t1YozSid8Hkv5oCiBQaTQ@r|+3! zT4g5OS(doh7+#NM{Z$0n|4r*yF(H1h(v|y)=#Nv zu9k9Nztzu!tYk8EG0}|YVO@`w1`h!YDspz=br7@7mRI?5O#h$HCW?yTrw;-Rxw~v1s^5g-@gBNNQ(MERl z{O0v=x=XdcAlP5i{QPF-x+je@tUa?)Ss$G{cSk=BKb$HA&7d$}!XpwN60VyJ&C!wpFR4)INvlC@t|S)lWDK0T%aVx4D@IS)(VVL5E$lC9I6?R4X4Hn~ za+f)qpUo7d!HjXn!?{j~9^?_`i&`{LV1!Z9Jdw_VFpHLHYl@_IS_zC$1p45BVJO5E zKl)kbm^cQSa=lO7`V9h?i{E;oqb&VFt{j_@O`0%}v_2oww$=XgBOPuZ?L{E2@y+dm z6;&hzcDw^!2j2DD2s$t~Bdvi@NG>(I+J(3DY3|UTPsWV*T2Jqg=;Ay4Fd`^>`)D+^ zx-&8aqQNGqxT~>cj>fUA2nnRAc0-bRp-Nr$Q-fh(6Fy;zrM+HB2R}cQ$)LWt+(gnu z4rS>HkkBJ5QN#=Ih1eo)U_{n=KxxItx4~+n(7;^yjTg(hZwM(OR#cRSl?2K%0K+kX$AeaQt6}P{VpkwT zJhK?w>Y8N7D2_S$XJ+mmd1az#X#o^Ej&PK(e*UUc#}bIud-!SLY!I3Aej1DB%bl}T zO=}5dAbsn*TQkboZw-R;rh-EkuY<~wkm^%C$+R%HU_+<)%Oj@c#+g(dhFJs9lXASM z5Le~qd_pTL!%uEhxdY-nlOAB=IAEu5e@nOd=o_;#={J%?b>t0hl(7XysY=9f1Px;5 zN22t`3YcBYD=9#>11?j-%ec%|E@5cF_&vz!08RcD8P7V?d$mOL;T*Q)tNG>CpuBv} zW1l=8)qFG7y1C=QEW~tVXJZHhM9`!IERdPzypGIL zGCxctNo^ard<;ad5FIJJsz;o)O>;?IY&|lt^&81~TKIT^i9(MN;7Rq}b;I zxJ9JhR)=vM{sw-wbrJ9b?PU{)=gI8cuy)L}fci=?8*FNon~eUBGBqquidi+y>sly| zA|eTvyE_|jCLb+*dh(Vq{xHdY>DrTbEf4%VTlz+5M@} z(pX3nzMHI%@dr2}+kbAV2gO!6QsPwZD@4W?Xv=`| zSUL~6VC}VpzlZs^+fLTt7m?{`VyWLN$GH5dg+#?#FvQ>6otzs(g610Jtg zS5z&P*1B5E#y_0LevflaT!d1xFr^^`G+CH8en=83FK7kD!^$&*3pB4``P-dRR2zI` zZX<1^88-Ns+pL|Q7HSAVza=OF>IoITth|Gl<0H@UqFx5+Z-g^dOn+u4Am8nLrhpFn zsn3F$NKa6u)#WYDDMRAmTA?ESg?Wl9J;+_hy^*k9RqVm_Gp{|@ULWnbezfQM@t*52 z?aFASu;+_ODzmROOibQf{TorlF`JxQx%{?U=^sN@COc}-eYPsN86 z+7*RglNYWCem*hYKF!kpNn&8ymmYNC5oF+TB*gtCc+ZL|y_-E{dc6>D< zJ$F!>9A84z)#l}8&%DHw={_EfYj-l*LUeNW&Hd_nUWD^AYF{kB4=~h1n zj-uA6MSMs>UB}ik!{7FC%d6oK(l9IdmBU`aV#m-AGMAAl&~* ziVL69&2ZrXdo;a)5^td;#N_(yHc)*JKOc!%2pa`rgeGe-H6$Ix1lHfRnsD&$`URJ% zcHclam7SAkqJfvrXVBCbZI}zm^S1@|gM~%V4M*8(PbR0L21~X)$Kz=;9p!6@J z+N#;lg*B@#2TQJWeY@DgUb#RqPf4*wTkB9n56_8~C!{7sOMA3Psu}zlm>Cn|Vul-; zN`%_{u)!nyHMI`Rao=nwjEX+)F@3|7iEOo{fwe}qyJ;$sy~H^x7s)n*2cNc4Gz~B> z_YAAOo-MDPH;1A{x6gEShwKL4nOfRYm0hEi;Tm9i5o`%$rX~j#LZk+kVCv40zO{$+ zA$ZU1v3A1D$uX*goN%qYN{H$DWIZ|{H~qkaAZT!#du0T#x;gmj_%}ztIs6LS|MB7B zr`@M_|MjqY$`q@~yRB+2k&gBy=jLzpYCG+m=o=F(ceg^hNW0W%bx;y1vf|4x$`h#3 z(9D~{L6SJ5CeYe+J7B#k4SU3N9en_Q4fb5uixP}gHg|^w1sDCsCV4sLMiHNbJr&{z zC=g(UZY%$Gt+SLDUz+m`tWK z#sWh6CsIu={R9jKAcf!6h#Amhu>}R`HM%qq^xdHb=(dh1IZ`nG#~-OI~{5 zKsuh!B(w?Svp8t^3#aqdXDuTa3i}&T;M&Hir8O4wr^qqixMG!7z@y7s+pSh0!8B@J z^5YwO?Su(de56Y#I;Ic5FG1P)j~%5s_&w}JC3A%sW1P;bjJw<(Ex}0^=vDs?Cj`Pa zRX5dxlO}B1%(nkvEo8eRY9X5o*~;-iGyH-h*{B!ng;+UvS$0Yd4@R&AYg@Ua<5+t) zoFKLuViVVJiW2YmMdYXqqBpm44HlZ{QV!BOU5y=FQ{zjgPw1z#( z*C_=iC|`X3^e+#OPn!>)KmPcDjbNvx>wH_65OIx;P*)(0nwSBiKmMS~*$P9rB~E*Q z4J_NRTM8Q+QJdh3h)J}4q_GezG~Q4nDrF1 zh!{_*!}o}-2lulIO{rn2tT9BHMT!xUssj^YzB7VRof)EP*}OwV>cr`yko{5RwQE3H zZTOg^vO)f4?I^ll83&SQs}F2gH}shLDAyTH&572`EX}<_PJlEBO)`Y&o$^hr)|O_v zEW1URgmEGmwxVW<}?UIC(xw?y9BPv80!^&{rq=pbW{DMZVi!`T4iOX@eu%}Dv zX}AHliDx3#^^Gk%rT*ILgbDqX=_0UQVF$2idJo)2cn&QD!PqdZK;Lxh?O;<}MKu#C z$mb5Eh{7+Xx&;~xR)xRhj|i|$zrh!aK4DAbMD_E>&2A$YOIuoS{Z@QR`KHs@1QA6hq4BDNMgYO+^7UNyPOf zC`rKuDR4k6wK5)k`VBcBk~L&2swG>TKA!cPayyvN8he8>A{4kqRdWgELKll9xr63c zf;-w`LuOzmlg9j~paRCe@qLL&0h5#KMTa|SYFwf3WsM1@^~l4Ut~T=pHaH7h3|HSC z4Ht{o+HTo`dKh&*LiwigBZ{ASu@E@Ej%2puF`MR9aCYx5hMsZ3q2Q;>dzd! z?*ex8L#RJI5%LEU4Dr_FV_Ge7h!pMVA$}SY?85cIij?vreM(2C*(~T`g`7zlrM)1; zs|*Gyprb8KPiunWJMj(h=&sx>Tkp^qZt0TsDiKnHo%)z}-d#W5&`?MRn9z+wwT_jm z5)DC31W=AAjdr1o(GnHd_xa?WWC1ZGeur_>Qx^a%C6T zHKxXay@h>M4#*cOG9^Tj#K?u04&D-+h*p~f%vM&L1bl7W1>iBB(b98-1CgAbLe_j=H9*ZGU#xh{3F?Ja8d?QW zU(k>rHrpuzMNIBJd_!@Uv$>u_9OpTS90XDFWtdlLs2(Gnka=wT<`zMHuzb0{h#VE% ze#N9pmN@CBRlV@ihrTHoG?12DC{VM&QK*M;Re6?WHx%K!AGj{Hztc66_iwMi*o}di zU+e@s?GFm!bPdM~NcDfYPlj*kx{{1vKcup8(KvT_PF1tgU=`-8fs|-hhpbc z;MJbY9Ty%|6ZU${;<$KuC=kQramee`fl~mE)sz8mL{3^a2uF!(z17C4i_oK-0vgF- zQGf7iGapDVqD6mmuL}?!gQ*}u`DRczH8X~G#vc0vA3TK1bjM0TH|!}`wjO2*I$&Bw z?H`3ogAGBXL!CI*&rrDZ;5nd1M`U&}49QEr3{L)Qn4ydd=&ZPuk8@W`k4w4)PO@^x zSLr?{JN6{8I`knQf4i?lr4_dnf>m8a2WWf0U>?+f6O>wc{yodg%fUt~!K2(^Ux06h z<-Hyy!dzHL&Gf)onAdrwUB3j=1C2Di?B6=13ni%7J17M+s_0U}&6PlUxUYv->N?yX z5N7d%Ao9{r717H>#A5i=g)9h6nls9`e&OtM4?PcBE;|O6X68kE(sPqrMVK8>jorhG zAty$lF%uvL|B6fuk1AH^ns1m8_IgcP8R%2ac`*<4o+`2Z9VDacz@X)I8yd#ll0bTm zJ}H$SbH0$P*)m=r9nU5;_E;)<>o`>cnDKrgp99oiH86q?~+b&U48;gYh z7-$HSRTVx99KwQm_$<^w3UT^&Be{`g7A>t$7V@@m_*X4ozt(KN-cFMyktnUNW|0bG zG^nbdY-Sr|5>JbSS0T_j_?6<02Xzw>2l9ApJ0VWqJ>JpO2$L;Go@8=xL3DpJ-kG#m3ETcCjfT{vXf`V5~Q^3&fzvmd1gMqLV#K^k8YX%Q-o z-*&7eAV5Wu3ffG@2xtWQz@B-Fqz|`|d!DCBR=wLfKt2t8QYCHr7nw;7&gUFILyZ3R zw=mE4N}F0$i(hkT!W)kJ+)R*60JjQ8~@lqc*fH|7W_@kmqQ6*jEdq5hXlFWF^l zGZ%Z*xXL65N^=PiOt>sOoG1tl$W)RZzv$&pD{ye#|P?%E*WlRPX{%c5lcEcX+C zOc_9w=XyIoUq~|;6{^9$E}A<#Xzb`@HyPxgf{0Ff!N_*)YnT>)x8ucUkFx9U0OAqu zEs$bFT>oR_Tx3 zzNgtt3WVutgUNX&*jqgQL3#A$3vGK|QuNKHq3cXGP8 zUZe_ug)_*M{~@b?1A7LJ5~_|)XWS;!{mbLjmH*Guy-1APIuR(M&n)EBt62&SOA;W} zY!>tY+r@Mlczbfq=3)m)o5?^;zD*U%<5MG7@N98I2k2NQnhy@h;%e#aBClguK#jBH4*#Frk&mH`Q|iM12d&uwrF3y$FOQoh2B(e7a-k@oSW zeO)LFus8|*z|J)bZq|ZA0U?@?JPpN-@0K4;@hqf(Vb^PuK?Oc=(d@{Iy~IR3DS65( z4pq?-p|~kQI31^IY5olnDpA2igXtx5*ZtT;$O~R9Y_DA5=PXWfuC;y}N6e>u@Z~ZZHy! zOEm-BE~Eqk(lv0We!G1KhNlN7zzzXMdS~5UER&bXk4H!^gO7!vQF`TN}Qh*_j4P+^Z3wo-Vz}?JT19Y@>@wfP- za#LXPVB0HzBAyK3(5Gpu@#CB*lRuCi%2=c1jr41<=em$Jiw&Fm@0d#z8`PfbHGp|M z5;yO@jo%B`EL&XwW)%-OueqtWO8{l+AO5fMm-g0Bhi7h6D#g!q3j+dDZIe_ni01qC zY;mo984bNl0!pe|WjbGK=Fw1&oLr1wvua9>|9W!?P8-H6dsJfN>gtEx`R#UjGre3w z24jAziwp>Ce)^iuPnMudYa@=G`L$}jMOET`of2w_UE$ycXsfl++75G=r=@^iF&=L6 zEEnb*^8jJ1wq&Bek0UV_m4}G*Z|5$s*w0z?b2?US==P9l#qXlhG&G2Cf4PZo=qBFO z)LP1@U;#2-r_LLKifFsP#=~c5VFPOjvd!R^1O8EvsQo~MXbFaF;iXf){=dkl^WHt3 zoIbmQ?+ee0BU7L4EuU|^eDKWMt>fP_fbx-l*BEeS%(YHAa3$dshZX}VKuDbwsc5rB zN)v%|Q%g`_RWASKPoSC!wvuyGheBX*8*I&dU}PDd?;zU|oyt@wecLTpwcL2ht7iuE zxdI|jz&$US8%dU`@V-P}#Z_1F=N4)0=OX}vcRX5|hi~@FL|vdsMPB7ZK?()S54f(>CyBS`zVA1;BW+1x>Ep5dr_kC_6>Lvb{*UnC=GER|X9aPIW%&4yNQG zsG|oHR1f3!H(_u(lQa?yVTh*PkHpbF!;7e6W_6`vhWTMO(8hDOm-75hHIhbF_RFy5&`o_PRkN>|El~^I)@fu0Y^W+1*1$*jnQhUSml} z1r8Gyf9j<<_btZ6gHJRoo@P}QsZ88p5dGrU%p)Kd$uLwV+iOG)I{ zjl?Zf^QQgk6etOF=G!nD$z25^N{&HO2X-ypbnQ8jeGsF!=2t0>9@87m@ILYgzi8=f*^YglOhP+1H zT=^A@NU2(BG}|{cp~2)gJD)G6VZP+4PGqnN&pEkFC`%Y%O+BX4pkCG*lv!rLY#|7f z<>tzTY|(9R$3boI{Oy}*Dkh5G-DlU27Q9X({{7#c9)A4r8EN9&9n|PUlz=btdgW6- zqQN2QPRiHM3Rdi77b5p{6LwY)A5|e04M^R=SzrRVc=vRJLt=3#GBMt-Vdr897gL%| z7Ex%=Pi;a#WcAyHB6qaxO{Tu?i+e85Qhw z(-+-*c)Wi5=}&Ke|NdbPJoF+?NbqjcWQvVj1X%|9*^B!76f>s|RxeXi;*K5Y90epU z>Qa=_q;`(ql`E(yVoDoXbir4ft0+Pp+!<~3Ej-o2xF`z@#0W=Y6hUM3lRctgh-=SWZwt z@aStCp;|Ts^3*p)82)&OPyEMi(>yq7&qFCY{t4d#4wqTs=@(NijVz)|zI0XXaX5 zLfbRv0eqnYk!iN#A)cOS-dO1EP025H zejk|M{P`^f*PxZ@M1e>fY%iDQWK$zQ$2DP4CIOPy4&OJS1cMHEKw^M3me5 z8j0MI;Ns`cM}mvlg(QB#4WfmLhVDf{EtcB9y%_@;-#$HkeE0j$PY=7@!NI48AD`ZR zcs%&(H|w{5o_&7&@vE<4>_Ie|)wDQ*jmc^nG?$2JTu+|(hl3?zR{?9_tbiJburCnK zoAvLkcuKuP0kKgS3wtst+{4oYoX}EH89e_=?b;@rmNj+I1oe_%L`hrWU*j~va0~9 zov1IhApZ7+6-e(gu5@2iudU1yU9j%bbF9u?Z;(-da%X2ah1viU1Z1Dm7gW%|7DOX9 zV~8ci-$MVVOAhjO&s9?kVeewiqSj|cn2*sXozFMSvxh; z8+mCw87ZW8QvR;Bc8ml5I#*GFihglBWCL%Je`+!XHsIaR-hrL?4iI<}W+Oet)U}|> z5_4!uh>y(zBgqRuH_|EX^0>MgUc8_LGJ=V|TZbF!yHxB^m(kKxXu@$AA?mq|kJCxE zg^k;MX98+wNiXORWXcUZBi%zOdOFyR$UufvsDq11n(@ z9sBN4vyjCyA>6waq5|mMS?UC`P%SuO_cI%92dG;>`(~R7Bh32!Up-Jm1Gjd1^gy&U zVi63p0QXlyPcRKZ-6O)>L;fVB(b`lT%@h{0>XP9dPLG+cp`g>yo5P#Ts?G{bU0_MZ zdkJR*H2N%YSs@5!-+i$OJ1`P3F=v{(I(9QvY!O&V%`m0?ivsJR1MkMsZ;lT~XQQLz)6=7~lhN7P>BGMroz0@Qtkb*XGbqDG6HJd4TDuJ5 z#4=h!T8jcGjgc;orZ_oIEOF08D5o=*J$kbN6HG%8jzrFO+rI(kF?&kjKp)_ZysurM z_Ce|V`9f|$nAi4p9pb7a4ZoD1;J(Tf7NtNfH@<;#N45=uR5Svg1y$4w^?^xF<6ee% zSkmhj=E#Rik)V=0Nit<}^u@=Aw|^Q*>Mir5FHn5rwMq9g&%ukj`W^|afoL-51eo6- z!e(a5Rc@y~jJU9J_mL@xE5m$ABE5W>epnpq6Z7HLgo8nEqS|Ix!ti2<(IM5LIRKC9>u4+rP|IA*zM#{a~<2gVP!~iAGn}?ypfX5dV>g;-SXyg zi6CxxSH9CBI--itcX5^uAwC2PtgXjlM?M264+WN z`bXZy@`6yjs-{Hg;Et9k6EdK+VWu+epT1e~BSvR0-hX)fBVrprL!Gx#xG~I$o(wyh z8l(9Ac`XU1Pfa`-mP+#E3&amI(ApXDnbhPgqQL?S3R01e4p7gv6>?e?8933@6tKs3 z4!L&v2Ku)UGgyf(Z{MuH*V?9*ZYzv0X7k0zS4naCs``gGzys|%@rVsDkK9HI)Yf-I zOApM_3CYh;k!TEs{{GDl3@X z1TSt$^HOzWG6!i%I%^IyUJ4;}+jM^)yM4R7p2MU`>nhJ21G#I?X@?s7wC|kuD@wV3 zPP_W$bJ`J_hUewe)*%s-_TZTItLB*Y`o`X4+8xtK)0~BylT#v{Q*xf#Io;lx4sHp7 zS^=ZIt=+u>X(sY=G3m1wg=<(l?~t{j_J9PZOx^Ch7kzX)zlcXmBF4djMx!B=lGxz~ z_7u)z+g_GJp$IpcN(N1voaFq*Ok;ZkXL~zHZV1&LMhB?)%{*|6H68RdSxDo^Q9wCI z+?Vlbv>8<4X<LbRhqUy<%XMvx9n zc6`cHZe5?ffBWfY8T2O~{`x5D4CoX`3!C-5hHE^?G#-Ll;<$?ezb`kn()wgqvV4{# zZ_(|t!WJ|g^6=L`_E-C|`L?xO%S+$2Ju+Sh1^BL5Mm*`zPT{(6p%f-inQ8ENdSM@m zxZ2-}7r}W^HCk36J)$_82?t5qiIE;qO!H=WEK>`opnyXt`;D&^06ih*Sk0Jyw6ed0 zRKM_S6zfMm+WX=fU`S!Mg;0>9C8RA_c5;~cl(}uTuZLz%g|5Z*GGdv0gTI%%i%keJ zpqyyDAi6=w(IH-NE*8zj^v>#Ss@%l*$jb&$6oqmnW-u9NmnRrJxCXyIY8>aLmpR4- zx-m!eW9E{*&vwg|d7tf;s~11p?My+?o6R|nS6yEYzri1jW4C+w_37d96MSe;Ck}9U z!Q&IuqbC5sXTQNe?98A!{tKZ77vShV_zK}0PlNw`_|4#d5ApxeSMV8r^`9TVqSA&N z=|cQ!j+Wl?&EPA8=ote&1)Y#M<)tP3u-#S(lQ58AX@B8ZwB`DT-FAumC;ozf6=Lq! zvHt)W;s07LkVouE6gt0w!izH2#bJ0bR>oBsCDAqNEw|UB%yWA^7PGw`b(h=gv8wHL zo{U#YTT&bg0l0=~GDP3Qq*L0s*JqQSa#_pfh5Hn&q}+ww{$u-4#o(x3)5Wt}2S-b9$;XjkEUry#(cEW!cAAS8+nxnyw5!VR|p>5oxlI%2i2xy z3#^@&7MDx9iNF;$S5AP*Nf4#gD9iZ}T z%~^W6xN#6UXNe->*25i~&Q4?o_cRrYRiLy(ebCl7gEV3*rBc~*3O>@Y^~Cu(=C$zi zb5Ls)?BCWFvgofAS7F`x)ePm4Yup3xjG$wE$pbJDxVXf#I~2%cAcEn6mp-Tiain8E z*UzGI+y)1~W+j@1p@VNT^INU~x&?`Ln_PX-WCh@wa@&yToh1|+syy@Cqe@UrETT&I zQ}}9x$)nYrAVusN#V;wdjnTYVE=Um#@I{BzLAI>2Dvi|fYB2%{jEM+V$+Mn(NRtXs z+`KbKhiAtA%@XUh8}f@uRitq&av%h+NFL*5ZABILjgSyTb1?m~ZlVufySpZ$4TirN zzC1a8b$oPkcs3f1&R(88e2Y+kk`o|$i&}@vU6~2ASy*IL+Oi@4*QBrl30HmdAj5!@ z)w{6>bG(MkW#zUyXx%{U`;^mZxtu4OInjJK%lMqqtW+$i8x9~gokt9bTvp^omI?{S zn%&B86^5Ih=~*`3(9%Ppg@d(Upll!tqvK>)&dK1|j0k2eS=9SpdH}@d$%U#)nOqF* z1-NoOe%+}ZLP@xU`dp^`hbC$82vJ`+h=VVI5P&Le`4D+EGEz&_h*}iiZO<>m*rxg1 z2i5&T1QT+4nLvOv)?#_g8Ao?bDO}{M?ZZtP^%!+Y>~WNsA4}+`uQwpQR^+fKMNsIt z6-b@USmaJGM9*2fbbB3^>Ksd%;66LIm$;=!Sn*VZGL_Lh9iU#v@XFPCam7Cw8`*b; z5W^X39mmf+B_6JdxZ0jwnSpwNBv(|moc5VWw(xvP{e!kjvgL>W$(^h}pJ5jIv_cSGSOC#%M~y^l(5%)l3;pJitK~4ZoFNtH;!GM z>&ic4ohU1a286}ncd*w(2A=J<15iaILGN`lbYQetio$KkM-KE?2?G8L2FeV!KqQpf z_i`Bf`&5BlkN#ZnKZ=}S!aDe5Sl8rA};CacDZn>m*w<3z%<}(I<)P0Kuj;%daQ+Wx5d>4Sy<`!bo)XYNp^2u{OR_W^}`># zmSP8(mQWU_GBu&Rq6sPto~rejwTbN;T~IGAeSaR=(EYneGSk79DZy-5S>Qc{%_CPV zhV7hQceix9F~u(>lrf_zUf-Hb84%DMn40USF{yy}G&Kn+z@-{qaaM@jP$R>1Q^JG` z^nhnu6>PTg0DZ(aOYjoK!8W;7IAi|9$A_oSAK@B;b3#la3V5AV(OwNm59aD4 zn)U~`mbW)3 z;*VH0i&V2+)m+S*%d8F6!S#7+Xya=m7h0&#oT|+3WyBnqmzJ$U0!+1Xx4fGhqm?lC zy9qeScghfOl9){u#OwmD!Bi{Yw1IMi#ci|T+iG*&iE3$~dXy-J**_zyIa(SXh`qS7 z`{uc@Ft_PaqzLro02KEW83R^y2779HKTlGgZ!87E21r9IJhY>`lg43tB+;BHRM+Wv zGyTpBAH-9H;HBT@8(~i;Js@*t=A>E3peuA`JQ7D*#Uq)Kowq0;$rbveWQu_b=B5}rMb^9T zrb~IJimxGB21H}w2AHl;OE&U{>aXvB{R0>>KRv&g)21P2IbDsQCgTw7$iyx$Xkjw) zLF`e3`(f~Zsr-*V8&y;Yz~$m4udx&$+1HCCd~2tv%&_TvT>$79NgBUW1_;&~tRg&9 z%%?UuJ#7%9ElwyJ8m#6i6xdhQ`63NS6H?%O8J}NVRyQ#U!~IJ0EU)_nwYyE_-yuVECwZVWBv|>vz_~btTt^T{8YH@WS%HiAIoiVcM$pOJJBl z`WVvJ*@h~9G*g1IXNRJ&50K>ViA<0awl_Ax+_SE)RZ#_k9D#LL zc$G{weW&NinHn{i=p4Vosiq4|D>bXs&UpMi=9Wh}RxTgCE+ASbt^>5_L+oSBK+=}O z_}+pYQE{#;0!yu0%damzNNo}PlZx4q$Kjb?1$!|N#%V@T!y1os??!pj#^H8ZoP>-J zN+FBq`=m*7UR1+0z9fdO->_;|jj9dMKd3%sBXT%!c%w}pwFAA#D+~7Kqa>J~$?fgI z1w$x2byKq;#>P5ebNWwYYlgV)P4y5d!Is1JL`Y4w<0_C|sPRQnf+V7qvy_3lL6V6) zN9VKMa+2(^!_ntjq^wI7RsxM4h z($_;Hgmedc^v`b}A0OTyK}4st=glHBx9a67x||HU6zz3*7|@JI-55b7g9C9gel)#7 zTBo0s2056dlJFp4r~m~L*6nKe;8CYI7sjUFiF>V9Y!4!K03%4kX3PO*KGq z&<32V4@c&5i2cD88tdNT+~WeYgZXw{WD^I`e>fHks%wV6{@h4~=SkAx4_J(a-3Rw| zkC8iL-LT$Ob4|4voIw~)><)B=IuW|5ng|Go>JGv!p^2R$NhBjW>m2Za80>PWNml2k zA~8NOUBgsAeY%^QLgmnQ#HJ4|{$`BGN+S(a_|bw#83o0)>6vU05`K+Lx&{Qz9QAT@ zyY3%7c*guC?p_wZX%uVBb)m_8FVjJ+Z?&*;>$$GAMy{hSQcgXjx%37(6A zh{y_fKEGO_aQn^WA-J6mzqqU<^2f$bzqd7u${4jiX-(bA?&hXVX8Vqu5= zpIHW~9vZ2WJw|%jWK%5Gi`?$uUWH1+rt7X@GmWUHM0Y>GOaM&0ss#HIEv4qHB`mp1 z={EcVQx<3I<}7`SAEPD2mW`qnM20^9g7^hL=WWf6jyLMcD3rjvc2#L;+E6`s3?RjuumFr+*rLoPROy;5x)Q}6bm10~qL>JJfaOaX0%s2zWJ+t`@;ow=)9nl) zhWiv|9-Oh*t)A$i25C?TtSa*Nlp;qMqC(b&_B@Y9BCM{Y!6Xqs)-sk>J+#HlPF3zu zelOFwE8&zkn4aRuiW=0)Kh-%<`Y@6#Rn~B2xYNNhvbPKD-0I^b;Tn?CDKe|=VWGG{ zg&NF`*%}Q^U1#1I=;DSzun4x!SQ$^+>(Ps5oHC`RkVEbnmWMwpRExy?56&jQTl(9% zahp?-Br2F@_u%eH?z_|k0@{o}1u+on;KmHC_$C1 zkuC43?hZ0BqpTTZ$fCxXldeR$Xoqff(q!yZqGSJ|MrNe}ErfADK%klst(JhEuBCnD zRUg9K;DG?9&Cz{~GZ+JLrpxQ?*dA3~(v#GaoDUq&N9zgwaIQD5^%ED8EB7YPk}w>T za?^XKcfem#FZ>~^D#k{IvLA@4or<;wkVz;~m*<|zOy|f6RM|RE^aJxu*X$xx z@hy2xuCBulrOMbb{D zvIz-zG%(JYH2)w=NVx1X#w^@So6Um>%;seJy!WR+^{|_9^oW>2%u|0oBo_a|)t4q9 zt|zJOi%$$Xf--1jYI5IVJ~~6N0<7VY-vA9pblP$z=|38JBozho_ivRmsyeA8MTGDu z7XYS8*MXpm&@hocU5Y7}m;+9rDf!qXJxTNFg*tJ-)DzbL=7}r(Ba1L7<8-=b-#m^o zYU|WR-Imfalulz@*SlH=qeo07b+Zc#l}Xc9*7Ij|4<-Ti7AzP8io0n*6I6xqLs(pZ z??RuH@ysr1YJESBHyflo!ka)T8MdbJdA6-i3YB0Q9aa~*f5mke79H3><_M>pQVIZ# zPIQWZly0S-qAPS^0XGpoZEE-V>@_dw3pCV78R&U@`3ZFY9Ir2S%V#(q%ZBclpW|V<*G--x#h*FzBoa_u&dcC3b0@|mSe_klTjV?} zKP4_hb5YF=v=`>e9@;LkLtP&6n!C~(%dSX^oM2ux~ z_3<)pqCWv~XmV8=3_$96UOF-e2{PpTxiQCU>>0 zZ)?-bZpQB+%L5nfhpaWduOM5Dk>7+SqDpcw>JOPoAsvOHv{;IwkFY>{H;OsnR-yp6 zhn&8is?BN`>SkygNe!YU+|$}1>42H7MrO65*-AIsIWX`qj8;Zk*MagvF>2i!APrV; znZk|%)Pa|O^rz<#|0~d>=%hQr?SQ)0x}9__bUVZhX7h(sK)F7A`G9L}u6S<4U2^DdK019GrZt-xPe!T(G zhz&QgG!}mEWY?v;bYB>BHq78h(_@bzorBBDy`urr^R)$0%Bj%^jY(n_Rkw)9YD(8_cp5%bzRnq2mdv6p9EJ$I zgWLuK!DKzZDXU<013;3_udc`ZvNBty_{3q!V6+wPMMYY3G`5>+g*#Ifn(r8pnGKDS zX-ZJ50(1?K)r2zqb<+?-L{{tB_H1J$f{FpIEEP3MC{#A|I#ce_ zwfhnp?n))m0BN4d4anE|kY0{o&OqDfre_FU!|^B^5#YeV3O?AnB^j%a;sniWn>-|f zu;>#LD!9pB=>1ryyVDGcAG*3R>zE%1bd_uFHRqLh_mctXTgVqRyxYHbR!rDT(`T1Jm3h(0bC_55pFujisK6 zUgingKwDGS3V2X%wDgf?_{7?wqQ{n3ileNCl^-dU-D%fHIz*i*D9aU}eE2kMi}~su zQkD2sd>O9`)x1#8&u&*>y{1O%TuD2T35<}R%TtB^k7ebx%IRP(+a5O3M&hrj;kro``OAK;NbyoagCM+ zBl@Y3id8#NW&^0l^VkjZ9KHl88=Q5FZSUHF(&}39U&izT=(dp}sf9bexCvlD-lMqD z&oxk!GkYQ7P(E-=GMZDU4@327uYJjJLc2#s!5qH)Y;P$+IT5G?dhPt|)XkU(H=1}u zGiubGkvcFaQ3+nk?k%9^)Yxhs%!j-8_7AT24w3-x4gf}4yrGu~18m}&KJ67quc2A& z29asI?b(8ys$o-MGpm5QC7V#2xK~2d721`_0G^ZwZ{FU%d;Rs_UcUPbw||&}k{N;7 zF?sFxJ$32*+rRZVgonMq{H3^}hiUL7hg}ep8m8{<&deeOXrpf+V`x5X=AxykBb9*U zl+*92eEjJB%Xc3-Vps&MBzk+3iPB&oPA0>dYJ%sK+D}=VhrK{ z?n%s9^wA`lFgHVjjLG@-tU}8MNZoy-OQ;ngfLLo7lWIP6cG1mFAH$K?tlI1@g%&w^ z_#o88tO>0K0S3>)XYj-6Oc*S4OvfFn5oVg0Y!{AnB}83Gi$`-- z)P^ktHmxaKdR*Ors0C_D!ReeqF*86_J{r_tBypdQ^g{>)jZSR)JVXqZC(n+l3d396 z66WZ5d~pOxdNVp(OlyuQF6vyCYeIB~PZ8Q4pN8c`@VUvR1>p|;g28MW=+$ffACs*_ zGF&z}+sVB4Q*%0Nn4ZKLMta@#)AyA(63ngit$K=if^U+UT8$gUgE{5ZuC5?@EDT83 z$kDkwUoRn4@>$gtv3h0I0w{Vx<*KR$(~@v!@w`f3UR>7Ul%{IDC(4ggESN@V&a8;v zxGS7llSnD2773U9B^`EZnb4^o*nYt-5^)Bh4YMPzRw9OLJImA3GZWjW;MI)D1FP2D z)7^da2^{ToHN<`Z;!_63Rj0yQZI7(>$m?j?WQA=TE>vLK#{(F;gP0_>STcZ@o%Cid zI_1gHdeL-`uR!Wtk(hW%d9nog;rR1*u%JVI5{e0kaos@KX5OUzlXCJ*tqsxG`CJLk zhQrKa=f|8}6QD)ujbT*p555_G)9(!q2gAb?s2Lyq^y=r&e}47hFJJxVqtBmS{%{NEtAD(D_u;3PcW+-kdiCL_ zpWog7^7if@CKRzU#|mfvfSS5fH^2|+;a~aSUM;tOovxP(FEZxX{BZrcxq-_UoF0SX z>ph>5YsaD`{D^Z)OazvciR}!%2E=V?zJPT=Iz|^?%*_9wyrRd{(h#-Yfif~K-d+@ef{|CZqB=a50+5l+*!-rgQTP`ib%uVQ{wd@G@0q!d&mbdZf{wi~~IfA|E>bIkeB!>L$bDTxO%-wWB5fGwXEnltKOa8{t)qgTg` zZB)hqXTP_0ca2Ar#@Gxdd#gEz3gmMnod9+b?1YFZ2=W!xRf4AfiYhD3u5sGf-i(2` zg51xZv~T^`wrF4w*ywJWd#7_e@r?M!DQ^Ovn-5%F>;@7l+t=e2w2=6_T)ePpCq1^4 z-E2dQA&TQ%%w0Ur4<7!p>-u2N_2HiDN4VbmKfS;I`1alH0etp}pk@ZLNU!It z%e{K^_~MCSjOz)zndS^MEQC&OW{KazVKG|Tqrqol;)1J@$|R< z+)8HZr9v589Qx^O^L*P>qnA3(el?{vL{rKck_hPqpYV2gu%qA#l59ai2)j5kpv|{0 zWHli&gWS(ve!63_!_~XbpS+T8_#f54`zq_=InWeXQQh)^2i=c)Xccztu1N1+jAP$z zJ{^nk6GRt}pB(oz2dSyWCZ;h53LJu}=_;>lvLvLSU}=$=5OGx~!B`oTE4c2{JBtiy z1q)w+)ES?s(X3kW;w3~~Mc=1)sk;G^b z(Qz8VvtT*~BR`$sS+E2_T>}J1BE{)=N}CldL)+ze3B@to5N`^!j=0efJWKTeXfD1T z&w%&_SJK=_LxK}o-=ZaqdKYc=A)gNh=NuK(6}WyBTgkMzvngC0p(%kqXu3u*8w3bp zSITg&z0~oLCqh^@>exe^R6grblFJ8^|)4S=0F*XlrKT z0Wt;}l@6MJRV&ZO!7cE&Ww%c^eMu`nMj|5|U2uSpjHN18AT;S(qI@zMX=51`5lJJjhYimAja?E}btgYZdegQ|MO=2j{6! zC|{u%3KHA-F+W5tpNE=BQcT8YIXvqQwB!8z$&qC4gBwJzRAB~4-;ti}3|ZRNp39*P z*KK+Cj^Y)r6Dc97tB%_NkK63}RM9ow)zzt(Ymwq5+yPSB;o^#B7@7!VhXx@g#J1Y66jeg1xD<`ExEFWjxE=apyJ+CK2$ zX7c z2e(`c#IksrUPU9AWY3F=PjWOk0;Y|6wng+?%TF2B>-n+%R?#HeC~+1-6r|(O#`F)z zu8l!VEa=K$bJi1iNliVMdzbPLWXfJ4d2XJqE-Q_4$5z?X#W(}ca`A0XT%hOI{5Gk_ zX+Oqj=ud!^g1AXF5DlUm4|)bg0hqNR`4 zJhm#ta#?E+HAFKw44t{LG46@`R4()HRbwv*?PJ^TaOTq4?-kUQP zHLJiSc}{)TgjsxR@@a0y#WDERWiqo*Q-hBO!mjF4G=*MM;cV6{k>|BcJg`Z}nynxd z%E>f}gI>^eClA%xzelv}_b-g8vBaHCEd6xG7!U%P+_jv+a+ zJi;5j8{mfoc@f1(MvX8vl8UIKNEk!kt%#h0;L#thWk^7RdM*sSEN&$Vv5*ceL`c!b zoOg_>v4th>Ea4T2sGF-Rq{3{pGe;;VnM2P&4STs+zD}VGgvS;IW?G}q_FJO~(hRv6 zl7cSN3}sA{DAMX6g&nOw6aXz~6@Fq6nmSeeh29@WCq~$rU6h=8S8h>U|DUdWiZfXZ zVfgQV^-xU`0kf={esMk?tf1#FbwQlo3aEJ$&YQb=l1j_H5+I-S5TV2yQO-#*0l(Vc zQc3u{aG@pSl&;5!JkDKPV8*e|ws2|4O{4`JI*EdFhGq2& zV%oFOg>#4EMgo=z7S5yl%@?K(#O4Cwq71`dA@b0c!2e9y-Pu#qs_*jjpK0C7U6^3% zZX(nK?}N6=&4uxj5|*Fcx14V2>?)s~VCrr{kJ6&T;e=98NkiJu{09x+boILG3TAx#Pq|zl1?vnFQxkgO+WO6d;s9}P=}RKY|udG&~w=N z8nNfRLJba`N8mHU;iHB?-)juu=}?zo3u+eR+Jz8dII1Wyv6t6s!qWU~pSy)-8EQu+ zSRpruCl>PL+6xmjRO##i?cF~`aV-gDr(a}SnQoZ^7Lhi2UJ*Mt2I&*A;pWGq~T+ zJQjWQbre860=+pI6-b?Jv3Nb!O0ira>3^*>lV;VFjv?FJy7d7_Q8r%p#6aSBOE-oC zmX{lKNhn%c#nr`&9b6-yAX?itifbP#8+?3#tW?rg@Jo};s!`d+I#9JdjzTXFc8IPT zAj;~?5mqoy<`64RRx9R;UIQ>oqk!W1baOJ;E(gcQ;3mk;@;|CKiE2s3D`O+>TpPqpmff+r3Fb&=`EO|-#joe|GF*60-0GS=*u=HUoTH=E6PZs& zH;b0Q(9uD!E>7BkHg7>HYM8o4mDU@u#VK^QmCc+xndKF{n7!=%%Kv~$)d(z`ry)QgxEkh6PFDCJ7IF@ zaZvBN(YEzhS;&I-vvfIU#TE4<9m(-J@Nkg3Nnu{aC0h}5>gv1Kb+q&lA$h7kl`WRG zG&~25dRl>R6Eh1Jn=at?ft$?m@%TlhIw<2M3T%bfh|3JgW!4-tk8C!)q0zOrEU0T0 zGY!&+wD@4hDs@?bINcp&0FX}_aR7Z#GKhQO;zUScUTfuLn@4kY?@l_NV3}e?(mMOD zXf;19$4eFNeC~=>B`{9cXjndjCqp_&23bS2!cXCW7OVm2>kw1e;1W`Aeaes^B#=JB z#0*+qo~=hK3L*6!ZFu9hOGab(J+7zA_XwyP42k$PXQMI7U@T*`i7gHtDKnUBCvVbi36bh4EZIp;NyO?Jdkd>UmnQ02#MRw(wf@e9m@#9%v7g1JrhOqc9+!epSZox0-<6;zjJ z7jQQ=T1bayP76?4e!ET~d0C%m>hLHb6fF(3i$;1(0zHj+Vv`ZLfK%wZ+mAi9k;yq- zdC*R*Z^Tp^H&hg@zu*$Qg*tA^Eokt#gkF1!-i37ks0w zKABXgplq1fQzi*_k$0ar6?cx;AW^0h(-0i9x4Lg*iFoAObFBiKbUn!QH|Ja0i=n_h zCVz_LrSg_+z?_5u$NHx_is~KZyQPLZZSGz2>BYt?x_N`wKjRI&^1=n24d;izu09t+1~}VrS5xz zN>A;-8)w&gzJYh*yO9`zLddtX+}@sJU=5 zV$YyWU@?Uc2z(O5I?*WV=BlUgxTX3~7-^Q8L1$X~1QWJOKW@PQ&7=SoNS%2cDW<#? zCsXbNKLQn(ZFj&Kk9r)b&qc(7hFK2r1k_7J$S2!F2rW>L^y;Q)@_34B*;$z)L%`K-Dg75O(EP3-W3`K10x zUrgR(rj<$$nKFL*;TA_B!;W+wYspeeD`tY5%&Z8i9YF>B0-+Pzi|GW~vR)UorV9@= z?;)}_%_0q8@!{e9t0AG1f#w0)BYZC~WZ_}7h|ApdESu`Ezp!+w{K1XPXMeZnL~X%r zm@7OFQnfiuxyq7yKqTcud>FZ_?NN~l_9(Wj=DW$fX)S!*?u#ax6JafB?V=Q%a}#9k zRvs209!55bEi!KmxdXkJPz}+-U4*0v z|8lEbc||K?#G((eiM4Azv&M9lFQ}JRn`O1(o);{e8tEBbe$D#o$Tq_lb#>AQ7%N-E zq42qdYOoED?+znwL9de)*%kaub2=aQEq8rb;QN-x&NwWtt|D@=5ODox8XL09&1(;+ z*;(M|8NGUS`{|R8qzJ8aC8-C~MN88obc)c+W^6|TSj>jpSJKAk>Bn79b1ATSwb;ZI zIT98CJwyUU8T!`j$ltQ)xd`R?QEw{PAc;mVJ_2b+I<+P;1DpGr?`{*xA|+O%N^ zu>zzwX=SM{Wrf>I)54{uW}uK%JmGb+b%%jIm%T_m^l-(|nTu6Qm@MBaIAPJR%I43` zS19Ljk8=syQ&h_$!%WursiiSV7EJ{S!4;bzT3)GEZ$Qc%^@V(W#hGF@Ef78Ug*R_( zR8Hyro@nWzk|ZRHy~piTQAAx6MWs(s1%2B~*1+Hik>rc&{UdI(DNL4L!Tq+5AQ9NS;JleOA3n{>&LKuk&Of7dOo_Wa-=js>MpuRBziX4oOfrR zNI=~{r}ps-I}P|czL_KZT&U*ygEmw**&!Gqe(+mCnig(dt_)WgN{-~ zGyKwu`~E&VzZ_p@TO^*1+#|m#hLT;S#0r(XYZlE;=%5>okAl#J{Lg%~ zFqvP#jP6JRaH``)Ooj)col-l&Q)+^|a|+%)NWY|}C|b}}u%|m1Z;|3_dbwP`=(!Zr z?rHEHdfGj|qNCjcQKwGZa5e)weS-la=PHGWi%S&W^h#rv!ORahZ)iFEIN_Pui7sX^ zbKV+C{@&j{yaQ!_ciVgQ0kIOcYEMCh;LJBPl2yj~ZxTpz&j_~3^oAyf(bX6Z2HE)F zRH&;OUHv_I364iX^&6gM*xduL6|*dTnHklqCoX8cii-9 zH66>5IJNXLRzwmffUF*%Rw!x#6$ZVJX&c!HmxHWfUTG@48clATs5z4Q=L$*buHEja zuQrlIj`3y!^&HIK$}Fv;6jxJ{n48zH0hNAwfzg2w$#nuVd_C>)3N#FBx*R$Ls6$EN zNlln~_Bw8c4yf^(PIr$h-$9{{b9l~ibz@Tk`q$NY{`g{43c(mP|I5{-?NDlb?94>I zcKDF_Z+G5L2@=3$rupQDDzl`eiVWJ&oc3ln4J+2aN+r@eNQ!|dq2L;WTYADJKWv86GD~{X-*yqJ_BEfysd`FQH>By`Pma2fns&Fj1)=?~B5LC@ktWbIc z#Gj5b@u(z!kE*x3gQDidK)_Hu8(lAGQHYoM+Y%R1bkSS2f8DN~#B!g98Ww|8<>$i7 z1*+Y)>kBTLUcqeAMam8x8WxS}iJlt1K#WF}1n=(P*zwovB&_++0v8F%-vJDuJ|c`g zsVVZ15Hgs~ zpq@IL&A_Ni+C#|tvt5!}8_vbt#1_lo{E@EPi_AHxsdWlV)M&AGWgRudsBMRWC{R+A zm7-J1vgB=UTO9{3UIsaqR=~8jkYk%XQw_6el{XDF1a1l>M_u`(wJb1F1(vpKEP@4` z0(F~6Q-SnGqwZoFNkynXnP0I4NmilcYdYC=?kzVhgw!*5LJF4W+n7r?-w{c)nr8g% zRJRAH7@znvs8r}9A4Z5BRiQh2MxP^JgnbA5JsUll;!u-#V6#=-kwU|m(pc)E<3ZC;WnG$cs#*hleBby;-4> zyxT@;WOR6D1w>zSzQuJm%F#*=0#(eZgj^#6iICl6`Fn7O*{H&Wt^6RHD}01 zl`5eIskbc$g1;}+*avMG21eT!3~ zNU~{+tA%dxy-<&HUUTRYFN#yOG)iQU=n)27rVSKZWdXkb*LVlwJnQrh#P$Chfm!-^ z)3PA`ppsmfSuKgFt_9S}@v(((x_ie0SdsBA#5m zW!v<8m`Q6}a##tbx#hWPDG;tV=i=sQme7(EM{B!>Zss>`CkvP%NlffeFWTB4vDy1&nCSJ=`oh3wXfl=6)z^r0J-u1*?AUEhx zE*=lfJy%ANEYBhU+Rkkr^KQ@VIOQq&rmlX(7rntSQ4+tQdk!>83>T)s*ukHD`iHRCnq9tU6P_;!Q@95hggd*04|vy!RRA@IIwK0ZUU4W?ClAn!YQe^$ zcXrWpWqDbx=Sy0SRXQNW3xj7tJxPm%1W#KWkTNU{4q@B62v(+h$d1m5NNUPCGNKDf|M-=8H zZ>6cr^^ zhbwS}3x2G)RJ=ilv>nYbob5@3>PCVh5vuy?Hi&Vi|DQu(0B5zH-t3^H>`NU@{@G3K4865VHZXXQ~PiII~s9H0B)v^sCM>qx1%!$)sIkg%GJG0&4o9W#lC~@s>j&zLUe1>KuO;RcdMbl`8X_VS` zE6g`c$z?tv6umGMn+Zrk^3ik*OrT1_#__pOY1D&X9-`yRyStBXzyEx9yW1Tc zynOfehxfOy0Rd~-i4x%6;7>wz^Ox|3dFzn_vT)cghSdZa!8SVLwpedyFBq9I0o7xC zTqKp|&F%&hDl(MpCIu~{Q!FbPLL_$tbjJT8xc*zi zk`hF&*7W9c`BbSR^V*Ok!wV>_4J>cJI$y$`KwP8;xz~TT?c$G+U%Tl(|5?q6J2<;D zNwoB}ez?f_#!q?`0I|gZTa3)4e%PA$H!yt{U4+hd(7?hAWX}oO-QfY<5T1>YUL1-N zL`5y8a!de~;YH{`vx-BZ;$KwRnT@a8Pcp$Wez@%Jk$ut9T-f?jq~-pGL~y-bA~$f- zJEbewr4So%>Q|p$=F#f{Kgcl=S1`di3pnX@UN-D6hbNP&?N2REg6Z2x7N~_@fU<*_ zxvEg;&kq6w26%pD@t6XjXGpJtOlyc7g}9`8$heMNbUaIqJ44Nf^c0$+Y&-=_58}#8 z^6yx|T1h4J^MEE3G@)l9Tjlu2?H#m1d%YkHw$p)+Hb`g2LTb~#E+ja6qE(40RDZ^g z$%pP3j`6;V&i3wt1l&TCY5~8zR$K);pbsoPv5aK zS_O7;opmavL^vi%Oz0Aub0L5eL3nc*>#KT&h=c!s{@hb&l#|AS*^lF>x|F7Xm47$i zJ=5U*cVlSW+`cQi#>GRu7?;j?+yc^94oY)lYJhIP)&vu_@tx#%FM+ZHM+UmKk&wd@ z!EEGzb>R+0?5Mq_v)a2`l%7D!hN?K2Sxk9icUw$t)!db{n=?*8jZOINxeQLt(=l3U zR#Tusr@<*=kKGTHBiPO%$V{Ju;S=U_chX9*S}$15JNel7=Bz+@P>h*@_vN>hBdDJS z4pC<+V5}$~WH%Gr_|{WbFnif0!{?~M1TrHskI9EaQd8*k^%6v{*zH&~<%>@CntZot zxF=M!G?$6$C`EmJZZJhXRpYe6UYDT&OO!owks*;C*OinRY544vfEJldYC_tC>Z>9F z7r0kX7hYY#F&9RWIWj(49xMwA6u;v6Lg9p*o7;6C%sDV1p$w7*)kA4QHIy_no~|oL z=SB$H<1yz&H+$_M7qg<3W;pxu!kdbia6qdP)gz#QW$q27-eB+^u7^(3`MW`obXz~9 zJ}1WTIKsD1*NE6qdKoENt`JVC6SxGyN^+B+;?MDkV8`4cpFT3+%linovSsJeNBRbe zKG4GGHDQ_Qc2}6czq|d2+P4;&uz36a7PJGS93JgqfLpK!eQxEi-TEErL2X?4nAvd=wV6wL(B{L~Qkj zNBu!scjXjFE>xCbfE0;O_Us$>ahM^b<;ZV!7L*qXzFGqckXFk0M3P}hOPbHhY;ZDJH{0a+?ko%#Sy<(HTL|oB?3DR+wj!)?2NprDdn7s}%wX!A zp%XDq&2Uq#5_SS=YD_SxSJ)C)<7tt25#`V0s!}phhvo*c=Jo$;#=c~z>R8DH(^96h zRN>tB6~f_nVOd%I0SP?Nc%0P4`MPw)^fpCi`vvP1ypYprJ&ZOy?f;ocC7o33bO;me~M4Vq?5tPH21furYMosq1|}e7c^7*@A;BqinMjHd=|Po zathwHO|)?PRd1(sMa_2IY<-SQLxESr4%e*)brEe(P)52D{Lr-d)hvk}U-gewmH#egwfE-8YUI|tGCQG}$t9v77-Mm*Z)?&IfIck}me z?`9uA{B-m7_3Z~Mz$o(&yTDy`ZzrerVvt;&XWWw5A4g)w=z{7d-%AsEl5EHQ1U9Y= zP-()1lpC;^m&o3RXra}L4}=R=>l$iQNtRN8Ly|4IZw^{+u~ zMw6E0#31d(2L1~5;l!gNfi!e1$8Jhr#__P3G_?Y$GdzKE62k3LB``^F4iWik!#0_` z(;^ZeJ*iyzf-_9~{N?)8NUX8*@~?Qnyp5JOX);}ml%HNNXNnr+Lb24JNQ=Vw4Uh+w zyl!4}U%;rMTKEE%mxN~6kqnB%)H5`0Smj=A!tzH2xv+(cmLBLkjuo<*c!9Q2yuV;U zwBH(F5l)7NNp+Nd;Dt~}hX7)P)_rMHLLF0KbP}}y<#C&G(6zhX(5RthgZh@bHoA2& zGZlY}T`P}vie|r2y^32J>eX~Uspx#Mm0-`rHi6tD4Dk{*7OseCpukFO1=%?J{PEM> z;`aRycRwOZe*5v|`%iCfKYkMBCm3$%NRM%K4m}3IJW^-V^~R9b-Re36FA_{MW-J#7 zmxq!&SxFANCIePh1Jd^{uS8VdR6=#_h)_cLwogrcdPx^Tnar|~y6#eEr{XukH1&ags?Qp2mzSt0+EUZW zYMBzE{q5zuKbj#EzmN$He%_Py^!YOui>VW*{hpdWDDD5t)O)G6IVK+_Vg$V7COqTo zeK$(o4}LG*$fD>vkdoy!yl#1nh(B>Nkx;adwriMXNAk$|?cM0r-P^z2;xpqJveu?a zhK*0}6Pgw1WN@zcd zdA(F^1=ujkx6@-YnMF%uiP3`xK~meQC3x1ux)qyO3wqIpYqXln$WHU5aZdxN8ww>W zRQkXy#tGCR5k!^k{18F`45#%dDp2!zM!Z3K+``8r&ps4Nf-PMVs+K;Rg7IX02_514 zmtfV$>*Y!kWqIx6ho7OlF%)JBs&iQH2$Vl^YsYdoM#E=pL>#CUcG^mq4$+n8C z^TTg1ni@4|7vwvyIc1KMS+|2W& z&m(jSHD1K*@Geujhvd6K3CEgfln{MGI$~Mo(BnsI6P39JOYAR#AtC-ekD^WWE7DFX zyXalJ-TT|y*Ez`#E&OD*iB>rlg)QT?P0fjTpzF;GXWfBkL|YYw+P03R3Zz#iQjH9~ ziaBl02O~~ta!YU@srZ(#mdr!?Yh2Y>Sjic3`QWPZyhc;o&rUWRdthmsp6)eFFBaGT z6k09>p!JREKlC~xHOP8rF2&7pSf+^aOfrWt3ouvK>m*u{V0xaB4>zfYaxj|uoaJQm zjP3|;@2)=o^gVL8#s&B;c`9ga73CRQG3PQKY(5G0a95E8ix5pc9L7H6^sDf`*fcGe z*t}WL+0aV?L%hOz!-H3urt&Z~9QW>X8Zuy#TBS~+(h91c=@?n+rW10SOsIsiOyh%B z4|}hA|MqV^R)o^#@jQS{Wl9ax^m1pQQZiz6@aL#kH#Gw~g3Wj_dHac{Fix<|-G`qq zKfJ!pVd<(Jf!rLuyQ zlo{BU^Ud%|(rs#KIgAi;h1a4*gjL1d7JlNAllky|Uf9^6 z|71*I2nCKn8U$&7mS(DPO#}4JPh&!GO_pWFyrF~%iUwI-j+Qsh+=mKF0SnUf116x7&Pb(=Z|%wk^iZYER4aNvJA2 zyzEciaNG0=J)FBt*n)2lvY?4{MTeYkbrM65C;bRA$3$I)|);BzBExdYZ$(A%qN#!)-!tMd8zXUl%;n;Gi<9B>drd~Zusc1=GC|wv z4M%h74#=H2WuPJu9pPI|tf+t)D_lS78{F3RfxFZGNb%B40R zALWFS&^Vx}55+UZf{UG}=+^Tq3`nsB9AKw2FA|1kMkno$V6bi7qZQAj&IlS0sAaVX z2b^>ziLxJmVLDw9!QSuTMC`yn@sgNvsC~qlDc8sLIh>tZyj&aZh#hox*ZW<6@Xhd> zes6F%7#^MsPJY)RZ(?$*cr6!0d0Ag#$VAVz>6*x?%1v6^Yg1yoqf!;%@6oGrPAVCB zx2+XN3?{OpgZM@XWy=jvRMRelnuvj=vV3MC7YnU!}=PljGzr| zSp;oajWlCR_Q*+~8Za~SG$=c0Jewg4PpXLi8Z*4)auQxn|TbbvK4MG7DbJ|N09PDKJ{9kS$Y=3&C}t&S2l# zL#F=6RnzNw@-SlUZu9wj%1#0vQAI&g3axR9EGn?E39{X9JKJ1n3ywoyl3*H9BriXM z4K(?|9SsMr?+!aisoD<0U)p>6+k5Rj{cP_kl{-upL89Zjo>F2gR6vnELY~re3O^Lq zvdkcjmy9n%#yz@qgqC7SHyqHA6 zj4O?cB0~JEc`{qXIZA0nm7C9QDd?=IUM|~W$Gq+Y}!Y(wIig&hsY)Bu$^~Nx9 z0x*wh0$l4sS&rllI!{!U5~YL639aRop@`dJ97RZ3GLcx0`}C2lOdL(9z9h+;kC_Ko zi>Y4#;@lv$+R*WYOEW!CN=EHU{{@n1jwynJ5tXZ*TL!!P_)Z4lA=9win%-Rn;g{HA zetIWC)|FXqm5)~5b3Wbf$THwEB*r~zS=7_e0&5<$OU*_XE=keS%SvL^_hpPtAuXKw zzt)*7B9$C=1dj0n=ggFY1Vq;ofg)sJ}k;^kZDv|(CWp^<_o5+ax`a*F4Wk& zE|}F+kR@uio=zdqMk=S`nr&ml>CRIlKw41J?}nj9G184|nY=Z*l9Hd!6cbdzc^PiK zhnjNic?Pax{mRfSId?ElQ=wZ77frj=++3Q{jrLT4^zf_E6(r%;uRo%&0Xf{)w{LpQ zYs^6|)RVH&qTqVX3;N2{m_&0Yt%1&dzhLKxT?dzfFN8Z#Q{pIC=wKa(*VRmJ~`5jP+js?%=hIPcRM8d*r0O010I z{n<>ckF?0&EoV?G;O`8$kz8()MU7jv(Z!bi23|&E#MXXX-M)YQ_WcitZ@|~c|E6)- z_Jj#ydpxSB*AN4X0}o;$vjQH%+Z$+%m-QgnV(Nr1W$8{kc8V!9iq^!6Jd?6?rI1J< zpnL7q*M*0W&v;HVd%@({Xgz~?JDcxDo6DY6#LR3@zjB4)bd@m8RqK=h>y%AG;R66v zbS6N0-p&|d<7dSlkj=OBSuo$g#bVbR4w5#_s#S3AvR9+CpKdRTmcF*&XOV)bK3i*; zzNa?aW2+ruKc!NMRFG*8c&!iPkD~BL`byh0@cl2g7xpya#oa}+qI~*64uj$h@g+%k zE`#Dde8OYmQ&|qUd$(iH&1eSYMaMTMn5`iemb&%P1iZZ_mXwly$oT#uxiy$=TU+H- zTdudh)X~%jk~-lFa#bu`INhDC;r^4ZskE?Sg%Bx(I%wqP>rtj)q1-`3jU5DEbd;U> z{vUU@uReT6AiUol(x>mUW-mQLYhtSQfhUEGmOdb#HJfKBxHLQ8eYYK*`yp!6GoUA( z5mXpsL~p^3)?;XaZL0I$$ZEjCLWz|p6OFltxWpBZRYsS>f`D2uRoY~mA@i*ZHYYntNa3jVb(Sf$?n z)x2}M_?Tp{p+4ga_L}IT@2Hm(=v-EXXaRMLzR}F*g@y+63XM?Im#V6KH9+YhQ)r;K zPjrdfZEa*9n!jvR+Gt0UB-fMqj&FoaF`s9 zj(UkQw8eKi70#xwKZ^4v2@3f*GPc9dqktQ7C$ERjQ?-C<3KKzJp~^3;?qJ9`E8JY} z-_+GZw>p}UOjSlWaGaA%RD9^R@U~z!YF7|<8^bd&zu2vReo{nBD{8v}EcJbodjZx% zW6qnb+?RPh%|o~(R6$UdcXYPGieoY^QQ#8ECzu<8)(-n_)1nVM*DAp@z$P(5Hl6k* zeZL0e1i6#VNU%Je#^r^ZptwP4H??bN+>xO(eu$5ahP3Dc199xD+yc@`VH3=!T>(@$ zrLjk>(8Ix_{^0;ym&+(=1cK%BBDa3!skpCGtZ4-7!fOZG(dV<->e1=-#Tr{Iyb5Uf zpd&(|elFD-%Gg)A7FZ5HBuIl-2jkcqMx5nh@{1Aar~=c~LE|frtwHU9S%a*1=21+M z2#Vn>iaA+=DQF(61@?A8jq5ctrl0SL4%F#Hm_ zazz|k(h~bun!3fl&}0vvN*6>5xb&rRJ49C1$+XAQG&eO0Np{cH$d;W$6tqh{15T&P zBf*-hpZ%q4k8oI0pxReOVAJi(Ai#>i+La85UOyc}N$dnZ+-W@#g~9YPjm>5)g%!{d z$W)YqI&bd9ETW~a72hb!RMY*rgya{62D+yQM@x^&3Y!%a(LzO~Pq8gEU*e2hGJM+O zd6N3vl$Zl&PNStq8nec<0I)>sZ=84G(5tExWd{v45nGSQb|>iavO7kL;e(PLJR$@) z>a+U zO=$WCJP2Np>&c6PSJFq!8E{Gf*b=RT9TSBQ3eD$0BDg&%XM_FJq(XObbxl8Ph^+G~ zvyDP+0ZumMKX2lA4J)w0IM>Jv=`Fp5M3DmVc0+@lWo|0k>SGwgp_#{7p*X8RdZEIE zur6@toL@4=K@q&)+UHwpj)8B0Xz3-KFQS1;Idh%KH83fZj$}ak6$msXjBa?DZ1cMw z>!>I@t?}3JFhw_pMPH0iYHfx!a}#wv-Kjvgc$w3wL;U0%^h!xoY@(##jWs-&ZHenM?12~L)UYW~EWHk{9| zxD(|(EJ`QFDx6XEq_v07&LL(CPfsF$xtt|fQ^XNLluo6gFtPYLEuC@Mo?p!ynl9dh z*>sP&la|Na$(cO>jJ&iOiUu!MOi#~1jYHRL_rp?Fwe(J7u19N>eT2Pmx4pQ&JgamB z348la*frO#C6Kh05|5tlcUMC0SNB)a5X_d+&95hz#!ohY^7g<=nL3IVbsh?!O+5KK zaX}(f&=9M>hTm95M72BV0VekhArtR)HB3O=Kqd&oR59B3Z{GfZlC(d0)!OObZr|U@ z8q)3{SSwHm8Zt?b@I}SLd(g!J@o_W!po}^;6STEp=pRhE`Kx7RD{%fd7WF*zyAik5$G}o>SN^938?7+1N#N6XN647r+M0!FU zwZ|n;2?23RR)-f>#_jd`stOqI0H^UxS4TKDR=X$jtBEAO@`CoDVH|ql^HIX0Ti05E z^=Mn=%s_wJX*Vk1MmvlfVH~7LZba%MG!kqr{JQOOkSbRh3^Eb0X%9-1-P((~ijXXA zKH%;N_UrJMVNx7=#@8!`%i&Lt?A170Mgy~WmQ~1SHY^U-KAS45W-*WH4fI#QaOz%| z=aMJMqrX5b`&zm4b+Cw~!i^r}6#ml)O*44|7vw;V3wRTd%bX)y_NoTN$+AiRO>W)h zDqy~Lv&jlpxSf}vAeReMcA9&pq#?+7v#J3Xh_%2bW;5U)AKp4V9?K@c8pxk z7GGI%i|HJ5R=0-fIU2g>rRmhIBv|Ucooszcl}biN*|cTMIo$A%OZ&8)_}915J<`&n#!f zZnI90{xZgPt2syAV9ptSoAW`&jTgH0lHcXA2DjsyCGF^t5O3zV=%RGA@`w9(Hw7q7 zN`mQeJXFByd#MOqviLf_J@NxHnOMzIG@*H5o}93gE+km$&SD-{PzJ^03-v+*sWWCM zb4Kt});Q(b!|}sEdj%$XfMfM09#tNi6In0236qVyp-;%`r;jhV#V?CGyd#M^GcO%frR}!~%_YZNpAkY02>k%d46+b(-l^l%57K@ny-Z?FzKkMiJ%NpkN^e^1G;NPi!K zU^D-{RT3lubgQ0v6fszkn^ z`PAv))mU7Y7A?VvW+2!XR?`R%h8n}n2$+<8=FldnZ4QO=%sq53Iio5PomwoO7m5`{ zWvDtCoPk07?G~{!vxtfFjHFcqi{MPnJdsjk5KoO4)nDl@L+Y}-5s&E$oy%5n={W15z|=$k`>mpGX@$@t*t3qj?8? zm~GMv*a9zi$c{Fq`xlZxRF|h)sW_(VP;QhmRqg zr?k%aMY;|3Wp)pw-d5OQ+;S&B8z6lQ&y+omun<^S&w~F|Zg((WubwwWuqN*@Fbb}* zM9qUJS78G%Br+|tr-Mspf~x?vyAn*}4MiSgJ6R)Dn&@(KX{3O&Cnc4_#GvcmK;Ljr zRBi5|hwIRdAO(E^j*6Jl_2dG`OzpD8RupaFlLqVR@}^5q4b!_acM%Dsc3{4qHrR^_ zhCTaiHpLkLg)n?&|MubC%e%MlZhHs6`}>>Q-}%D(@!HeOdqd+hgTUemjzZM-8-ZBX zf?FG|aq2m)k#eVrXqDS2xeAalHlFM|t?r_Sa|=nwy7}<=qUAl7p2!VLxP}ks zx+f=W+=hIbwiA5c`L?LLl!vy77&yhw4ON(%f~*{<078V|-^j3`@OAXx?##$m>CD&x z4HLx7%)>NFSB4tRVuI=0yY-PkI14g_84XXdR4e%Y?0wy0wwfTLjvhem zgca25;)Q8N7T=H9sw&K12BIqVFD7-n6N~%G(W)-Bk-0&u~N+aw$p= z#ROv0ga}y!^NWocD!kW|MPO6p^xIf+1HIV5$1)yHBUJb~jdlRV!GOO* z=1rYrQ|z_rZlK6^B$k1GWz)O2kGedtqVLF4Nr&?}DprB>xUM8d{oZ}>`LZwB zfW8w|iXRtBg98s|lt-B)R)g za<@~U2o)8=z-G(1sp2<@eF|oliU50`^r&@UVMZ&EuMo3vI3LHO#lDj(fEB9}B~`jI zup8@MQF_O?4Bk>mXwH`T$z{SnvxW=@3fq%jhlYSqK{0d?%t1j-%NUq$^(yX>dNs@4 z_PjVEjk%m}fV+_}p(f&0M+XJjW|cM{AG_U5CZx-8KZlLWux>|S=Ihsh+u4*-04MG` z$Sa9O*3h}m1!v59GO8D?xPrriii~r3Q16(IV<@ZbshJ!bu)G62tGCmJ0V%3fjN=(Z zxMxjgoeHFf5DO@)ak04}xyZ)GQTQ)(6{dCxZ8OFOaL`1aJ%jN3b=s*p@rf;Y$1ii2 zk9BOaK*9Ps3QS{|IMGP;WG@Aijk3qhfbt5Y4-++(xr+;^fR{4rv;$mDYWYR(Y!n~F z!$0A$?Z7fFr3-B60#*hjC&;*L6~+QU_%Snq^DL?DB$N(awRc(nF@j?^7rP6j&3SVB z4`pase0cu@e#76w0XsyJ$Xy5?gy;AjOgW4nL+n2j0>GZTG~jtia?5%2s=Iq9`qHOB z0GGV`jG;^46j||W(%b@T+Kml|19+)0>SeM)PP_q?ked8oP#O@}TbYE?nQS5}*xK1> zzNk`XAT6t3)Kn9n*OM(=oo1KwUeyv@e4i&|Y;qDcOdkb0N4!MV#O3-0y!Yta$lL|` zD+{Lo!c40pyBJ2f4YvdClnI7T(k7mZWkmWv6N?U_Z~02_u!7K8p!xw`WJ@*#K^ZxQ z>bIt(sh#lbGNcYwJYQ|Z=y1n2J_#S39kjWCq0AlZ7O0=eSCT9yJDRC}9jHm?Tj!YO zGi)g&=YfOXX!0TvXx`|^Ym95R=_$c7O)%Cq!hfQb&?b~kojiamqO?o$yc{adakR~; zHqC!Cj!K-g2)6upI%P zWJE_(%W^+6)_Ca0ORm=a6l82s#eX@6#><*CB8_;ML-I2zdbxS5b$3eBP8kmc4V_O) zj5sf=E?12YI(7r3XK++B4SY9UZX%dbaO$p1ecHiziJrwU=i>@x`9;lNX&Y}GB?|^1+*wJc(97u zL#)vyeMENIw1|hIt+$p6yUuBGWu8RE-~>!57PTP47gJkb`V5@ile3kaR_v!9>OG$|4Nv#*n$fGte7v2Jri6NFD; zrlujR8AYyP`_Xq!Nw-yyJtoTiN zzim^I)aT15`&4RM!89m-DC2jh&(3H1>S$;!aMZZCkM(MqxSP=CG)0kjV)_NEbgO-(8MWQQE5zqJ?* zGH(L8GiRk3O&fm|`X{45?~uz0tcTJSZSG#)eg3q&c=_(l>@&iA({->iNbCdTplrF2 zK)-$tww2NmHMRJ36UHjKIdHKlGz%&XU)Ruvb5dv})6R0)tqV2$)Enr@CW}ReDdwhr zp$RXel=3F_I`SX zW7R5wYnW9rr;k{g#W-zYiC`3y5i^{=-WFDZC(~r_&7)hF4`$zyGxSx4T>{Sb0ml0P zlYIa9QOX;dQwlY(z!|rrYYtQT+a?EEUnVoIH{{) zsrw9u<=OlS=8T%rV)qPFccW)#C~1Q1t9_VBv9G_IKsVS3av_>|a!W+8c`9a0cFDFD z4ELhif$~9^)Cip=Tqv4$I^z-?q(ShdP)I_5_7wRfq(3J?zwk zvYJ{A2s{`pG%6$w6qY8_8`e>P=GO#~dS$wL=wr2HW_Ro6gcB@v*U1A7NEdm@Fm>mA zSTfZK6;kz>8bICPOi-a$?Bxj;8&H4>OSZ*ZFxy}K4(W%aILJNpqJpI`!zbAWgb`-X z{o=AOJZno7uP;W{fM})Cp3;$G-}^6cnz7yBw5s#LYpq+9kwIG1Fu~w zHBklMvfQ|sqThNe2p(}8hY+f6Pp>u*Ib>y-vHEpTm4fd4h63uHRo(EiVHYvO^`kx4 zkM~?Z1&I@?dYut>kdBr2}PN*kGr$8vv)yc5|`vn(@tM=6%!UE!jp<~mh zlD8f*k^Iw08q6zRYF4ADsI@y32cDZ96DH=0$;0G6tb@Z|p7L4vTXNfR88e0%+^6&F zfKr7?3&Q#IihjgXcx&FsZszKG$NOp<>!^_98_z<_8a+7h zYkcuoi)Ws3)pbV>9Bf#1==6yj0}C*^Hs?YYhLP;T{#!kQ_rw#`h}nSm)CsgiSZf^R z&XucHOarbjG;sjgndT^o)FQT$BofeWVCf{FG-W?{-HvWdL0DeNxaddpu+}b>N3>Hp zk%ACxn=0G}P{Y8va&cDK$O`J+1erh)Y-UqF%`EAbswO?Yb!=euou|)v$oiR6Fa0Y_ zY%YL$qCUbU=iJtEOUsbUxo=$bEgQ;7pwnr2rj;U(d672*ig`!&vNu+; zQY#&W`k?O4*5{pb+ugxp7tY4( zUz9KanGMWKEME|MXd-P_RO-ZnLJSnUfTO&K2-R&aJv(m`Ej<0(bW}Vw))D_ zn_A^As5k^sDpz4P9bIdfuS4>I-m?gu@CO!7Ha!OmIhi7fd`i1EXuHOlj}2`E$G;($nPeeqeuVX;U7CLBN0*8mVu)c!|JY<^6E*Bg4sj3)Ehzx<8}DRphz6RSw2c8 z0DoNp(93ur(i$RTh}gE&60(?#x!<=0q7KeqpH!b|5~z!fMb(6BMcNevGOh+4%D9@` zujXB7ymHp%q~u+y>$;^VU-$0zR`u&d#he-I01MffsAT*6vV(>NMDz5`H~&8Qh{D_- zKmEIhBLDJ>(8{j<`{v`TfB$s%({S*n55SKv-+l8ciXD&%m5K}u75$ruTM*;d6tXph z#On9BbyLgdpWV4?@b&~TVnA8dG6th4_tkB(syp}|<@vL}{9y-_cx83zdwUbDAJggr zPu4Kg!qW>_Zww`Mq#{pN265;PBGJ+p&yeF!S+`*%XCcm=B?Uh1B>)m>(}G?COD5lF zBDkq4zA<0bTYMChaokgZjtYr_Y@P)|G-(SUn!U`kzo$9^DTgXq-0Nb4d|EdrX-kj8PG!!PofhK&+1ue>yF1(B0Kx8~wz70&vBRVQ>XwGT&|?zL zQ>;`E=8FbQ{ku*XcjqP_8iWMfxjz02fS#k7cH!D(P6;x8T?!~Gm_9Q;6dEl&5wt|J zm2_LJW4sG2HLgVqidn@fv2YM6{zMV!-LNV{@fP{i>Q73!Dv_R;P<q1%SYrZI~U=ye%Jfzq1~W* z6-xFKo{X^ez>7p_YLWKqKX91(vmXB8;2<9NmEFx}tK`MQNB!QP6h41?_?U7YZv9`l z_29R?vk%Prr`~y7yz@5>S4M87Fr&yhn$sY1gCd0RbJE5HXPt-=R19)ZwH=#OAQo(a zBvSSI3sn zoK2yKR3)OcF3gFhHFVcVCpXa&xzUnX+-BcH3)hIz0Bb~IWYZL(`}km^=eBu(XKEw&3RT zUs>Rbvcqsrhnow^INDY%bxo@8ewjPy3%GznGVc8FrMBNZg_AF}H~^(AoYJ)>8T%0F zDpwmKgPn{y^dAS7FoMh-hd7>rr-bc9u6nKU)ldzNFKv3<>dnoInw{N_D#>nw(14&Y zHOTrF$cTt~@{Wk)>m4h`5N@I}i6I&n>PQrN>$&t>Uo9Ccv&1JQh}&EXJ|Q~jqeRav zah>rwcAR7$%Oe~txuNo*Gs2-SRD!28tcX0$k{Pk#NS(lXnUOdyatI#unDEFbkCSpo zaNj2E+aZS-uMnQ#{s2|zGkP8sWIg;iH51;#YYG~Aj@;sKi?;eu>$x>+z5X%OF^VWQ z3=U2Ac)T{Cw(l&K9Q70p4M}#%9BBn2!;{O>LuLz=B13gi!Ko-MDWd!jSxM_KNBvt{ zV-`cX0>$}-d^goClwn;Rg6CYDfq;?}46G++ABdLYEcuh=3@&;ocsN;JgCT=w)oBqg z0&>FI18olyVGMRc3Td1rhjjAPA{MT0^3dmK>D8o|m!E!~zkhot(aY&0)q*^jR||+3 zRMnE3fd4jPC0M-8c{mr~YFI%uNPK~H5K|#) z{AzC<-XYcX6S(%s3l)d2M5j9d1@`>g&Q zJVEYPWE;m{!T2EPBEKl5~8^-SSJWyNynoY`46?Ao%ogr{&oo>YLc( z@zw08n{gIIow6V;4{0 zo1jNRcF1Bis5@NnIuag|t#Y8ADI{)YATJFzogH*57P;iH9hv>iZ2)cjbeJ)1vGY{k z(7FoCRgl}GIV`)d@i)|&Qm+ALGOj;e`WDl%cCP={Gqfy`qtmea z2%4o3ydx!BaoL=R7jtyO6pFoqI-Ke!EHwz;ps9umXSez8 zS%u?Vg1D}cXx@X}upKNXIIWCP`f}*0f`ce{eMFC`LJ-_4?cj|E5g~@SoeX`es^6TNUJ3m6snjf*P{i_ z-)a+uGCE-S>r-W5-v_>p_5BH^?xa-H6-=PyzCq`D%?m`!+{)fW z!qXaFXj!q1SpTRgFsgrH$8o7qiyc7$z6(Y>IEZl(;=_Zl}F)zKj*{8FDs z9dO;3m(W?r&eK{bk|Cl7NsKebEU~YB@~`AQWplY=A$Tn)Pp<;iva4}b5~#SWWzeU( zJHFSfh?d}>hT}{4XJ%`mH+_^sNUL>$IzM2bc<}*M zFsWk193QA)|w9BnJ7&Q9=J+%foV(?elNA8VuY)6N@tD$J_jh+>{B z8zkcQtN<(wv(vcBi+NZSR!lYku+y(`E_=p*%kG(!&eU?2 z=Y0QUyBzkV+A&d`#n1Vv*qnGs8QWw?q^<=@I=zIl zt}+Z3mo;YK;g@PjlP4nH>7{NLa2ly7JYEkDuGFrU*M*6CfCY>>74wEhVw}qmik$B7 zD1+F}+b%DWKO0y$pS=LBJXdMtF_n9ln_U$>rv=YGBKSr5HPbGng! z64(ej4HuiU*_;PueVn(z`g$r(lqum?I3BCxKc_XZ1<$I4 zE$cvJb!g<`uVDH-XMD^}>@aAKH-#y%MnTe;yGn-Pr2Tb3JcNL{mLPAoTo_VFfRA`BWf z`#ky!xwoLC{M(=+3u(^GA`|9rPhxfb9#i$QgBjnf^EzXg8 z7`hXMsqwm<5f=F3ALxw+N@+_XAn7*-_uFmvGn8({_!S&wch5NIxP!U_d)#$bo7hv} zdM3%V7OsX(vf6_%$VxpqXtuUVXg%grYLWonNOE6Ll&D zUtb@D?p9%TmX$8jEtuV;t0+S7af{VtleM7(C>X++Xul~wCu3s4d?eEt4(TdkMR%W! z)5geGCiU3VGBPwCSHm){Bfyxr&J>-^5eUsIxNZZDr%6Bu!9G3no*oY(1Ni#p+C(-I z9T80#2*9O6(?A!f>Ef_gwswccu}SX34I%f{>!&$ucJVz6mnazVCNSox&m}8 zd9@Bi)mgRzM$TuhGh$&aM|v(ggClo*O|Lu(#KHs0r2Bje9Y3_==Gs_tL)$*ThCeeZ^D~`Y>_JKYzZ~~x&HI2AZXGbFZgG)F z=Vh6#xSp(iz4Qp7xS?htuR(J(g3{8@rf{dr9AgL6tR{JJX0ESnc{9%CfMZvm4I5*CQQN>&2F8B}8j#Z2}pfa@v^pO5I5x;zBbsA)Z)#oh3h% zUM6vLR3FovO=Yn?Jf%hormpIuM?>smh0Si4k|wAkKhPuK39v@c?TPCGUm!f^W{&(k zHQF_Rdaq$Ib1sgLqFxJ?+2KM8I8{Q8CpDpZls1xCHknxSqPbz(a2o-#>QTQ9>jzS8 zAegncEv}5#^X-f9A}Pf-L}mKd1+Q4hbQZE{HWQ{(KzRFf;f{5rDH=+hhRz@6>`6xl z4OVz>z8;;*xBz+Q#oWsynqJ3cBX4m0zLLfncY2?>=|&0_O0rmx)BR+i18N@&#zTQF z+)hJ9#r#4GG zlwvJIFj+l1LD9ZNS!f*k(k5vxtf?0$LzL^cs6|h{rY#k7_}G#mXquerHidFmD!UvL zEqxom9g}8OWmy4mvin6aW7+8JFnsJ}io6dXfj{4UeEs|b5Kjoh25bCD8E6OOV9 zD-?~{%R6;I@m^-PpmB5e`u5G+_qVU37_M_FPSLVu$qs|Q^E1)XR})QAoL*n1#@tko z5^<{nG>Mt4>(bctdq8G66!A`0a1qu;nj?Y&nG1g#t|{`w+`n9bAkxVX3k_;3k{j1- z*4>d7CK!Kisd33bdngEf&Y7K}6@nJ>8%l7x2MJ>&vvkv%fcer=*J4%DsCu8wQ5^b` z;UM1PZlNB{;*UDCSS=v#aPw2|cR&8lzuI=a(?%zEM_M@|Z}^ok46EdQn=lQT171GC zTOu&Q7^Pn3lWKs@Y?vCxn~hV0Q&`;j=rJ5naWxmr77OI=WF8P`#s;B_eFHpYJ60~i zidi+6KlgM*VMtj7z@1*NP&_85ltM-+ruwa+o~y7Hz3caO%jP=OLFjLc%;ZTSvr@7i zr8QhRXv>7dmXy}{o5?2#@p;63B%Mo5p@bvQDewmfWLpWI zd$1D@JoYXXu!!W3ov6OSsl`GqJPh5!A@2iV^J8N#-5CK%U6X(2K>eP!U07)z-xbX>;$}p^50SpNG{41t zgHCLAkA2symyat#Cb$ph?_V)ZjLD{$ln^g2=)EN4at@c{+8N5#|CKeP+86UE zJwKf5lcSZMCJz)ae|1O&A4%7cL#mC^4@?;tXflT2|1Y?+7`1`~j(i#+3ejo-HPfUP zp~#hCS!Zr_MPst<2FKDTzzl5Zh_d(^)M~X-7>04FJ6s|1LX#M|AHmG)eGab zkbn1&y{{`X1N@3^=C!QO!Q3CiuF+g%JBaByb9wzdIVAe>%AX44EfTt|HAtkNN%7eT9X!46{g+Qa6PTbUI)XB%?E~jvdW?DS1%HQT2YS+L z6A&o4x!;o6UWyAEOTo7EBdxQTn7#x(7c-O^1l%SABK=GXGAWq~AgV#FL#9*~oaj7& zH}qDC+>ym5QF2e((g5ml{AdL`$wkpc=7+RbFcn|%ikXzb<^aQmbL4dBc{UI^ zM4Y2hhw@f85O`YE(##$!VD;+Uyu~nHeVtVxJUg@Z@Pp!tpY-tTJ%hVm&Ab>B;Gndo z*yL{A4BS-`2x=nex&>@SxL5t48m1=|I*7^WW|1*{`~$EyjTa zEKjrXPVR)~4K1%L@#x;gztfS=E(1nV>E&VDgiez)SH=V zci~Kc69_geIW`zxPEDcV@iB+HapII4T&-j&Sxr(ZhU@v{?}w3>feqBL z$+@PGe}HmlX&h=pwJh8h)73DU94eWy1=KAP3Gu1VuA6kYgrujJA&fZ+qYo!4#d*^> z3U;E9WHv3aumP+eje-hgX7<>C9(JI8&k9D3ZhD3mC9ENK^zq~)UT`hPNAu7(D6Gb>z4cN??W`NtD@s#F}tB*iasUqN?i>ZfXmgBb&9x9Vnd;*FfiDl&Hc&#wK zugHmFT3oHV>BM{x-q1!BQ9y7BLdKeg9oM!w*A*?@CDm9+z#iC7EZhUZ{07_#ZrHn?NUe^wErx?pXz0}TPcbBl4uOin_ zfARUwWP69Ev=4>rcw4W*{iQ?Z;REN^5xf%fpllVA&kLA_<8IZL&`SZurZ~rblDQ*KF2xMaM|b41SjK=AZJ`3+GF{PdKV=+yje-rJ%{>$t*uJoV zkKMgMkxu?LW>7`!OpkM$(#7MU51QgrOP(qa(;IMym`)GK0x={SIMtrgL5$o*oque8$Jmx%F8cmWZpieMkDc%aohG`dCA#9p> zHHXzHv|rUFJ*1$HW?GO-Dhy4`4b%eavqHQ*t<(Fd0dY#;+*UY;N)Jii7gFDfXa9Nv z=@#)BX&%B9>1xUDzWN@i08Wm2zkB!YcVeBs+dN(G@MmZQF`PNcbYzgZBkaw_CwMiL=@bh#Ous6<&+c@Brn%>Y09()E|fZO+1h=9~5SA>=b|zzw)z z<}qrJ#0vEP6Zf`FZXCy&D1QnfHo`HwM{*1>FQnGzcmsn0W+2WB2w*s*z91-RY;#SK zK78?!W4-&^@AEvFS(Vk@7|C}(T!qa+byjy*S7l}8d+OWEmYeVpLxus zmu82H;G+4aW(@!eJqJdd*g~8kceZ~_1O>@SP#hVVYqSuMgo>t9^N1VCBJ_A45lDXe zEkbXorE-Cj@}@Fo!NCKS_^zgFWEhhQUpn69W=#(t)Son5Lr7&CXGZlnlE%>`0ww2> zDIL7k^c5D?PNAgm_H-G_UrX;&Ni(Qb06DxBDaI$XK5j0li%NxyxJ+w!pY4!JcZ;+e z92Sng-Do^HI+mVRGHWQZhmKc>v;nrgB;6;=XFNyy`P-7TUfM>2P2`q=Ui+={dDM!{pwsuubmIFLvuI?8~cB`mI&<1Crt9 za+xZO7l|OL<@I!VgZ+GmV1FnmZf}TTWxLcJ&3H0erJ<&Ue1#GI+7^C=&<`kQXxGQsC4D0|?&iy$U>e?<=Edoz`J-?ZirC0eoipE)9d~#8V7DB)Z7o{*9Gf!FCg^9DGVSZE zQH)BBkBhWlm7h$9m>pkyUIrKJrnz+CWe@aIuP<~o3lsefBkm@5(PObMLDBI4^ZC{E z_56IbzTJAHfL}Sg-CpkI^OsM*9hJ`5x6>UMCJ>oly9*ng%k6ui01L8mbEvaiTq`?p@4izL&OsyPe*RPO*S$?ya!qGuDtw-`v zrG2#K{HyjCDSt3x@G|9;>U)a}cgXv%QG#k$AqskNA(UhAXUZe=bSRI|Q}N?c;7_J^ z;F>TTSCyiiDlE1W?XZ0vCK?OXFUuRual0VI;sO$`Y3H&t$RBMywtLfs0d#KlXRSt& zh(BK);}{qYMKnlxHB2oG|L@RCnxf7Y*q;z4QC1SsGB6O`Olb(UnGR>)VGW5>#sT9$ zm}{X2I65gDpGMd)f~^LaXoy|V36ezsRJ>i7z740Vt@>V9=s~#0_=C=` z=PzuiRE-7|mqV@yBCR1>Dq8T{%UUqn(@B{?hr3Z64af(}37@WEH+*`{;~w-OMF}3+ zoSUs<(6A98J;%8+R3uFXF_@r+}Z#w*a-8JsW7-xRf?s!nme^}=qhQk-yFXg=Df zeC-46X~hNHeRfKFzJ6*|G33j=dC7|Mbm}CIJ|*`C6_Amm9=qIupfBuVk5aBdxQo8a z+ha)n%-wMe-+OS@$DZ%kB;O3y8cU)niDouE7u=F$9-nA%^lCnZ}#=TAVPZbRDVCxom_Y7(Nz2B^`Im^cO(3)Gijn{ zq&o=$S9F4=(oIS>lSXB@M&kbVd}v{Mt&Ug*eeuUKRMm*72GsLkCDwL@SVtlNq42V1+VX{`Aw^50mQ;NH_T5qvU45P(ynFYGfqBGK>Aw zsOJ~kKJN40v*Ky8Do_JW+%5mh@VE*Mlbc(n0v2~bv?-@hE8T<`j|5M|GK z4-IClM^&uzOA}mQ%4HIht!zv67l0shSQAZ;Y0AgPwyC4VHwaFS30jWl0!KqoMeA^H z%wOIjE01SIK6Z7HE8vfv=b+6;ud}nLsb5pL_yOj9xv{L|rO#uWzIO&eoNgCO2=OnM znAv=pR8c z#_>@Kgu+ABI8kbqcB6&=b;2aKEZaIvl?tH;($F=x$;UUJ9<*(w2VwDfCLR&kfQ?5% zm(q!LxwnCb7u&8V^g?D$l_t|E0UVgkCNND4bx2+t5|HeH_8guD@I{XZZ>dH{736}D zFp|0-=2LS)8CD0`FGhU9oK=sDIm7VB6v%^AF+f^Ga(YlN?Jl>d#TNU;NpA~N_k^31 zLB={u)8>S#6va?woW1^jzP`1o;hxa-yUm3H*f0Xl*}sj7=Y{Vu7s^yk5;{)j#Sed( z11tFd$ea>eZrN!C}AdDCpSOM^4Hy14M=z;4uVz!Mt8+u-`+>=Ff!Pu z-Yx!P3tb*W{H{Dx8I;mNH&*6ibN?M}KiH0N7Za+`e3l z>TiZvQ62Fp^F7?b=GSwlWpy!(lB{O7Z>a{LPCK4z*h>2(q~w+(w&(a1x~jN-@`x@k z{9yW+OAl3k=yvKiMHV1%%e3sKkJ2nNR(PQd0q%vI*grjh?^}BEaFg2pX?xfqB1K~`^Qq; zl$K@zZ-K04>Bvq(uh1Im+%|W3czgoOV%U1RYPfr-Vt%6XpNIkJ)qRJdZ-Mh}W>QhnCI0$eLM+uv5eLw2Hi1U&%hx10Gbmw-@iEPB;WmD{)Yre(T*{}FiQvf8p za<8YpS#wyj?4KBF)^&dT5+dSW`i?E4OM&OBs#rXUfj&#Z?je6!{#!t$}5BF zHe{@r;QzK><3gyM2Wcog_9K>?s^&PB?48b=v@j#Wwx4@tyVA}Ftb94YN;G>g-mL=b z4W8D|dY=i z@jZ%W0PeE^;X&VJUI)FEAvJS-;q1fv&+CW(6uaJD@+X+n7P6b!1EZ>=v@x)2TbLlVViz{jc%ZqytvFn;j34h3XKkgsyfNH)R)%Ye~ny z?-e(k_P~0Z0^h$Ewjw{Kjz)`!K$>5};ZR%1k|T3J(OdQ$WK1T%Ss{K^awdZvzH3Vb zTC;w|M0;-RuJq9ooX;h~bo{+d-(i`XP%3-k#sG* z2#yjjF`TGtGC9Wg4W;S=#BJ}CI1hL4^~Wh$zNBvva>#Qan9b}T-iKB+aK5n76Er6? zH0_i};@cgo2D|8~)Xc+#B>#}vb0o5m$9!`|L#Ax{dPPb40$zp^uc>nE`5V+TQ73!% zOiUN;v5A2?Y8WU9r%rQ;PsA}WqA*pRsb6Z_o_2y-anzhDk^E(^!=+%FhUx- zbXU?o$#f8+Hi)ah5UG6|POuGMv6yI2DN0%yFb&<#AF6E30*v*(fbR+aFxor3DbT@O zDVV)8fMBa8AlcHYSQ1CKbyyC^rv_1pnP;N|bt8j?h(Jgp&%XGUHCospylfzkidJ%y z?OJRZ83HZv0a3ojO7fyO^B@M$q(Q0UI$F{QqCOmPaUG5qOri@0>--Mo;z1F)2T*Bs ze+TRbs8boluta6DQPZ*=us)x{I|SZRkRmsD5A<`zRI%I-lv!{Ck_rI{G|@0X5#+wv zrHG^NrYhb9n`8{qU>7ZTC5X4PqroUDBbNr%EyTp{ZWpBPmc%`= zscuF5f@2|SK+r|Uzq&A0W(SN=tZ3;8CIWzJ{1Rn|@FNm8+N=z9(H9nJMJ#=z!U3+b zcme-&JK+jz0o~e22+hX&$jmWb?&8$Mh-hhW&8%NH+p+`Fc+Aja1sRSe+uP%(O3y(7 zo@tsn6j2vTLJALJ1RuE7e(2(8CX+1yj< z$qfYr-@cmb@UWlyE+d96bA}m;Je1LuLc`Y2#j3%>6ZW3x_8N;QG)Hm-vePHmI2J?! zGjq-)6c&ec1%G6TI$AbR4@AeG&yhVGwM8tE`@v5izWng+;j81{e|vm*dU6U`{CGS$ zK0Tp}_2gJ$Ihc=Ju6R^g^A5y6jzp6l`4a|zQp*kMfjV$7?*(&TRdZfn*t&yvMWp-s zf&U^ys5ZIdx2Cql%Lbqs^+;Zkt_GoF6olAl8Tc|mlh}JhOXNj6{_4J(>1}H1l zCr?lLqwFnH4IQcZ09EU5$p89g`uM34>+O~*vCBXfv2Q(w!vkwm(R|Ea5^xtWTQla8{;X0J*$ zkuSyWQZnUQW{SRS7?lzcTGa^dv))rj~sQ%s^x=?wCg9DLNCw)}v;8zc9N{R_0OJvPmk|N2QDjP;)DvDT9<2f2kpS5By8TZ}Dm(DEG*8wG8ehx2 ziEnF{d7y(9uTVS2qWUeKK%)WGUE*51N!A$46my*Idg<)Ow>KcE?VPBi9OY9fsZv`X zMAtA@dc=_jl1XR$_6ie&7KQ|eaE^+`Sej4B&gTj0^)szK#X zf$3)vG{jHq(yWv0nHCW8)}pAbZc+W!X>^mbuS&Gi15IJyXh0)=5_}C_gislHvLa*> zQ+M$SNwm(E$dvrTB3&Ba4R4`C(6cL#zb2IfL-``*l`2vTG%sFYG6$nch!IF* z*On{ZonFPFwC8JNiwNh4QuP@(jtzOY#gBNCIB zzA)aYWx^mkWmRJjSf|_9r^}t><#Eek`-LtZq%SkL~GE5!*FjBaOiu6>2X|dc_?`z$FTFwhREa^V78N?SsX_h)SZ~qKc|3 zHU!T429`mgdZFFdNg)v(d=W1|T)eKDq%g&CF=`9-#mXs)x>Y3+nEj5!Qi;HfEn*F7 z6{4;j3ib&Ve03&5_^#hG+`$mWXv)N09HOP!*BWO-^ofz$=8}5SW!W?Hdfm9g-=824 z?>F`btaGg%YhK?<8xhg!!3*!}RQIg0?_EYgcoQI>bDkX3TN+*<eY!v!ONJL6KU95h;+Hd4A1Gm6N}IK790FTNm7 zMIkD*)CRQix5V;sGHFmQBkUCioaJgp;6*nhIDasKW#(C^HPz5GSGuDkDjEA5b&Ukf ztgT_3Deq8zEjgk@<-js6zET~azB7#p-r!9}g%+gVq8QEqz(&??u?|o-&_sgiu(0pn zP)7}&_lNL}{`pT#Z#?Cz5j+LZf3PAwt`F9u$MwN-^tkTT=s`ei_uN?enA+4TB^u<4 z9VhO|EkORTChT}tjpUM0IRMU=F#wtK8iJ>}H#@kiNyb!@*yf;t?&@rYm;n-53TbZT zgo~0VfkgDL>6o-oMylP=>AdfMRUhaA9k@yyC?26h0>V~# z`@+usMtjUx(+7F`%Bz*zZ{1V3xGV$M9BG&58n2#S(Dg`dazUcK0#PjxZi9tqu^jhN zFn=UWIBdU(%Z*bU990h%+DPUI)#_2S;b$O(nGz2aJ4IcPCpd#O$v6OIbU0g{FXhDF z(uW>cH))OCMDI>4(bAlW3PrZmv60QvR1aEO@m-ggODJ6UNBPESagGM33|&%*VfQI| zq)X71N4f+ld8Es;Uw_f~^w;~G{)ShfLh`RaXmau!-gYvkeV#K0RuJ>)5ygrn8n{X< z7DGN?LE*3B6{Rpzy-;_JbBXTE6RosEiW+{6cocXAu9p`VAj<8&9n{y`4W_OaW`$na zxXftjU9su$V3>}vEuJRRam}A;3M1DSb=q z81vr|<=xb_SAaifalG}$2|;J1(Es3s!a3x{P-;qfSBSYJ6Rk3C2wKoHa#JC6!=lM? zsUih{f>epDqt^@~(9QPP>E>iw@&~5NQouNc%%bXfB4rc;Jq^rIPZK2U$Y{*P!VH($ zvc-Y4hV&hLAi|r)oJLls7E~#hsheE<@rLHk-ytK3YZc7J5~?9giFTLBQ<+xT^;S@* zA`={@+QlG8*+?QAO+AC(uRVt}DsphcxJC!cAtNo&?E*eGx3ItMMv;<*F8fwGXk>TS z3worua5*2bh9#m-BPOwkZKhJ4lp`UeP#hRui36}YL1Po-P=Y`+QkrFw*3zpjP(xm$ zH~lhp<74r;LtvfQB|KNpii3<*lee4JYRl2Yb&b|-a-J#MxQRIK60CgLHQlPI&d{r9 z)x$AB=^5CI@xc*x@9}QcTDx{4-XtqgJ>Xjn8gzpFpm0wqWyVvwxZkf)13Yq3x-FK& zB!`$yEXCQg0hZ5On3GI+!bVHWhLHkAL6Oe_J;-(#K8;IIi6dCOpnGkS28lPa@8pCc z{P=JF2wUjaDwCf; z40bhkwDg5G4={BhV*uDdpN7&dh`(?%sUIzJA&xyF%YwV|*Q3bo4}%ti0@D~bv-eaJ zFF6Fr-<-A$i35IY|zYHf%S$UySDA4rH_|;1lVE(gt=fe z;r0=y=OL#d9y89w96pG>U3gvTE`=sjhCF4jO%T z&v~$V(p$^sEp%6;fkL6mFD-XzSuBfskm#EunMIRaB6igk$*OZ_8-vJ$+-HWuH;m=2 zIyl1oxHB)TPB$A8GpJ+PuWcaF(!_%Uhp5^2bA;+#RUvG6BqGq)HTHlOqIuFrNjgnm zO48gi_b|_zH)+1Ii=)j$4!YadR=NQ7vK@87_w=!(WuuC`;6r-qoG!HDBvfVcLhz%= zTbi0my9W%HRKTQ414j&V_fi9jl{-79XEllfAaudP1|dK#l;&`EiNt#&+QymmP%Z7g zNZT9dx(4RC;jurUn6}_B#2wX;%@%+IvVd^*++L6V{^8x5&u`y7prv!1Tw70b)q$Wd z_{pP372(4jTyDgH=?VrvI*qz4Av(@qEsKjawDED8iux3|mWQalfFcWNLAV^r(<4LF zmG$n<@8AvlO1?#R8({PoFTVDb?BpaSE)*h3%JR%Sa(8mGfKaHvCL*TBzyAm92IB>8 zHIqTDcTo@ctfJgf!X5RlI5Odcgk7<5x*Am!8-R*?@#+@~s6rr95!w_ZK~_ zE~m4?Dz@99lvGb;DmP#Z(GTth$q&{Twp6H$nel{!!cNgq1=7!D()wubZVR+%AU$u zD_zm|kYq7|7WJ!imhRD+fe!jESF@t>1~8<=#%>csco8ZfzRDdG@8;J%MyrKw-(To3L`VI#-EepyS;(nOnpYkqs( z-CbZ>gWlYN)hTM)u)9ORD z8&NJyRFh6geUhmGiiA%7zyx$#lgRVTbXUK$DuJO68hnQ^AVqcuX$Ly!Mnh&-6FB!T z3620Vz0b(INFkVB9VC{4_K$fH7SmJ(b6N~hlGeH z1hh!+W|=4||ImXO%XNNsOXiQC%tXNG!0+1;jBGp3-Ob53rj=jMc3-@!f!!g;a& zX4vu)mM*|l5p@80bsk2^%kD~cfSMdXj}aQdGTp0NC@;W5*F%~YR_9M3*GB2p>}~1Q zSmm=0cgxso;LssEm_w^GKT?splLBSZ7LQHihm#hNx@P`;Bc~lw?`d}P-u10Z@+|B4 zYRP0pGyCIj5i^{1M*6_VbVlSvlFmqs32*A?jBZ{oVd?nCr_T>RuOB`=e8v&gy=07* zX$){Ce40e@TUug&ho-4Y)AHy{km7ilwP zZ*hxH_9-*sB*S3kAi8TqWaxI$OUa+oXaUl+x!p)Gsm;1jrp|KgrM#d)nGe<2eMh6E zyQp)I6dq$~;7hAMHCz{6Juxmhj6y*YpIda#K!!|=?HB~hJ`MIjyr1EI%cxw$lsIEK z+@~ULSnVJ4+k+oWy}^Uz;x$>#8z6P&J^=-1&Q+9xTwXk73rY)kEq6hPAbMG#IE@9D zlEe9^dLdJp&A6*|N>qbD8%O0P%>IH^aOE{Kedv%8ciSaF8KNh_3*WN+L1T6X*LsqW za*bRZE@JeG7F#0Rbu>O9lUZbTL}peENI@ zbwa8dzT4fCvRMEc&mj034JmDoTxp}%0N*(r4Bw3ZRe-drcG%wq%PsBKARYv$JE4U= zOYFNH6*Y>o4qQ{uB2&uTp|1uqyp_ml~0sEkW0SiVb!+(161QRbw%c2HT`3cjh z0E|q(rLrrUE7)~W5ZwLzaRHv1YbNf>*XBsMZ(03tgkUHi-+q4BZT^P3ztfKoZFDz-7l7I#^2v#?io+0_Ss&~_o{>prs3{(?;jq10`-C~vu)k3It51@s_I%y z(r;9&=oU-RVtH3CJjg* z)5^=2%kO^~%0wLUwBWjrMdX)Y($AnEN19<^^z{6-F+db9!JxpUN4A$i@>pO#qvWT# zXEqO?XYW4z_}BBde}DT4k-1I+1p?zUqvJ9ZHgIORy(wE+uNgGuz((poy+^pGldIY= zoUSz>b*8u>T@qsIb9B)m_jyDk?CYc_NJx12^yTLVm3DB(s167&ytMY+u8@)dwk5<# zY~iD^yjg))f4RK59vNfO!t6P{wQmWKzU8FfR#2B@a<8rfqM-0h2j4fugHLZE}H5dZhGhJVqnLfwZIh2mA zP>}$dYD+qxv=T~Fq3oosmiy6K)gHfslrZ1z@I|}%i_d9;X!d0_HuZPV@ zc;92x)m@+dzcdlmD`sKSdCGGXzTu?^*0GrpdY26`&!C-f%hxW2Rv}$l4AGH6L{VW^ zgw^G8a*{kSxS8E=0802R)}QruU^}hiS@x6?N|;Vah!q~^Sy~9uCnOvfB87d%dlv($ zXTT`!Ir3oKEug6e71*7<{e1J~=O2)tv|a*t;Y@cST&e{3m`0U6JJVAY{U1!spcmM0 zu*(eE#k!y;Bvj`Q@80|a_W{4hK^xq}mx;p=SSs5Mj+qMt%|oeVoD;clQf;`0bY%oF zrHz=ND{ha%@KUhw3FJbYSk1P3)?_8rV0DG*42+eam>vpw$K7S3o^1nr!lhX{^bE8ZA)zc-p z3e%z6;*q&Z**C^t#GJd!`LQ$Gatzt+{_Ek*Uq`#$o6ny=zWw0~IN;sE0k44-wDaz2 zg@qM4U2ds~gk`i3*qJZq6FY%vN}vPSd;^yQ3F47mwGR=p(K`+e|jSF8LF@4 z`Ls#(DtJtR%yf^ifiAi|j5s45v{ZSc)^JH;>531cQ~~KW?R`|ZV|soCNK1mxz8=P% z3mNScm~;>77G|Rn>%xa~5y9O&;@>r-tAh~{xkta!DTW!JZ-a>%V3l58<2)0GH2@?Z zrSXBXOFI`%1ku!Hw6*66Tij`FiFfWK>lPt7%Yxtk)&5K%dhpdB_V;Ta_yyMV0Ak;G^X+wFEbw`Zi!68fV^RmP)|U|K=8qrX=(@zG!|}-mG7U&5MR6 zB{9t16>mTVk5b8;vtGm(2ooJYfX-4gZ$5wcn~Cm{1`r0Y6y}MaHIE&M0tDFPc&;a8 zZxmf9O+8XeY@FJ#J-xs*T6H%CPE;I;mL5mqaPE2{D3oLoQz_OA(36}=g|ccd1M9Hv zi@OR{N65&gY1nG+Q(!y>E0{mM^fXV-Ww;(XTKW{7<4<*rXV>6_C-|m5ywxe%l$%{* zBV=&mYk~jAk(iZK5%*&5NH~@c(2iz`b8C9JYEnq; zAyAE-f!__2$QnU9w+o+WI{xa0nh_#10Uc2N5OAIxZC7Js(;cwVy_V(caRa;~gLRLn z0^f}f$Cf$%qAlaJ!gFM8E|-ffbT%VhHW{>`b47jX&i7;|GzD}HQ0h3Ir^?3Wbdo(t z@915hD?~z7DqUtP2Kprpn7i53o3q)`rZGi!K$uqxvKC5}oNIO_oD2n>;mg^;cmof+1LUSQ8q z?3RiSY{n4GcIR#Ev>x%TGtVzTlaQ0aeZvpEI<=VR0@8?_r$eeMrGeVqlM*G#s1Mg| zL@H|O7KPN^tz)gW{Sq^~jdgkP%=lDjLa{ESnxvtmGe<6d;f+Wq}oVQXTu zPenN2wLtVV)TiJ}JXQ*;p|igSSfS6DCk>o#ksq5svLmO>w`b1wQXM#cO3gjw*=41k z(NjxGLgvOktHnm*SA}U}NVcQEizIijW2Ct)A=*>L*|EpcLQ&c!f(ieKlX!G7ewi;Z zGW!kt=b)&Gsu}Qsl+UA-q;CyA&32NdbB65nQVRa=Ma+q;!+Z601JKNR7E7zxQl9Z7 zLkmz5k)s;Ft;>F%HQt`6*W)`7H+LOH9K!k4R(FwikS8cGEmI;rp;6>vK!Rx1-d3>X ztZyR+giBuoU_DJQH$Kq=aJ=Ds)C>tAcQdF~FR7-Oua`6AjVZ=;VX3+OX|0LvxCR|z zUt@XfbEG%=nLLU8>|UX^q1D5woqHPA*azongH-a zxBpO|(TG8D7|j-rL2Kn;PalANgISy1oNDyP-T9Z_KT-}6CJ5)IFn{TM=5|j_eGNAx zdA<|65|tlX027e9hB2c^IU zu1^o*iIA03v-E*>v7yh`OHE_y^<}v66Q3To$4B|}+{s=#g}{3Ywg3XzY=U2WnZ$!o zU{O+Qd+0_|gW2j1&i5~;YgA=7QVm7DO^>I@9E`gtFg@tUzr6Wq%v*5rN5-y|X8nHO zxjyO95}Z6sxXXOoIM0Y{cg>Pz7?-KKJvW+ZcUIGI)-v?g}a#P`M=u(%x zE!L8`Sx?Ghs-@AUb+Z%?IO}Jl!K>;IBEuToML!&hw91JL!fjr|FV3^!m8PEj^7d*w zMN)B8M8UsDZYA$rRT^?o5!l@6zZmH;Ql5;1e$tHp|B`GBC-I1&^ca04_jpP}H?|tI z$@sGKIdUo%HvfondCn2lNfJe4qkAYUi-&^o9h<>wp0f?F1CJEh(z=Z$PP%n5V}CoI zO^XR5rsS0<&5Kh=97X7M4s8RKW}pz5X^xG|d+@7{NQ^#uG{GqEkz%o?7u73WkTza~ zERJ@D?QoA+_J#(Ls2EawXgkTa7dkh(7%5Kv)U3AZAs@H42XxOj=Vz}|l?2}BSM??^ zZTePJy)F#1X{=%0a|T*wz^2(GaqwPt7b51uXCmMK=neCdE1|ydksB-qUb=Qsg2s_J z9lL#?p949(#AYrQ#I?ASu3W73s6fNBNU_lhLcjn8u0uLiHzX$X#A4MqClRoskGRNW ztzLDUgx|AooYP|y{4FuD6%GOqMA2TObY+rfq>5I>D)>K2qr@v|C)pPUOd}^=6iF7x z+ph?+-Xq@{0XxvOO9I2w(xo~k4=C}C5G}!ZUTrYq^($n(&kaF6wiX*4;wYp^)LOhh zyIa_|6~nyZZ+m?-Q1X1M4U{|lKToaD_TZqSc!&dk`SMtUm(hZk!KU+K6*Qm&m@TGD zIO8@`S_F{-*DE>GRk!8BtHMrs8d9IIokc7+nangqv8XXzyiD>gmq>w85PIu8r%ReC zt*?nUQJ^SVf@8Cy6kxTi_D{}1IOsa#KnB^~7Em|~uzmZ=nm9<)WP|UTk6H6)^=4zA}{;8=!G7J zTFm9bpcJ5r*Vw>l8)N2VT!1>NIEMNj=wOr&)*Hzx+^@=l!-X@OSqWQZNvH_K$;rmqxZ^Ut;0Vg=d z3V_|MrR>nCHSF{~<_zRkZEsX0b_Z@M(WNjbJGK%R1_%mRsN!Z!HQg+w;MDF^b`1+C zfl{zD+e1C{Wk$YP6}bdOM68;Q76nC|spJODu-FGZ2az}>45p{ngTg8O;U34X>qECk z_I$byu^p)jg!XVn=k8@u3RYJgFfgfsW43md;f_tPr2oS)T~J-?Jn*a0fA4m&Q>(ty zJtIB7dK^g-O}Sd_zO)!$-QGJTJd$A&sP`RkkN-$m#|g&-Ym%mzVBl;qUBinJVwKjp zUU!xcT?qKM5ivl;C+Nrxea-E9xqS^UahJb5aLFa5XbIWm90#@t1!$Q^oQ?vkE4al` zbD@){cU1~u9#*$6i+t#ZP@G(ZXtm>TCFKT%Kj~0zyHt_hwKhH%q7zl70WwYgKQO8| zieUk-jA}iv<_KJZdw|XDq$G^?ES!VpodOG7e(?e{30t1^IvOe^TClJW@+f(mulW`0M`s}9D$TpjsV=);z`M_KGQ@ew+%*r{?lu2(hHwkvVMbI+pA+H2Ly;qP)q z{XAv$`Fys#re~5x9+(<<;g()@?DAIu(j0M8s22wLDS12{TN;o$^MqTlY{~ZH+dnVg zcOKq_>K0QGG0`BJ#@Hyo00VNTN*B=ZEs&VO|k@cY?%Z z=#nCPN(;ZAw9F%pFyKdE$XEIAz1SELVf;T;9 z5DK~d4ieta*9cNhNT_ou?35mjQJTKJC@Ac)gLXlf*@8xUJP-!qhSJVVBvqj~CR$bS z-e-bPA<07JcJcD773*}_p6N4*15mwq&72!+Sl#H&3& zs{ocLt_u&X_53AjgYDplB0m%O4$5pk*h#l@>rmDGG<4qj0T9k$AhKw=G2aaf=G-Dp zxKGXdalnErL$p03K6AteMnlVQ>{X)A@K|~z#Lj5A`e^(%K` zR2R5j)F>i#4Ib>~T^htHPe|8IdVz+hMx~BWTaiVJVv&zPBR>UQsq0cqwDiVSb%Vzr zOS#ig-jwUQhuhg)>vqS_BxKM{0iJfp&)j&&ics$FZoryz=e25>Tz^vwKeZA#7^qKL7pjwI>1cJvoagIkZRa(AggqLxz zvztXMJ9Ym(%8PFu?j~6fC-2ds-+{Rj=_KbI(I3=6#%YiB->Jj&JDuUyJ zdeB1!EbDCCbtC2N379sQZU2euYeFw3BL=41>jXe8H+?lf9~~OWFgb40HS!4Y3QX^) z{DGY+jeak)2>WU!!Mk$`j0cxMqEzLGBO`&HQlSCq#nRNe+TW!Soqrl*(l;bNqXGHo z@ls?Nu_`?H3!~nseo`M;mMPU`A3xhZR+t^&QkmTz?XjI04m4Iuuk7!1qLSc2!KpJC zc4qXLCke}KWXGh9?1=1PX44roV!>IE)*qoI{0Wd&iK!lcQEmhfC2R(iqVqGU2Q4T! zr-+CsrtF2rsgLXGC>kXh77MKg7Zko=Fhd`G36>Gb|EQ^ENR|SzoaHu#F##(^L=Jb~ zTEz}-B9CtZZ`A$hA^je}9xcJs0asIgB!9GK9(d;G&+Y*o>&R0R-Azq-e?B>ytw-Gp zw)UO@aKgcKak;?s*fi4OARPH0bU@du<;znhPiV9_TN?5zjMz-JH<-Sq?V$IYs|m;* zTu|bmZEG6NORk8bh6B67KD1N;BW^&ZRqO# z@*H&*TqRm`-NkmaECFkw5v+0jrH5`^ZsD$mW!l^$1%`!^BgThQyKpw5xOgTJx5DiG zz+UKl$U%N@e)6lZoI=Ed z9>$`!#37bz5z5t&6sWq)pCglL5Q?l!F{~~DvwiG{4z{ipYwS8S2yShuwIv+my;dg!@dd5UE?NS#d!lBN;bG#W@biw|{>7`OUk<+jpNIKJI28-v8;hcD~U}GVa-w_kr8&Du6OrnjZuhv<6&X(08Uj@RlU}4Mpkez)U;;|?L+A9l~s&n z5fG2XGtoHIJmp+*1k_AcphjeehjEYaZf~2KK~|7P9x<=(SzD~^Y2Dp3(HXbG%ftHW z+(4tC<2^|k=_fQLY(N?Xj~>6J3TKHW>vK^Bq%XnBf+6j@X-3u6VITPhWcu^vMj=r}@$THb*ElW?gW6in~bO&W=ku8(C&>#|=Uk zS9dI&Yupk77zeJ}+IWh>a)xBKpuqG_Ev4D2C(cbrOK9M(kWD^I2A?A~)QAw#R~Y8| zFD<&J2x|`3chfhP4021}G{kwkEytA3B6qH4$ zF7=l9jp??FhQd-)Prx|Mw{RoI_d>}=Et@zIM&(F;ObMi|t(#5qYXv-Ue?T~DrXVWg zu{`__tkY07R^4C`sD2wYCL1e-R}7J2PH=i5oAt(ZFV@gNLZ__H6Sq>xseF=x&{6IJ zZXjM0K4dz_gy6bLuQEWMD53-A7W_}FnR908azaEDJBD5(vGl>z<5LVGa7808aN?%r zXz3$_X4wGPm5d5ZkE6vg$I8;jOoYG@c?e#|0j8MZw|kY7QPb;PlT!9`-V_CG2LiK$<0x9#Jnwy@h_Czs&qC_ep9s^ud(8ayg64@>wFkQEIu)@pb zg8nkXRJ@ow(w421GjEVNy40036JA%%rm&IsbpMoyaC2rg$EYL?>u(o?#=XNx} zToslPL~;R9Q~5w?P`J6QRGL6jiImU{x67nbPj zF%7P+5n-q*f6qMntBxW}0;LCEG0RZOqrtiIYrp~%$pRwaZ}L2Vsy~W@Sq6~?8|LQoCV6RmTr{MBs;#F z#Ux)*Kc4h*c3EAT{9g-0f^tdM7dNk651J^Ur_#`0(dH6lO#u!O`2OLg2cmW%z^Nf*KCY3RdaJ<2T*iAnD2ZfxYgl zKaBqO=)eAg3JgL-p*j60W(+Rqa-ChMCL2VXM-wu}KrYicJ6|s--i8k55d{#Z&7GQ~ zcev3LlWL9k?tfJ^Dx%KFHdwXH3qL?S3?C=Js|p~ z{yjaU|F}U;r}cb`N@lTHrTyt$RxCBJ^lEkPM(1K}C?@xIJ$?0PW5HVMQ<0{5v&2LN zLxgX5cKGd;oe-wqcUL@bh)zo9f&GjsCnyxNbuKYPf3qr>^K;gV>S+WxN>cQ>2dk&3jLs+WWfvag_fYZr>5_MoY6K3vZ)rzlMYjV4W@0Z zLoON`Gk4aI5Fd8h?qOwUWizo>+La^Q77{IWJ%aFks<~gZ2+A7<7gp0cMXSslv=@hF z%P2ba*a4iW4A%5j?Hqo2#5`RA_FOOT2}icBvPR3{o@^=YSY*L>=E5xR+;z?2;hUal z(}TIgf<+t8*PC9jF|Nr2w2kh0G?7t+099RVh%4?O;>rLSm1vB?qOYztyUEL^$_468 zq_sN{9h$Gm4@7wf{nmu>gB13P@E3TQ15+Xc0#eaYijSBnsFI;BfhJiy2b`ArYv1_D z%qOHvw>9elO54J=N>PwSv#z3xnxR3n4q>Vn&hPi?8UjBdt*871qA1463T^E3C#2jn z&?BENPSBpZ8KHZ==*wLX=vzezlr@3iRgsh)!&%sb*0yFKm?&!9SG8bC%9DlbIQk5# zX|+?yBrs64g{U@SN*3S&oOqMbQU^FH!pQo&{}>(oAG@JeDvDEB_GpCk>QLjhH+%H) zmpB|bL{e8M7;hoU-`w3IS=i9UnzOm)5pK_d;Y7oH5vbSr+dU3-J(!b7Gr=HtNc$2k zha2@Qu}JJF_Z)OG2Wo~V@8(c2-WBgH=WP?fNEAr#=AM>Onh^QdC~)UmMd}>ZlvD{C zTY>4(`C!Mn?#DV$b(mx_a6H-G!bLqo)>)J$teV@+>f^(wAK$!t(6@!K6_E*e&**?U z(7?!&NTHp%9@xG;rSv(qOoaLjpMIC+qE)7Vb*1Dwdf^kBx%<3HR{*RC3NwKP(@tt!G&6M+L*6iE=K&$XlU>fHs#w2Z7zIU>7hpe zml(Qj_grM4b+?lSuU)gY*ky(o`JHLEN9Z!4x}~OmN4A=j`CUt}0ewf%h%Z63G}18U zO&7(CH`O#(ZgoPXgqKpX-+^4HzgCUo6pbytN*9rxavPK4*=9f{kj&Y)7+ns@Li>B}-Dp`?U|0=;2?NrGxhTz5VS9Xe*wD1xiL z22Z8}vxVp)A-t)Y_{L(*6J_v|70x$Rl`}eEvnSl)Kf?v_vY2Een`6W?NV^-T8o}7n>{gP~*i1y^#W>>8Xl1 zYD*EH@`xg?_Ry`G?Br6~-D&|+=W>jqN{rV=XqRrFLw$<}wurbzl#5o+6|X$*QF{Y* z7p~?Tg}y1JfF1b*0G%q}xlCsr))jF(y{rBn$Rdroa%8XO`O^i3?cSZm5kv`-W{3vO zMLnB5`=v@GydU{*Of8a9y-FvS>Gz6NrZHkj%^)t08!hDjsIt0OIe-qi%xdjt7-UEO zU|dpwv_RTmQ5vTV&~?KdU|mtyqc%xqOK{Ube!vyD#dXly9;H$3%9}Ox4wZqt9e5&XX6qs&LbH0UX>n}$uTykU@cyGP+Gk( z@EH)D<1}M{ody;ffp1M|Qkp)A+e_5Dp}}vyhMDMjO%d)a?;xvQU}>$i3&T=p4ZWfY zF|0;*GkeXeq?OJ>_2GJGGc}9Gk)Q)ock#g~Con=&`j>1xbo+9hl+rf&aDo-gI;)!2 zN%(IktAC?6d>T;->+~4$;y1Tz@XSggdi?uuj}K2zPLEHX9gio+rzgh`-yBVj7m;ki zeN(y~&JyYhtWK~8Lwcm#gtCF6l(Iiky8{~9+{n_!M}Gnz{Ua3bz-ugVA@A{MkJH`^ zo;rEeK89!Q?fNwp6r0PDkzL<%J#Z$d!`|VBP=M9%HN8Z`6ma38RzFKl?T`DkCzp0E zpsMJuUIu|GCUW-;$%^XAB!V?zs)_Cet$Q-azuqt+m==4^CHyUH_eH{=qE_>hOIx!7 z_1VH}P`umart3}DfYdq3Th+O$i9=17ZLnm_&%q7D#(fXJFsJ|Is`z*c)!U0v{b@H% z5hIGyh?~!EK7aYNyL$NaY5d~Ln~(4vTzq-=ZnO!w5|Trr+ib=!$WXwp!BRA7n8u$6 zlSd+Fo-(=mPD12swT8-)BcoMN>D!4A4RFL_r`Qi-R%Qsu$`es?_=2b9`+ zz7roxb9rfm_B|$NMfBQuS=;eGbw4=-0EE zzYuq;kINS@ms_M*srHkeqJ9XRQPNL;@Qw>xWfI>~4waXE7Vl8}Zh3Ko-1byvzye7d z;=!Are)>rJ=)sR4-hcW$`tAp7YWHBKy627hSD3Bay;e)>^AvXO_n)wAOKm{73Iv)0e4D~L`W|a9Lxx%=t3x`1+dywmkamy zm4Wr!3Rr_rZ*fBWf!SeoV14xj`Tuia6>C;s5USKm{#$OA-ZmM8V|Rg>k$n?RX~=** zYMZ|MFpqp@F+onfdUmud3dE$pEg)gxBgUkJ@B4b`5xwIFIOduzp8lFk zCcRoB|4C_FuMg>UMOFxYr|{sX_i5xS^WUCIj4gODmt125(3?kqXRlY&%?4_HG7_qX zeLg?CyMTf~xP`POIv0B$}nh>6ybd4g_MkynhDN=*zVt8s=gNfT^qgCOy$EpP* z3)KatX|zS9eiAW%FHE=4w4M;nEhzG;q3QX$9%balbV$Rz;J5(OySW&0D|L)A96oQ{ zQ!KlKvOOrr7(JbMPbVcw#Za>&{fkf3O@oi*x5}n{i(_$pccZ&zrGxQTz!1%w$sCbUJX%^&KbH@Wewml#R(?XbuDPmy zi6O-zHospQA>)Q1C77?EG~E*dXArH67#Dg_DDrwteVmh8=ICWXA^vCOC@o?Aa)x@G z*#TEvEh2^CM@3LtZc8|Ofz%lfNUQPF$kxoS&bN#ZxIHg^W^}(Pnit37@If*J?_%oLvXp-A(;6{stlQR>dyrGpc znpBcHWsa)@@(GcuIA@6P>ENCqHfE4E;^qZD16tb?t9}|zHpI^g(!=?PqVWTY)x6&l zFv}#e0%rb3Se#p!o|dSsb5>5Uq`8Fv2E8@sx2A2iR-KkM65jZ4ujn}l(w*=Og9eC> zu3*e8?-vm8Pxhay`(Xh5g=g92)wxZIJ02N_m7)3)^Zy5L6{(Qa?6f()L~=UDckkFjbcpK^*kf5KFwX$p##(n!~oH#OS;-P8oO1j zg{k`^r>$k@4g01?ZR&yk`5jOluRDHtmWF8g+TLBhh%}Xl^}t4Y0mrQ|PeY-0;SQ}b zb>#;oO*i*8r@i^J8HM#aG(MDQ`B12E)SRq0!SLunWF#?IC3%OHDBS4C6SM6Q_dZb< zkcP|6oLK}5sqnVmS`egDN2JNA)IkzeSJYPL|sjQ-cY#SoSMGSbQBv) zgw6NNSBE+ta04hFIgw05bUH$m(YF-J5?A#_rpo|#e7)(b^*|qZz2b(slR*^Y>u4bx zATk58o8$~%Qs;b}ek*$1KI8~%R{XrpI0$Aye4u6mULaerfBaMUzi5B~EFGtX#T$a2 zJqn#Y3O#=mT65eEy|;3uL(mK7DI(iJK9@-+;<{F%-St?&r{G|2R~>ZP*UJ_YjwoyR zTyIvziXK$4fz*|EZT}z9esxm045Kx7f@#)r*_&F_eOU!T|-QE@!O>S27+xRN- zO`-m|At7u*8oU5v-dVB55` z#ey6n?EQLm(qqU;869LVucmeAzMulZb_+WKKGrtNF}R>DJR)J1OUw=!fgV`TbgEFo z(=I?1Z2o9)aw`fX@h(luki8EI>e4MsBif9`qZ1}(4XFb9{l%z{mEk#fbTz<-q(jG4DSSx zPc0vV*9r)q5(10(VTz9kevg(gj?T=$x}!Z>&_3{qij~6cMpVZQB)#J zy&`T%*|<~KmZ1mInF)&6L)B# zEr%OlQoy=n;KW7B%ed7E+n!E(fSBx6lz1{zN@?;r9saG@90#>~p6{(p>k&zkCYZlO zj!LUu*K67nO3BOmm(>IfD2e93YOsEOq_g#;EXdP$~RtF)HPz$6{2B zqm#A74ZvsCu=&7Zvt|^MgD>2$C^A`0FE>k=zM7UTS3NMyssr9i^1E?_A!o>VUluct zd&+^H!6|$_s}wV;KYbmD>~Q*9ZP(|^#bU?gug8jipx>RC>xLDkTB<;VeY~;(U&#&Z zM*&VCQ3cC)|I|1+Z}@AwZX_z7#86`tkBQt{L_x1BmOV+Du0m}Fu}$yK5vn2Qhe(*f zW4eNDcY@N~PhTQ#9MzgY{t)U1*HzR9K}|4vG7?sV&OI*uwEo8#F+Zc-DXvi-8rgvfVx4mYl=Cqph%xY zS@KWz9iFRY18T&Y2!OQn&=M=A(ui|r1Ad7(-fMEA7{Q2j(phs}hX{xp{b!(&9D&V) zE=l-^I>sQQsii$(JBxnp2!P;~P1%()AeuCcmxA;n9}q3_lXQ^2H8O&AqS} z99H|{UI4N?_zp<7)$WBj!N&rIJW{afV#D(sl7mcUfmK9QE|A4`V&{ox2AP<}I|>4M zfvwWi6qQeQFMlxODb(ljZ!UoW_SKqJGpHu(X+?cuVDqUY#2A1QWJ{oGGGv>G#k+uO znpG%U_xTbOo(#SQ&Xehv6ASvNi^<&APg6;jWlSt-a-XO2Q*}W zIr3`Q)7Gmw1N1sgm?t{TCS4Y0G znYadNP=GY2s~IyF?aWJwc?*Af_>)5YdVuqXKiQ)_DWw#f>DUlD6qp`vQ{dT7fj>x5 zVp0PpoRi}sMD9>Uv-K-k1G&x9TZ(8FV7-XjLh4mz?s3Hmw5@82P^3c*(E&|M@X&JM z;D9FVhkty2`0>M+_n+hK9bH(rR~p30dUU|yNInj6`0#Li+*l%;SXZA6h!kd=MQs)w zl9wnJh5(1%*V3)fF1j*hDsh2ngi;@P#Vp}S^XC1J4@fJ-^d10$+?2aSf3O0mU~Fy& zZU**+AQ>Hi>R^-x9KQGU0MgRUu9vQyzeVs+?-BzNd68NvWheoEG#fQ7^tgjF8LXdP znqqv~=Ota{&D9KYR1;-4Abm{HxZxfqV{7xTzt!3Eo0a8$*R; z>hSn?ZG>ODRCj2lvXgrkra>i6u==1kX>ikJ+uOxi{C0*z(Px>{OzIpNsRx31DoAe@ z)i7Z)6EFEAW_|!j&V;JaC)|UAA%Wn1ZIwiBTYjyz;jg`^lq$QT{t+dMIVhYaQ ze0tcOK{;lAi?}d_hYv4Evz#&w+4NJFZEW{ZlMu-^o$b=33S?ym5Gdg7Eiy+LMM;R> z2O6q}6xH<#)>|r26QXP8&^)*`0;JAGv%^R@E>}xxdSKl|RWCe=hd-eUlGcFY9zL7- zS)$c4cYh5955Q={ z0xGD^XA0oM6H+H5Z{lJ)Gn643kRt;^0itJBttOcIVp!1UVgtcXu$bOmbO*9xuI4e`A&i1w)RNP3kJ4^Bark}*@26#QzZy@Gwt+j_Tg zZX`q=?x0}v#oZ06TtKbGb$&^mTz#v@;@-oVW1yE_F5=~qRkN{3WU0(dB5qE{Gz7-F zMkQ`2<~fuTYUuGE3$Eh%SWMVp`Y8&9<;f!F{GyOJkyZEQG#YCv8SRVJ?LAf-q)ATr z`G^<*>vOf6Jr36W_@bqk8lBNWSSlxYOK{^TVY&-@SAJ;^s8=S;J6?$lI*uO8-up!P z8{i-SO5JtlZ9rxG$de8pmdl+zX~nC7Q71pH12O`W#@(lOp?WY}?$^b=w9f_hfngbh zJ@)mm017qLRc;%QDxv*M3SJ6Q)~c;!NB>kMNI zDL6Jit;n-A!9|G+h_f#t0 z(8CgkXjXYFc=wnX?xTk{vgzGTl}?YL@UdXm$FsO%3mnVMBN-YuTigQ{%21Dr7ELpb z#;STV;wf?nTL}oB{)K9=e@WlD+r6MbHOxB z+Njcbb&kAtc7YlW_Hcx8u?qfw+HFUq0wfNKX~9X{3lQx9eJv0l2pg_N2a54M`u*|Y z6$l+=sspW0uB9JMHG{=ga1LqCzyrz#%H>%$m4sXr9~1!FtbIYRwQvgPpe_1 zIFW$i4#g@)T~d)4LzbaU?EG$e1<|YLyOLp=TiUO{Sg!6+e#NrV&!8IVU1dg7CALuE zPT38|&o93hR>)l3N%LsoOdbhE%oytAi|d(V-P?EvSD;0#aamF&I%>5amkR|g=%J{kAwkhF`XkNl5^za zZzETZZ_SAtmy~5+N{p>EwMf!E0a=RvYGQAS)K{n@Fu`ZLY1Wv*pacpp;iO9~gR>FgRCVua z*FmL$U|PFK%IL=!`7;mWw^L458-tqd(rF4;p7gpzV5RH!G0y8@>S_WXGCfE}WdW~A z>(4tXOtYOH0(rj0rxvE}Mc;6{4ii0iFEpG4h+QI@xKN&skS@siA#4TuK(EblN~s8~ zttVQ<4W{xOh4)_1&*2NXMfx3Opq^e$Z)Wfun9pCHJ{y&u`1a`z$0gX8M{juoFZa+2 zd0u&5!3nWu*#f+i`Xb;nej(4?@JIDv;>{S!KARoy%Md3}nth`XmgyACEAfPD4(CkG z%_uiCE4DC(#$%VOJc8Dw*L*-?>;uc{n?ov$q<|`NO@rfQ)xqkt&&m*eQQwQD?0VC# z^gHN2ZX--TGmDqV(Gf4=Ft_XIhQ%P2(%EIa7UmyB;-+73*srN;lnpvI2F-V&rAIOk zFyx*vFBl$kIg?b6+6{Nme3xXQBd$+rX~n4BPM(z%l$#lL((U<>==yS0Tq{)KMY4-K zk#-dnEi54xm@^nRGXW%}L-!IVtXga!o>xlg--R+(SoK4^!;`LK4}zMpVUTxTiyVUH zhmX*z{P5+^*n#x^DV@^DjFWFF4%pgqA{ea!-C{m(em&4qH_0qii@#e!Kc-Q*np2N1 z3tA#cT+9x%?DvjQD&1v!z5{R1XLd=-I`d)hiv=HKh`P86Rqxo26GhTq!sI#&F{_*# z&S${<+ipT52TnyiRa(nf;?>V2N_Xzu*Gnr^Jt4>0D{`D8V2n$|JKbHM$EJqk*$BogObR&_VNMf`Ot#@$A(r=Z7d7>lR8^FpbX^)8!Q` z(X_-gmu$Ld%mZV&I7^TKoL6ugXM()lR&!w12^K{MISN}&hpHtOM_V-D`~Cf}3QqC+Z5_$lks91ihU zpoF{8Bq6^BRtMxI^qaefppuNNDJZ&rbPG!#petOIXR0 zu=~Ba6LGY(><}cEFAa>oiPF^Lgnwocvv}LI!Y! zsK!nY*bU|15kCF>ySH9^x=9M>C$|K>c%n>dI(Lvp!u|3IHtptn00GCU|mE%8Zx8d#oW!y z`VyNDZr1aQuVs|D-aP*ru3^%^Tj7_;s5tujn|FV(OZbI4E^rRJLfq4BlinxTa+TsRF~L(o14RPz8>%IN`MC$Ok7$AH9BBZ_;|YfVEBu5a#P8 z+gxsGa}`XqG#H-GQ|TApe!ltg^A8UnHF@=N5l@|QjPmMmIPM#_6Hp@*zeFXpm))}O z>uaF{tec>GBNGS31R@lzoM(@K@9Cj2T5{WP)ZkXZ6|8=wxOGV695R1r#o`b%Av>AE z#WE0eFa6G@2MJMDm*hHdsHrLtF)*IwSN{q07qaI^cJBvz4BW4)zv+G|>;@iSmw)RM zP@l*XEY(lI6QXRZZ5?pwXLRzzuG8oelt zS@#=HU8g)r3u<0rrUm5?AQ&*xY~0u}8bI#_F`Gdw80P2iHtr-d%MpvHR1<4=kzwS# zPOl|O9L}-Tz?16R!`X0Q?h}KDa)2~06QY#M&$3`b&(>u4t5-Ganh=w98$+)SOw7e* z``kiuGdb)5_39k0aQKUd_9BS*30ksFg_#ujV%wh%o>ddBZlSc(SoGz@~dpIT|1h zkdX;sp(#|r-0qdUT%BMp=48QC5+!o9y#rVBG(r!5pCk1>=vQ?=k(35{%n?=ZwkTumCerU7VLgcP31ABL>9 zS&`bz8?MdqhM+u#WYU(;+ZiYd@)F?5IPEE{uP$HjrgvKy%`a{>?^koEOlv-auV{^( zfCEajq|tOrIN!~Yieq;T10F2-yOFcju2garfH+q@#bmsRyB|c$XRlpeU zTd*45S>Z9QS$RwCr_E{(`<8q~E|(XVql1PL1Np^Em$Xwy4FlSR*(Z`xKnh2S=gAF+ zm!x2=W`U`DQSY4tNOPDguBiRu5^q^alsW3r+wym(lg~&MoW{Dxz;GYE5L$Ip3Z22F z=z#wy&58ZM9;(0{vJx5^EaZW{n7aQU$JWu@A)lEvcbPxm(?z2&G@Pw*O84}pElk}L z@qqbFQ=yD5oY1g+>nb(*Sxep3k+m>A+tt^o`m96J(0?TTb$jheOWsL)m_N=H zQIwKcP6M8pD$Q6UC@^qXzWMz5KJWzVYJ^anaUX1XI}U0mHC%BUu$G?7tscow z8yrv9HORE{j01&AGHu>0CV<0(*G(c=wk(l@38b2<6ip37IOi(16Vo?EOK@94qs)yw zu=x1!pB}RYmoVsg=hqAf`2`-%?sWCcg0!GzM_4xhiAqLLt(yusQYb>dVt%n_>55*@ z6MQv;So1K&Y4i7o^~28}K0n;Q`Rl`%zsdV00pEOXz~KMrc0w!S76+;4G5_?J468PJWR4tx&j9tm(V-F08&%)dArOfDr15KQ<{v} zVI3~2G11JWP0Fgdrl;6K(nWs`zXxB}XsQRcHdF;3_))zzZSPE+;!TtkxL7$9$m09j zv*>7gs%u=`)x{Fuo<~BL0_$utT9(`qw7fahiibD0GmG$K{rpvVHTCs?Q2|eM;KmVM zWwtbzK2qf(Ngf@DRkMZe^ZssO)imvQS&>CVN;^@N`F4RIPg!M+BnYahmq}o)dJb|;3xk7=}Ef@e` z3SEz?1o;R}IpHOgA6d+&+dHW5X6JJ`dnz5>&F##O8Og28P7vz+)02WBq)~eV_)FL zo*rU&$-nBzH}ycYv;oERGW+mVpBJ{vntKR`q>xl6>>I&w2Z`Fabq&waRY^hXjck9<^3COUMhI!Xv5LN=9+>z=7T~6EY$qR>15R#wqU)P{0GI3m5M?_s#cCc zoMMR5OP>8&M6W;NJW;eNMH`zc!p*i zgN@d)2h{W?j8P0?Y?TVzG* zifjWN>ge1MJJL{-RTc}uvrp8N+)DEJC#QnzO2r~yw9!9d=JL0ga~ht;AE3AOF~GH) zzUN%?9(a2RZ_)FUX8aqVtIE?;QZ$3=~uO~0g94t&ywpLo4Q%2ROG-d zh|)ju_3wKd`tjIf`C?c>nhE zhmUrJRdK+F!1e;wAaqMq5emVfQrHJFT=RmEgRUn9rokCQHg*lfpyf6JD>{Xbl48Nefs4Y!HM1S`3wLrX z1*Cc8xf&Tg29NdxtT+g_CK^r~-)U)HaM7(xe*`*_;=g){D@M7HAs{Ox9;Mw9EljFKS(TnL0UVeT7KpLmTu>x{ zvlPyhaa_=Zd=Ekcgrg-QEO`Fgod770S~qrr?M{9K<&ME#6L3iG=IbSg*Q!HoSv_gH zGMngNA5F017gn2YsZh)a2fZouChBh?InLMg171xJ6?U4g+-}C2l8!rb;xmjA0%6_R zxh(C%@hpn{l&0RCNI-G+DVfwy?8}Dx=mn;TKruv|G5pu{`t^cd0+wk~^Y9HP$fjZt zr=FiaH6K3CWF1nbDTz!Nc)6wLGqPG$)U7T(>8@Kq(M~Y(Yu8We3CeK3y&|K~;gD#6orsycAQn6WpC{pV5duR|0R+*lyU-*7y zEDXv|!tV#>C&cgG+{}?}fLu%Os(nN9NVGB*P6H(WyMi!GBG|FiA@U6BXcgh-L<9T2 zXpKJ5^<9^5-u-C>u7ZV-KEC-`$AmBpS(!R85EL(<7(}%(uLur9bS=AU@JSp^7nv$BUU9aBd*cvMarXTU>C9 z>%EU0oJNx1jQD~(A@ z=ZL%*VDmpvi+!Pt!&9eUJVwBZyq<3df;7aTG;qDJ`4|p9k*F4??v)l=<`PW`o$2*> z>_93$?$?{?OPeoxrtmQ+rUg<*ZFwMN@xV7%AtW^!czJ>8aGH)_yYRw_tjliCRfBql4T;Y=m!wa+Ke1#8Bkg zq(f?&VWs+R3w8j)ydXHIrVAVsma6_c{kcJwH0Y}U}lcHf6^D;Qg0n+!A z&BGo>xsO>f0!>J3{V7rzd32EnlNo!>U8>_w#X=C--L7X3TxWYleM}Mr^(O3HzG@Hi zSb$~BX7ZzT!hLFyYLqh!8A~zBN0VZ@LaGhD!gXAZk+Np!x(myL;!J_*#p-Tj>6(-q zkUDd}PQhVok26&%G9bZYS(kO%M!^+wP^x58=n=JejqKVw33WhqXkMVKC@xzUy?RJE z?zp+yg94&us6F5+d;tTQwmHIS0zKqfXnUXPf4Zwtak_p5yb9EpVFpBDVMKG!636oE zYeE1)tP1LF-P|Iv+yaCKcRze*yk)cn=~3+nv|}YJl1&&_%!z2kMkhDnB{;@h@*a7Qck9-7oDRX!r0C zXuA1oGK6^Xb_J2KeQ$>7rHM~;fkfw-HVeZgnM(C2!& zsjP}8fyFhapSHts__m|h_eNGPkqq+!Vl>KkbeQY(=bo%EeJ@EXEdwaJ(G8(&KW32!1SnBDM^fOZD6n%`od}H03pgKbUQAj|jJ`4;`fiQfv)wy;87*O|*a%Mx?@r;K zyzsQ(nY0NVw8=B#SZ0@WtViM!Q?5dA0gl?^%#4~W(zaYr-MhfQU9P6U!kX{3tD7Mr zW~e?^^F>J)_@Mms*zp$edWd2~fdVWLu^JyY?yFsxp&3?(Qh;X>pZN8Qx&4n)G2-$(|TF z1TKdgu)4dSOLCzw3FI1a47(4RKc>mVcPz9$@xDL*a_RYt~+uP$4or30c z4pyPs+$>HUnAF4x)vFbQTv&n|{1D+Y(aC(|om<$9p+wls2I)$H)o(Y&6fkGt@dc*t zRhhbdWf9c4?1og4k?PArtxzxkt`RVQu3^1Z4+e%|#y~+^{Gws3$MgWS27I6v=`(Y; zauLBOl8k&21}k}i=d%>3v&)kd3fqH)D~07PpyjcwJH3mHxnS0|Iz{}26uwyn9hbDW zW<@PQyqThRK$?5)e<&qT$K=Rd>AaB;#nifpb;-oa7S>3s*SP3PTOuO`Rx!i4)TFYc z=q)4i?FQ~dO{)&WWy3B3)0hfOFJZ8LJoALv$pt51EjLOJ_9Z5)p|{V(D4 z4`BI{?fDjaVtdh5<#J3F=3~<0AMa7HS|*N!#75=)i0MwOzPZ5s`CE*Pd{9RrMb@*0 zRNd_%B@a(`hhM%?`^7st{q({_b4)S$G&6F3Nvl`ZleWZ0Ez&?@ny_$IajpL$oTUcl zN2{HcgM`UXPKoCsZ&5R01uh}cXCc<+K${Zoe^gCRMkGLJP#^7LWH2m)m{@`O9@{bQ zOdGjjqp8`cc)5T^Ytbc5Nk))L0fDaOCSVE%-P7@CEN)+jt}3NTF&c!#M#)mtb!r{L zXiRF)?l!Z17dDInU`LWr0!Hm>c>$gffFz}~+fBYiWU9V)EH~@>E%=CYWSXV~4qsLXAMcev0&rkjmQgt^?G>8NUN1{J84lg-!jF98@w@qm5;d$@*DCr8*$J zXScgoQb<_@O;m7g>?;_m7prf^Cu{%K*b$x4+e8$gKQ+8s@NJVoSXbjFe6=vhg0M9z zl1T;?WbH1vyWI}Hy}SRS{JHzQ`-?l%yXr+=ZHRfGYS9(fJ#jBlcPX!X9VFID7K5v~ z&bes#CcLxhsg*srFOj8lpX#v>#NaqD(1xNy0g|OLE&xUiDc3kFyztE*S8GlPJE?;- zyyy=0R10V_$5Bfr8;F)bqBRa`#0!toZ+#1UMMJrP`Jmyqfk>Jw6MT%CqEZp{swKw^;Wd!7_Z(AQnC)s;*Gf178jx5JE0OIF z*-lp~!yz)BFX%%x!O2$ZNgMJN^<%t~65T0OWk)HHTycOOK@&IYCpfjLsdSt`-3US+4X-B3tS+W74BWtAi0md2%YutE z7wBpy;DtdgM#G^QfR^X^vR6E~2iC|$bLh6SHfKE$8~)a3TDG@++$OpH2KGeWmUzJG z{O0CL6_5qV?6e48y0&E%}5eJHi8?qvIK}L!4 zK1{p0*|8=Zn0x+oJ-fv5h#VA`ch_e~$gG|w`?~6^T7}4G^0nuW9jJ6rO$TcDtDbib zRPuS3bo@V`pWR)|U%Gtay2L(Ib7{20Y(q$8iE9wS!=AS=D%@y(2OTQD<;1Yu)2}&Q z*z1fHhNXIljuoKB7m}(<7#C613L0}k899A^i`|DGvk89LC(!tyTg&>poLk#MYU9a3 z*XFk?=gOeEMPoS!u2@!g&>~E!a=T0WC=)jYVI_LEoKRZiGoDRn&#!F=N+s`DBF&^n zX?v`8LYaG)K?Uk9%zDU%CqNkYPzBiG=y|{(I%R-B(Ga{8e3SMM&B$R-ySW! z#mLTLFJH-(=|F7=u`x$_X|(iAa)79=!!p(xk z*ucDi9xCAG4%3@AsTG{wxGQi2(maU`@Sw_LeqAE?Elk}t8?Nf|P@!mPYIw*h&G3AK zjxL9OYLvDXp2vEvY;$TE zHVuMGaZAKiETHAzwUF~`UazyYipaVTU=MP_vS5GgW$6sifJ(7s| zS4fxm$1#*RBae1YBbY5yzU{G@48jxlS%M_}$f%5`5}-i>u4W9=AA(7Gq-J*Nqc7Dg z8nN|Eg5JiLWFHjC~ySst5m+XMF zYf5Xxn2?)WVJNC6@;lGAj2!Vlquv#bfF~cBS%l4=L%p9{g4=u@_bq(#Y`caopq9>n z%ut2HPY>jFOQES?kfp$FFV#o8*~$#7iNfo> z6{ttsDf?`HNCrXbX$u8b&OM{F-t$$xpaC=oD9otsq0ohv>4In7*a%MY1c!$-f(c0J z@hKJ}b9DF&xXSr}_8N(BH4oHBQJH|QJi39Jr8xm9 zcX_cm0yQ{|SdNHOXt9}q(|813Qrj@n>=um;U3^vE{%)`I{U_IuFkxaKxn~VeZ1U%% z%bILquz5+UCRA-(Jla2vBKTODA{W(*vpX4#3(n*}bw^gskQIl5xY0e3IYSAk8PaJ& z3&uXBqS-eZsImVHY(=O=n|DSNULbk{ms^Jm!tbeo2*ZUIKLEUHx)WG5{2`ZoyqzzQ z`ie%~v>Q!6ldyDSifDv%e=oH()4YO&WqKL@!sOnlK?cADwJ`vQIPeS^*}e~6oJ-F6 zENUi4#)!3QV0s#NAj>?S(hggG_-#~un{+zdt&Yb8AeV(H3iAfp%TVC}Stxf%NxM5! z@`6L>kDkuxmX;(N<|r`&8PWuW!?ShSQpMcHj}BP*3Xu(l;ZP>@4`|Z2fT{#oH|28h zs5ZcwY}?u8e3PoB=F7GxZJnd$e6+NlQUtxgx@=z5*mIx12Bx=z)sX}M{4xTwW3I}| zJ9;r;WO?R77dcoBy-xTzT}-U#piz+096xdTo)jNJ-_s>M$n>&sq*ZX>VK+MPkbWm3 zV_ZHT>vs7Hlnc{|awiAzLw+c=0ap~<7NIHK>(AUHrF$KjGUch#y&j1!yVsBR^gn?j znsdPP8uEqk25pt5>8t2DPUuOe38E(dyOX+Ar#|Dsm;`1AgWzkRv^1_2;#Z%@rXrFl zmVix=V+HaKfy`S0#+?;Z%E+fl{Jh&tMpDi8E^D=9+?#`QK%5)2dA4E5tR$Y$X*!f3 zjc-f3tVeP9xp+ZDg^x)H>3o{`7e_dyUl25G~n+ zMM6zm33pA&7T;pzhAJF#phlB4pURP9APvJ;O?o-k>3fX;$yVAc*zkyO!34}c{QUD5 z#7H8A-t2GhK9dp*0x)P2nPR#QX9uc@*5U4NBbcEAbQN3tov@-g`V}Ws zK4B}g{?gQ!hv+o*7()Ba6Qjfs>isw{m`l&rv*dAZKzgXYQZ}3J{>%_{6+Mz6fBWiu z`tquAs)|ec+-^=!ll{V&FN4&|(Ee_DdL+pg2cPd6erzYVg^U<@S09@nLuNkI%^F z^`ni%w^J9UaRkjX@6gF0(F>SvpwGzj8$Qw+-%#}uqxbQ7@%kWc#tCF8tK zZQo<5546J(QRB$FyxcNkyEAGtU}m^p)VP2?gA3@l+#{@Iq$6D;1OH4qmdpf(hPiqO ztovrTapZ6-PTNI{uIVe0)4hx^vCRpn;pzP@F}oxmEqUp z%@&52+|Yf*bwwG?8JJss3#ND4zL^ZF%?hjz(QGcs`qpPKaF`@7CO@W%ho)@eEuIZ_ z(JLXBPoeMLPaKB8hJfziJ<>;pxA&fzjNyc?&RnIIx2WxPd%67HU9?#jc=Yf8?)m8w zw9Zb1$PTJnDzM(*QCt5nbMOA#)|I7)>Q6yBl_`1Jo+3bsqBCiyNIXbbBmo1U9`_fN z+UB^GmL*4zjwhMS-=6RL)>?b7ea-=G=T_a@T{9N+7^ZZ{UmX

    6KK_}FWh&)p66INtBN1R4b3s94wXM4_x3$(a+ATMr!by#RB zxL&=`S@FMhK`^N~;_nYcPxfG*o=NE(fsc_|4oXld=hMNlY>xr9?Q^#W==z~vlHC~m zTROPoLDx*r1m~`qyhO7F%Hxcy?8r3a!qG#3i4T{q&KJx--plNuYjBa_8m^l=Z|5$ro_pow2A9qNYqX$oBnl`ToPSt6wLBM?aG zI;TX-CY9zVehf%!pyZ+O>W8}6-Oa8raXnSE^d5D5?rAA|3)QJt8{@qhG%&wuA_&gx znm9{Qe2S+)T}qdRv@X`)Y&vq z9-rzBUuK@!v4{!j+jBjs|S5EQhcigE)@lMdnHVuY1{ zzCvp8i${@K0BJ6uabu0Q{pQ7eqlYLeH+? zY1UH9P87;w;tbum3qrK?Gj8d^@EK5xy>d0X93t#V8P3AZF+=02FdIyWXx&yWYjde`)1C!+ka}nJZtMe`#=poJ2x2px%Zv1zFOpIlNi*lTTT&GJN zlm*=QpuC|&QzkCF>D#Y$@(1cQyI3c`Qnji_DP4(*Pvl@Snu#Z);S7hY8kCHlhGe7z zkaQefnXV7lH2Likt{|3{g@Qxd>{=_jma2X*53_d5)*@;}M@y52g#KM8RM(TGbu|^f z@1z1S4AxaQN)sQCmVcahR||s3#-QPhQ@%Ne98Vgtyhuor0gfGLyoG}`h5dHBzr+&I z7!Ee*@rN&*5B{KtP5uxniGVA{e@ika|J&0vv4z9sn(WduLzzt&H}MtCMLjkqjrKqf zImFC1sBN2KB*64S9xr8$eJOGRtU)-hgeT0=UqS%yFuK1$DY1Y1{@stq6Bzm9Sg^no zgjM*rbNQ3$c%XweuwpJ9CT1-G9y8P{gq9y`OLYodh&B#{yxm8vC#XJ<$&mI7 zsfNgS!vDb@g12MaGRXtm9DPO!LIif;f1PjtgTIkKqnc&<5JtRMUiuaJeXkO=AU5Wy%39?Z3Ul-Pz1h(Dw09um9VZKfQTJOQi$$RP>Bbzd){ce**6g zXm$ThGpv9N>pXTpg|M~4b*hy?p@0rM&i+0o1D9LiL z`W8;3ob8e3RhsH?{$d6#SxL2An|41fjeS}g)~s95QG5PwF@29|4giFIB#xsH3Vf33f#iTGJL3$7BO3RCw5pU8<-Q+Lw!?=`omo#vb)iCvG`&eo$Gj%pX}f z*oEmsCZZs<;gB7a1T2H{{TwbnZ|pQ+{_$XWxh(EC4jlN8K!RQ*SSnw{{PMP@9Ip`G z|1`1}94okhT%;h^IB6jY%zyQozIL5Z5YEMeG~hPcv~(XGT?DQ?F1V6NPTj-eJ85ub z2c!}3TatR<$8`f=z2de-1w~@AOij*0z*P|!&on5_&P5cbs?idhTUujBl@cNDXAAO$ zG0{8x&FN;v|1rwgUCvFR5@o}qRmb8A7uU*0%N7t@j0jJNIQEBKds3P>cywr8KW$d8 z1JW=xY4eI5RKo_Sbe6Vjv7DQ>ue8bvZOu6<#W3}~qr!8WXm*BpECwyyy#86k)+qtfNgjoa_PqZ{BMyF?!d)Q)Wfhu2YbgLnoC7=$;#wDVK+n(9%VReDMJfW_m<>Ts)~qTI7_&m{!piS0GwV|Pd}rMx-e6-%aNuEctL<>m2(GQCFi+Y4hBO zL+suVKz~m6WJ%9St2ZuseZO1-9rR9Dd1Id31FA*(Ma_e2r6xmXHz=8UzGTiKTlRdhm~Py2|d%yTu}G^`HhX z2@?}hA$V-xtYhCQUEvDVT2K<3U*e6`&E+UJG!nhxKG?318B;w}kuF|2?K(I7mINTD zidUv0kVM2cIaZ;&kvahtsDX3-P|hZHO6aD2q)C``S5h-GYmB(oqe+tYYi4H8DpRc2 z)E*3yT2sDy)QM{cSV+Av@e%Yw`>fSi*9Jxg^+{G)X5XIU$!>M*nRw;h6JDQTz%uS= zR}5N4%McN{IllxBLz4aZ0y-{gxNe~ngU%AFFK+I1I^f;>rDq+Nmvi!YE^f}IUn;%q zdE_cbZCLYbJ_HZH=R@%De?A0fIZ^wC-q_%3{dYSyO#AP4Y*_NY+p)pz{qJ^cPyQap z=7`C2H%{CDSDF=Xn_Az^zuu@&w>!B5L$oT~wGJ*6MytRhy}^hiA{v6in8Wh&5^(mT z#z#48ZIXgiRK`XyD5V5Qcpsmqx8;GvemxjS6>6Q))H0kuz7Ko^RBWG_?4Qrz_=pn1 z^oSLqBA);tD%cI84q%%l@@ax#^iiUrPd11e9#Q^cej*S(ES7Y^)o}T>zGKugCW8V&s}2*TzgnQvO6s zH;_7BlUCq$y*$62Z@0D?zI8+Jx+7+O3U~cz>BG2z7&)2Jn&zJ^dNG(e^;)HLRe?6S zo=YX^ApDR{o>b$~8&@HI!t)aDyAKNS@|xKo!gITyJU_Ft$=1A{KR-3$BXW2QGTIfW znTz@MOcvd`p)E|^k=YsNv6g=HhNM#l0>XrdQE_QZfeHK7SkG)^mZEzT3e5?n4VkX- zDo(dmDt5V+!Xb}6HBb=QEg|v|97Cv92ZCX$XZuCfw8NQ`E@z6ut3E%Q$CX+bp8587_Vs2VpG5c#%vn9z~x}-|ETt) z85Ig8>*E=56tn?fVgxMOe>=(s@_HGpgJ_0#75_yv8B9OfeAEN#6?3FMega{+EN|$Z z5=?z96dk^(*V8*#uNl;11PtXYaj{T}rw@8Gtz}N;3>A9L%3IX&3Cn!#W_c)TQ%N3g zp&k#A7&){QUSPZ#tV_I*UwuOdi^6;T!=Fa~u6ruCizw%Vd6gch0o;82pVMdX&0zfg z_y73Io45Cm;d25+XZ$w!C_`gW{9w?ftOB)SP9b5<`wmHXnwGZTbSDT8{)I8ZR@SP? z@Ho^#U)J4)MVdCnK!v5LZ>xv-Y){-*C|ZImMJ5Vq0WE-!v48Pt1q_MEfYm`V8`UuZ zl`*5!S0m)^)t8Meowy|_TKclCAfxBjH|IbZo}*2E`=V%c(4>nm0;Tc+?ZPzA!gpyG za?%E!MpH{o|5}= zbW5F~x92x;T;EwRZKt1R#ofWO zF{7Pv2Swoz<{`EYmY1%vzX9n>j4?2O|4xReV<;FmMoh!y_rQT-<_)=GfK@E^eHk3E z2A46!Su*wafG)F~!dBvyT=LQ7Qq0#0sF91Y(w9o8E1r9fAWoFlCy1&+dzq?|_Ahf; zgJI?R{8i|mX%Miv@-Q;XY-17|9}!d8jy^0|%OP z16!B^CpsX|)-Ce&B>!mg%ki+fNecs5%(r5^831Or#=@202a9FBF3#Z?DStNi zme&mABvevfL2PRMEnki&*g7s#w|Z6LsE5FKD;RDqa^l5#-7%-4v}iI$OQ+8_Xd{pb zrj+N@vX;WPZoc+ZU(qVWg@*d;dB5@!5mklhL}(>l_UKwZTbR1@3mdEafWVeGe{^-I z#?l10clvzB6*6N4qX7dgr#fZ^Zcn!@8T^UZz`m^%M<;{)`osJ1p%lLftTBZh4xg{t zXj~L&Vd~DvCj9Pk;!OJk8}5-+CdeHD2TG!sk{47e6r)yKn0rxUW{`U+FbyYt0(usA zWiyvmNui@Zy#0f(3%(h_2bn}0T1-HFSHcO>Ep4`4;+P@oYV_4aysC*M&m;O?NmW}v zV^l~}`&>uYP@oy2Q5kZs;P>vsmem^+S%cMcnH53qEHQXDA4x(ku4l%gC3URMdk`#t zE{9I2QlTq6tV-$*KnK-!x@%2;=xi9z`SR$qnD0A zsj?Y>0)Ik`u?(JM@J5Uzyf&{}g~I}&dfFn(FDbQ3H&E6dr5ji!A6gvE*Qk0e0JX+}JoOU7G6a z5&LktLyYD8JF&DxonmDacE|rncdU<5M^wpBuf|TMLkj2_K>(8)kLLicI{0Y(yUR>Tx@BGu&*e7_{e}yss&a+z$XUT#e`(XC0r`Q%-WeTrwa-JOT zu3)O6sESeo%f$|dZ@ap_lb_aa=%b6`V%Kqx`{%ADpf*_>Zw4}t6BUC3dlRq-jWhGh zFYzxe82A$=L?{6s^8rWh!HONp0cACxnGgaN5t41(9C8@^pK%%7&8c_r<3=oXaS%ff zKtZ8!zM&dHP7r=dmxg?P!nqct4ICMfI`pJ>Uf`*Cfsmovo7TYk@k#nA6%eIzX7>{6 z8KynQKhoCZ2SO^4dxuSPqXKE|a^=1rbm8z)P42@{2%o}xLz+Cc|JjnaU3}3+%%$1x z>X|zbL&D(1XUNmaqr{{q_*>H>iw{G<9wrd}8HRz?EtVP!go-Sdhb%N&b*%@WekV+9 zsOd-iU1Gh$ev{gzf&wCb;QhpWkN!h(&@uG35kej&r2*5b(2%lJ@GcB3+uiiqj@IPK zoh$)lB!pd2@a`OcRMkYfP2nYMcMJZR#C<|x?iA@PpO_Om;LNTz)Zyb#q~pBWC`hOC zOy3Z(u)^q@7vKv+B;vhgR2c%kP#ku;T-|MT6ykU%*d1Wf5rsHs=R2yc2kSucqZyeo z&wZ$9)JST_E3OkpuSyLbOh_i&UR5~w%hfY8CzO^Z;tD$}U)q?68i;lz{h;)mI~FE) z%;GHnfi8NzaID8nL+P2i>~E?7N~W&BC$It0yn%OJtIZPu-b9?0?KeCt`Bmv98dEFu z6xP-x6_^5|4m5hG^;Ma==1t ze7$Q#0OsoHF#mbmUw5_u=goT}5e7FANA|%4Km%YiT3Ct6?rjr;93b0T@+HRpcDZRk ze3VE;oZQncY<$mrgNX5s+wi17AfG3#duku7-?rRmRi)Dt2$>qK3ywR%VNE7}`5D0D zZgdxLAr31Ip1PjD$)-Zmx!DjBGpoL@WcNPs&o!E%Er_CkvYUx|UiVph@b>I%nu7&AfBi#2@LQmk z9~2R`9V-hvIo++G?>0py>aTz;HnDLtL!J=)zb<1zNfzjl$~)M~ao#i%PLY4A+VyaT)yzkf!;CSgAZ?QMf7n4Yzx`;^Vc{*xZ zg3AT~T@N&DumrqV&Va=Cqhso=LIb5AYe{G#gM)>j%Y9)gDNLch3A9+l@V-q*( z<~|Re=%z`TI8ryg%Gf39XlciFsm$0Q-BHs2HXtpJo)}IZ zGP?kE8i%OPJh3^p>NGhkShSS|9OEqUN+A3SoE(frVAGYYHS+i-Z`H@?Z+I`^wNhX* z62y0Q+2~>c)>(Lr=WwK81?mM3kGKj_(e~0waa40s5e*g@;Mzo^uB=hSu6u~qF+lnW zabv~Rsq4Mhh1#f0yPT^mM0{GcF^!{U*%M<0c9ukDzAo)LR(E|YMn+>7VS*y&NZKT? z$!=;V+rxUF;SzBLi7_h&d%!w;nQvVeY9G0k{=>nMvGPa&WIj6 zpHvvWegvzN7)x}nSKYE}6`{L#u>!S%%iD7$*kM8_BN&z(%CwVVFSA^@9wOuXsY_o0 z(%1CNeN{Z{GFt5cfNtHr99;1@vBTjGEs+YhH1+mCZtEw9(_TLjKdZc$lZjf>v#@x*6KY1k@6d2!hdq-DnTb zOGu03np|gM9+&pukG`?T==f0XJp`($m=zwH5Vx*V8&4TLHcaw2cQ!; z!RF9TUxP0OS2lkR{tqS%=uT|SbVrkZ3pb^W-Sd^K3=40O-3GR9KmblE4x$O1I^9`f#cEB$GId_@8`N)JXoj#r9 z1#RkwVDXgKK&u|x+gJ>3MBw7L%iGKSe0DjCiFP3SbT3pP4mEWAx_ea zZz0o#j#(CUq2f>hVyvUbRAv`Mj7p9#QKm>fih|0Ix?C~Py6NJ4c@2T2aitpQP}ZRs zNXfuKg|GQ`A8LQfnYg=Eyw2PYQ+>X@T%1FW29vv zz0Hz0S3IbmTqJSSnCxG?{_FkcpPRY|e2x+$Ed*%Z3KCb#;rO4%Ur&y{o}7LCt@jG!A6G1M){W(_fA z;cRJ>TO)12c#!?G{QykgiQ1GH@$v#JSq#}2@QUPpDdm}XX3e*UV;tFdRG67!st)Wxu+EF3oz^Ng45P@po$BsVi0e~#H z8u@m-p>x&nv?@^3!k!-gnxF{2gM#9If3ZbKBnS{nTq4}u)%Z8(tP&NQW%5k}%FBl< zg&cWw6Y)rJ>d88fS{nt+8Z>v$WWK?&29`oM+24HA@DmghAW{H%Fn8qqJN<6=p|e$D zFGNDAB8PFmlXX!EBft7)EsJUkGl!QT2p|!$Fitr$xgb<)qfPTf1EbvF%gML&mN_hZ)p}^wI06Tz<+_l3iC^i3#iXjx>3;q+P+Zpgllt2!ex2!diqt9 zk-_X-Yyi_wav-KXp#TE!T&|pivm*rR)istR*Axnbn$degobvz^j!L!9@GmgmBFl)D zvWri(?MPSxYBJOVq)$Bt))ohw-RB+uYqsYIbYQMD*N^ zHDO30TcYJ7cNzTVC3N3jRA6McirsQ1`96ahFZi`;*jYcu<@?6Zn$sL-%>g{X(KdLl zbH`ekc2UzYYie)PTbOOSlq@iUQL}?9lN#4j7$i zzUwT-yu$Hf$R3c!ZzE{fAL{D38ZG#@C@M*ZqN*f+27==p+w;=BU97MB||p zK>?O(h4uNhvZ(ss+RY*zDL$xZ+H{m_R8e`ZcZ3q0c$6#bN3(_LXzJGa3CcQruL{+e zM}3)iGQlKKFij~d6c^-`erj3>J6YcHtc{x3HUD(G=b>T;jBg%aO-YS z`g=1+6mU6|Lr*(|tSTp+uPeoC%W{g~)qYwCC;#+Rda^&{sU%|DN%&QdmhZ93AfGe> zdkfL;l>@=hsqM8g+&(Q$WN$q@9ZTD5zjj-7VYe==+?4{dwJSC_eP7yk(<-r^& zEhXdCv|z;%DOeNkaR%#m;m1HUVw@i289L`EmbCs2pM}~55oM780V@Z70Rc<+5LEvb z?8%jY5%5>y=?8jf^b3zw9aIbySY0rajlz*HT3RskeFDM|1rw&dK3Sr!c!yX+w8j*f_13rAvr6YlHbhb!{&gBFYXX5`#h z+FY^z^gyB?a!?ISxKLg+9wsOPk{{?e+3(poJmAw&fI7D-PAvaBT-@`Qtd-b#g!8A% zz_2G8ydc`U{``#U^T)WS&^kh5oy}h|(+>o4*P#Pq{Y81YCLXVrTueSfdXMN|o;@2L z=Z3pENXbF%6(lOy9jtT&a{N<4q6LWLU4zKG0u3E>6Kq4HQ4(-Ef0#r(ljzk)uV>bA zSPTt?g)1LaF<`w}u8{rY)#YXdB%D%#qRtp&Dxi}PcZh%Iqwa&W(a_hpd$5@ec#9)f z&sf)8pD{cI`Y^WjG5UpM=UT03)$h7F+Q8lrG%bXefdS{&Xgt#6_@4M4Y|ho|cR##^ zP(gO{3e5faZ3iL;U!r|vKtjqRPoxRO%&83jVuOdBF}on#M_z04uJjyT-Fl8H#AsZu zU~7}yHweL-mU?))ghw%GD$|^O?cZy(9j+Vk;*7)AJMR6U_0Gn}?IKCA`bo~3X1SLE z)%^%-gkD@K!WvkIsgmw?DAI8%s-+F}MDXr?87*x`T^Be=Awga-7?|#~efEf0$n`;} zD1Aj=NwTcS{(y+1XQLiCL+zv)TWX3oFdD(TA!&k+Zew2Xgnz?3taN_~gdNcVYGkcZ zUDiIZa+BND!kNi%s$7Jpn=YvjG_4gB%~YR3$6a*H-Xk3yt^9&r zEmxtIvDni=^+|y0C&Gcp?rOB`vf^ljt!v!3`c#mw|1Op)3kiu=fo3&L*2jsv-V}&|bY* z7+1=(QY6#9D;Li!XMKLj(qZ@#_I@Jf(9?T4`lhOcPsU#J%qgEKaqUvM!u`M&iTH7ub zDu*}Ad~aK?kSQ( zuiEvu;Vom#TLEivOcBk<289b|QKqej52TI=Yq1f>h+2mqbKYsN2yQ@L(5x zv)Qzp#v8l?Qg@rVTfjn-9ZhYKOKMiqv&iE^S|0b!WYVka?HzMo`9FTFB*TZ`{WJvc z_RJB_&DRB3$LRWU&rlI9jZoMHx~u8&azPcL<%L2+P|eWvmnl$)zmt4$@H?Z&G@uE4 z+IhOV7~r^%;y7tp+~f4v#Mx-+XDb1YBE%3VBsrL7f~-;;{1_?#!$)_KUndNfWhZ;8V765Sl!wS2@r_IAme$c{zgFni8OL zUTQ7m648-WNExhm>~4^60rR3m#6Q&X?c76(-G6-ZKkxUS_J0|1HtXfdu;XS2l1Z0I zP1P;CZ#pYI>bSrm-hiS?=X_#52pX?HFOzno5;$Ny!iEz?(vV4~qMIcG)Hmn1Ta=k> zqLoaB9I)A(^h`D;bGPR>B%!5tH&$~>Fzufa~KK` zs$9g)L==Bs4#v12YGE{>{I zj+jo1^2PbZ%H`IGCh{`wHeaAVGVNS`x?gVKewkSiP{9n+Y&||3PH44j5R3#<-$v6F zj2ms4LdsyLLF1+;+xU>PN*$oDF;82Y>;^*{PnofvWypZxTE$b`FLOp#LHsOwLKmV!XO6YHRf@(QgqY1Xr}!;7 z2E#?k9D~P`GYU=8@v#aJsy{*T^%(!pTcm$j!xewLlZUE`j$zDwy&4n|h53GxPkEO4 z)JaRKJLj6Z2Q&v0zZgQl(6kc&LYp*47UupVT~>a0H``&6cbB`^+r)!Zn8rcjSfMeu zms5p%M?)VoZYexcj9bEMrn}S>jFLu`^l0g2-&eTt=p;e|hH3-5`5rrhR6X%n4)SuX zF&hsfg@oJC!5?D#OKa8#8AJeO+rwX((S5mBBeQr3y{G^8yWE7ajRqxtrdUDfeoODM8 zQg<-4TgW$<*=pSrwK_n(Am4}LxZ)Qj7iWj}Ll11}RTvHeb;Jf?3hoq66lPna!*A0k z7T6!-vZiN9GqYQsUt0=KdH?gISbzQZIJ?~znA0IsF^%0}JX(IBet!M^U+;gw33>hL z(}y>I{`~2Fzo(>N&tdrRkK}WhGzHCxHHu^M5st(Kxzt9l(15g_Rn9Pi*Y@v1eG5P% zLG}mLM_rJ)DtJ(BC7OP&HJ%F8=QSheB-}|yiXh=hd3MtLQ|O9+sSDMo^m+GtDNE7H z&oYVvhtVy;sPP1c(Uai%V)z?9a2>8Wq9!FObUt$^{fA=9TEHV5N_b2e=GP=@`;pqz z`y$LMvkm#V20>0)ksb3@U-#PqmKVT1)1&6Jb%S=M+aPs@rc$-ixzNl}QOxy_*NR*+ zs;3iP0vkX#6=7o1%)8yI&Pi-Q`kC@Mg`2c4udSXn5PVN~dGki+;E}z`A@UAdzZD$Phi_gc~Ca3LB;{ zD94iC&?%4x*Xi+kUdb{3_LYT{3?Z3IQJg-^sue^NYjUuU`JZl~^;>QV*XI~Pgg!u; zk1&g&UxkMl&G)UpJCw|vfL}eJ5g<%M#N8wMMU&T}%XCfntfqwkNr?!700+V%7Db~U zlSB(=g+V&0&3HDfVDsLRilD*#A*Z!!!?CJ16zxDT(MCp*=qKQsjTnga-ExNF4A81W z{DqR9dqUz8uMT(8`*vV(ub#NS6#j(Is$76>&Y^*n7y>&dxK@cEF#UF(3%_+7KHv`# zHWN9*M{)c0hd1v(yn#8W*1L~K?t~l)Fsn1rnMkW6vo4y3__#H2?q=)}_}R43pCa1jFrQtFrH(?X2}m5<(L-I-qj3j7IQTU%K}#AbG>5-{cksE9--KrM{|ZQird^RNrGQ4XOb05OB-TmnVJ?b-iW1y@)X`6 z)EdJO7ny(DWwucK#6%-;fcy{}icg)l3+H8rMPk8iAn~!qkq9EHCN$#C@PjJR0@E6# zyB^HA8KGf420IFqn3PXhU6oMZp)R;+Ttc$%hAzP}ULpDpA@0<2hYXvae)Y}r-N#R_ z-+g}%nN~tAd4KZWj4#zN#Uf+7=xpBQum(D4ep(JQ@Q3SRw6tZmT(<0k%1Cz`^}rrn z2U6`VEM|1}!9dn`yRGhm5a4O7Y{kOK)@#klEVWJqQ?Abfy>f$U{PC0Y?A9#+b$z9P0A zdhB7zCcp%dj#y9~nd_TMY z7e7DJr;dj)V8C>-3I?2EUlhlp@iJT%4@#uL(LkgD13r<2bv(I77J*J?*5;vR*YHkV zC*TfHBU69}`F`kd${HGOz*DeH2%d%@?Z_h-OX(~!T;H-wLKWn4db~KG`4C9mLpFhh zTUkx;{Hdqf=`n!uK7W|NpCqVXwaq1z-!|!f2z1pm9nR_$GO!_S$C(x*^slfxA z3M+*DQO^XOW-j)t9lcMHSD!Wl@Li6R6S;n%m#Y`XptmR<6xbC^zy`AW;Kw=;yLMj9 z-L3J_((x|`7p{3Ywfc?f?IsEw{+8|&r_hd$ovjIqc5OgTsH4R*DQeW21WSvE?R8nlt5XWxR+khfC~^1{m^>4S*^)I&dZ5FaIBt+u`G`bv758P z_Q=qBw6u0w+i(tc`v!%=Nc2gLh#6vV6VBlR-F?hBWQ4|Y3F&kKuOd2B^ugMW2NX$;1uXXa@L&GmdgBluk&0IkoAB#&!B>vN|!ApI}lX|19tnSnVF1A4kFU%-su2-JN#< zTIONku}e{fv}XZhTNx&jvDQmigbjwB1^x&nwn<-+lQmjejdV6FtJ#Dl1KJS|_t8ix z40#F72%+inZ+p-_REud;Lw>S-kj*7zu8NHLsGU2 z`17$4b(7%od>~_Lh9LO|7`wh zKYMXLlAy!}OP|7*x+$dBNcvNin8oU%6d&eJ;w%%plH%zxQB%2Xr_2WNklI#9)imW% z_a$070fL(~Y0{l_3)7C1HH7d=hv+u(RRd7hVDpd+zU$7{fb6@FioJAQabWTrB0&x` z0bYYLmqYH7;vJe+R4Kp-)T%@pm<@vi8?&%T6u8al$ttS-& zcT~?orvQl<==%oo*6Mr*MN9?|wD5sb( z`TgFi4|dV4xJ2RkI)Uk0E2?}`NE5TXyqtqgRvsuSETI)R(}3se6XC7e9d=H(#>@RoJV{fOeanIP00@J1zybdE{ITFTNg_pz?Q|UKy!2nzz zD`yQTu}cji!;Sf*YF=jMg@0Mo(l&_B(Wwynk7jjgVsV?e`;CW#mwAzk3&I)UnL5o1 zyCkOdVARopSFz)z=RU7NMw&hfjE zPDCoPV%3|t36)8YwZ8h2t$1?5(^K4fXq+#G^Q~8)w$Z!_P&G{Y6IBL5}nb73CN0a#%5gxi^KN=tK%;f)TrG8$ouX(DW&U9i4IlE@_5 zcb+wt!rdJOFITjSm<;3k9Yzy7(f`7MH$> z6~G8;Up?CvEJJF_SuIjFG*A9v^zZov+S;B;tH`_k*~KK6L{R@d3nrE#kl9VZ|DycO z0)+GinX6&(&JQSVOllC(pxkuqauXM)(#5d#OA=@!&&6s@keTn|FcWh}_Vpu!nM=Snqhz!KYl$;k(phhYok*sUU`@VlFht zNrl|iC)4CKq}Rps31obb#}W(wH1>5knCIx|OyV#meg^Y2d}`rWOrKO+K+{^p`bDd3 zt#Ag)nmN&v?TQP(n_a_p%b6}tH*u`QyCJDxgs`rt0C1eBAqBpU z?zsPmQb0&2@JFlc>0c?A6JSWeq2Gw(Fw!ZAmWB;lRU%<0{Uk;a39A`}VUQ!o0(D~k zvfkxTQZl|}dKW+GsbWgMMzuY^ zpp`{X1=@!Wvz4gr^{Dr@toeI#oj9raX@hj+Sj-MRiwS?LI}}tL4LqyIT5gfm z%Tj`RoSJg1JDqf_jg5kW#LFV$A^bDxeo$Tm@8YEv^p|=VYopNRwFy!;2w+*x=W}2B zHWLMdxmwE8!f(%!-Pew1I4a%EHY0itfdRyyIu61ju97VrS=NCSn5G7u(6e-BL`VtP|q=7|t`~6I*0hwB@7U7t$!8*)#t4s1sBcubT z77CAOB>FdN(UvKW3O~Hv-5gIA<6nL;pB|Xq`xYPEKHWgE@?IqX4A$jFt4ZfymUux#9h9NWQCtig6Uuvz0A9B6_0V@t#Ej4YH-4CorMu!>PMni|=V>wz5?Q+v~Sf(yOgj!dm$ z4ZX{%ql~=)hlkpa&!Mn1UhnHWv!Ahu6x9=k&b_3RXW524uR#TGL!PvxG2g-UNerou zfwsYK$AK=ItkkXG55d=`H~Pah>XXzme_(I z+yyy-b539oDTTw2G_pvFD+du8Uia_xU%xIPS@z)CB%O8_vj=ZNfvJ0*!vVIx&Lnqu zWRH<$5;;6?aXROaUT-g#xA3#uKVKh>9)d4dM|Oh6f*dDy#MExOpLT#zqNPO>Ev$D7 z2fOCO9h2-7;BJUNAFl921m6<9?i0woJ)kVo>p zX31mvJw0DWIb=RQ6yilpSUpu1X8Ezb?^85lMLM($b&D)mvy0+6>1c*T9cY9AO*)Hw zC%-20ogjoh6sGR==@PPYj3BW%Go1|$*_>OgGvpX@&=6B#F*-*SRBm?&j9Fc~6PD>kjKfJst?lB= zi*i>3SF!>%Bcjk+8uF;I2z6m~3Eb}E0zkC1n_7kJg_u}}7N*ZtBBZlcJ);^51YL0B zZlHi3ykNe};(;dgga_AQ9Fe!`h)hvwnyT)I3QQv^64)liW7yuB>BTj~F7KO$*ttC8 z`C{3dNHVb8ay$1~i;1x002y5;9HneSeZkkr2{c3xB~MXBXSpA^(}~RWVkP(&SeU`* zS}u2_%0k)@I*}7Z)k1j}b1Q}S2$CbNU`RS?D?4N#9zn~If-YxlGN}2wrM5;zuG6yw zz-RAFa(4Ak;3Hv+C8+TB`WemvcdWF^C-e%{)2$N$zn(y4R31Qpn}kO$MuCAxE;={> zY-Y|*Fk7dc;{k}mgW$t1KX!eE7np8y=hrBP=6}SIVU-$lck1=fpvYpA<6)W-eT--_ zgaG(|<sr^$u865p^=`7nF)ZdT_3%%vWntFmH(wiDU|jvz z;LYcfYp$k;Y6IymnYK1OL!wpoiAkmy#|IRIyB@3KRLLcf+(8qxONe9Ci|;T93Ia#0 zXEuEIfcltbXuP^JKHg~Oe}kw>Z3O*5h%lMto|zz` z#|JxVEYDZhyYovF9X-Frf5-0N*LmvH(#^x}s~Jj3GqGspT^RNb(bB9GV=_fCc`ram zPe-{^&GN$!?|;_$U2mX9#((NmNn*tXU0w%qV^X5fo|~lO3VN5mOhK=#2FH_^I62$> zcXvzZVo_YG7hG_@LI}hmADHl1pKt2Z_Y^uNK0)Wgj(6p zkbkm1(9dci!*kQAU}@GKSbdrFY=tP==_lQalA;oA>xG|nO7xeBZL`i(ecgxvmISHf z*O%woqs}vFCLPa1`F&+(`(;VFZ-D5F~z$X)CrQ<+53=vI?cSFjdQ0UNd zK4FrlV^d)h#VNVr96GYx&}fwo%1ZzBWI22zL%IS!7?V* zJPe+S9{0&1h6%qSQp2Ew;F^(%xC!)*HUp*M^a!0mGJweTe88pCVLG36ox#mtZHsgI zAtu7v{_Mw|yJC&xAZ4ZpxN-d6eZ$Nrwr@HwrmP9H9xd%0Zx%COs)9!O!x7=rLidKd zY3^D2D0Qh18Jv#Jiu4gT6AJa_;#!6aT@)xLEOE3`M@AutDNs-#QxGhS9D*!kYtOeU zr@z!CCN}`jn2Gz6^221V#~hpCa{{v}M)-hZv*Z<8%ct&t=qWN2Vd@Ie4akoRXK{g& zUw2aN@61Ie-Gd&?E`l53y1(F?ER~gu>H1OERyd`MR>dzat8_IT`doqeh>0T)MO^e? z;5V{gbz22lX|Cy?CC3!~nE4>Ny~i6Grlye$UNfo={M;lIzGH5ll2$?fzMpk5$rzIh21J~xShKmJN(|9d^k56RKE z1WcEfj$9>|a1p>8MP#|#rqc3IRx4YO=UYSR35~I&s<9V|*$P5|f!R)=F~Lt7?t=aR zkuE}72ry4G{Ko!jKf+-I-@02NB&CYp$T8+KJ94 zMAij4X)Cp>DNtErFMr9ieB}-?Es```(AD|^f9SANAjuE4-0pimM+zaWnHkZ7ph6lz z4MkJSIa@FzD^$ZMq}DJ`gCy|K$xWU&ayE6I5e3bW*$V+bR=L@8z{5pld~~eLlAkjf zs%~c&ZnIVxPI|2IYuiJ^WwbF`f`IPQVvxiD@3S5qYnUSU^k#$YjH<4Y7A;B)Rfe@OXQL+eDk5-+(2gmV2LX>uE?MB;? zY#hlY>Gj;m(^Fk3>K`b#RBeP>`fXeqD~Kj9ODm0rA^52!MW8~=kB_0|_ViE(#&omn z8hpO1#76&tsUaZ}g=>kHs<^s?gh7FU3|D(5z)LWHoDyGQ8_5(RtUTUPW1JIUr9O~k zuhjwC``ry#7clm(ZegfAx8-#Kz6;Yn+lrf5=+xBh0SXVn!Z2096$5?vP4V{UNU_Z# z#M>9D%RL6RF+<&Ce|<5#9<@!adlC9j?dvp*2lAdXQ8b?!SHvp+k-z6r*@Z819bXr! z8IdZ@*P)MawOf8r4#E}(ZFYxrqqa;XNQ;N0!t_y|u`3{_E6Y)8f9gXwo9pMZZSpXT z2S6K^T__zcNDnXtH0-{kMV=>)+^q#om-GP?fr7BLx?Lv z$p@gm+J!*jXu|D4xheg{E(v1~Q#e6=QPT~zs7-un1Fyq&C$1r;2jZ~!8@Ft58@85H z?1^zyM}E5-h(4`fv=|{UJFFfb$yP}*O>qH9M}f?)+=`~QlsqJY1CSa@ekIwbk0459 z1ZRb1T%<0CAq}Pm#W$s_y4sz})l+39`Lp!`af8(Nk!gS?bGCnhbXNEKH45!YS=V{CKl^hi+mB7dKExd# z6J{f+3)SfCNH2&DOSw)l7tND8+GE}4i3_yVd}uOkquW!Go*le;fGbz9O)El+HRVSv z_Y7{IHwFo5AOFJar=$P)AAiCB@AtOZ?5qN1Yhd0~c?yNEi-^2=xq@c`)^q?>QG_n= zGJT~desSmNiEDZto-d?va#TTnJ4vr}11{pL(mk1m?oT7bEaaCWV`Em6VN!*w_e_r& ztZkMyRx{4B!W2S7XHpztuZ!konD88e=Xpf&Tcd0mXN{nbu2|30S3qTnkfxrB8dtb` zqkJj^*3ieBgc|yIUJaybts2d=1U*;~ObiYbiL$^M4h3unPM^BZ>ln6UOct*5EWBnZFKuh!sB^y#V_=1s(@4>{xfO>;H)Cv4X*L|wO9Vv&SzeGwrA58gz=f^I+M~0M9E+&Qm2brA$Q+E+9>?2dRj&egMSy&A6)*74vtirS$ z-EGHazUe(KXTMfgEq)qd`{i}cV2z=yj}k+W_eP|O{Y~}-Q7UP5-16iF*`lT2HYB42 zk^GPITcusb7Zu7TzK0W9gf(|6FO?QRYHZhHw-AlEFq)AG%9ezzXFRFDX1tL5R(Kg4Q55BpICOdm0OMai(qaA3bqaX<%p=uI91FS5Zd!k)_KL0lOqdYZJq_0kw1Y|I*j=aI2?F~y4o%l`BjTn z9k(ZK3O=`}RaIXDnM7>VUTx!8zIdb;q42AkK3s2V`f%!X*K)ebmTT&PHQ11pZXhYi zrk7(QtJEHHIf zGJr6$I)&xk3A1ZKIZ@H8vy*+eKAUFmI#L|7qKxTRL&%-<0UbrUz|3zvYRCLxnBWx& z01ql!dNA}?HC(blrzd;y&HK^Y_wRnR|9pP;@y(C#kV2ldeobkPG~MB!!$0fEa~F%@ z8!y%n0ks;ww#G#pSBga|ea`So@GH{67Pr-#J0y!#X#$-^zc>S6{hsiLg~P*kbag#z zY%+bQUIJH7ZoLVh^=DPX zbBl>zZLhoTSNkcpmO_NinyFNQtue@7)4>v_TmQc9wZKBt%Uhlbp+%BdXyl~pFg?O& z93F~7sHMy?c^=uCG4_kmH=|mC2cHDDVc8L$qVgHDB}~wH>r~D^`~|D0vF`xLy`a{s z7tn}VxP z0Z!yKj4Y?6HnX%eXdCAqk6ked&Uma;>*04-ALPB%6rFYS#W2@klRa>Q!bB=j1&5p^ zCy@mec9K8;>!c@VbPC$9w#6>f?CYaxgYT;9^EFkyn#gT1zQ7i0DsGp*`F zy(a8+HhQSnW{OQVd}DOINTE)dJC{y;qFtLh&A9pRXy$voO^aDh3Wms*WR5Dp%XdS zA@bfH?0^K+x>W}|V9!h)Z1T6Xh17?*AS({6IEJ=#uZ7j)XtwNQ_vDS1R$JtrwU!1I zcs7ItlLAx5Mx|4PsfOht5IXn@MkFb$E6|_X*(pgKF)B!`G<0#{K_R#=FlvVKO)7sr zhQ*c-Q@JEUav2%TF#Dh6Rv=Wl(nLt1Z*|#sgrOl)9&KJUKpc;0PL|hKT2p*6`awmPj zWCAeh5(I|K2!fS0VuH)7awEzmWoC0peu54@vV!RhZb$;1TFYdS)em%!j9{HDrui{83Y8;`WQ$~>9 zuBHRmq(C%Qk(4OKCajm_tPW5w)WKR@8i;VBAHVLIq_;YbZ6029VpdHIAZF(hk4K9} z%a@U7PzDv{pm4^2WaHyWDaIBDc@_#Sn=8Vb7kmn zWHD$u#=^=0o~3Y3Mjtp;oQT!vZ|~o}{`BVUea5=TTh>RUo`uJ9n)xa4$}2AVMoa5d zDJY{|a}d4SzLvnbxcT4_4tX;ScX)&ghC9e>RtsLSW%aHS4J(d$jUQrts&SY=;W2}9 z{F7l}$UmO7oIFzwHZypKp8C!A`QA~_gZ&C zn)6zJKc>EMb@BIPeWP@EaMFxWxI~207 zL1VOCGYi|$L;cX^=J}$dO|wT;nU+vZ!$R%%FJWPS4p&rUc^M%`fY&}p_#^ZQlvsg; zcF0w{e4grig^dqFDwET=J()=tW-= z*De+mJ*a#18=ny}9JdETH)9pnOBbFWsi zSZooIQt3^P5gP8GnPR>1qI;M^J6R_S2&BrSuv)`sZ&bBZY-$oF_F{r4KWv17%jgJ1 z`ny5G>v0j8BX^sgM}9_2KT=&@koy@a&9%At;0$)q0&)A`q~dc7=Ttly*GGQ(jm?Y% zY~IrE*AR46f#)fT%8X$n14$_H>zzXJVMTNP`2uMXox?2k!suVIT5gXOnHdfJ@K7dg zIiYuRY3t!5DtESs#0Ph+CBh1jQ8GfhC6V1eF+$*45eqm_9OjcON;tmp+und|u}t$m zB%Gp{J=ti{0pzm;17p>vX7DM1(1V5@6IFvKDR^*zkTmDzdgi%vrsaV!#+3AJzFjSD zWHP8ttrEtMG~L4?sU3)o-k6j@4P}6Icz!`e0-;6+LVkICdZ_9T`Ie|gBs-kX>1KQdE6?Js5c2lQ|c-%IE3BI+4nH*Ap8-u z_|Te6&5g4*G#}8di8*xz`_)kv#ep!@ktKw3tQ@K35t8ytn+?^_bOYCfd!&r%lS0ce zr$puPCBE=F^-kA1Abqd01Qu5Sna9=y9Kr9%N=~Cv$x6 z;tm;U8^QcgC;bN1G+c!3+t+`)-*4~#`{(<2pWeKF3uDgfcOQRx^NCq=dYv-Vu$bjY z>Junw^GLyhY0;#D^b9OPfHXR&uT-WQ2JqbyeuYznFT(&FzOoM_#nwq5^sN;nEJ^Vt zdEE*!SW=OL2-{No3IIn|3!k1HU?rgbLHfJIX3*XOf?!@8IL?Pl zUesQ$&e6hpVvJsPw#cmzhYoJ2p3X+E6|h#_b)c?0H2j-u&`A&4LNQMs60sx<7w3-u ze#9-8Lr1~pe#ixS5N$v3%0o!Inf2gRj3p79Vp$I5?(zacXECd8*%Bg2#~Oy4gXbDB zEwPZ68@U~gMoXX5QLOc1be^b;Ol(e7e<5eBF_W1x@E4}Ydc=QWTUpCV-Nh*5NTX0> zwCX$@=Y)r?p&WCQhy*L`_K)iJlVf?>35b0(MUC;<{hvSo2$yx$G-6gaonIZHSG8oPxZ_Ob{oltu8VNIS>t4^b9kKm0qA^+#MH9AOQB6fGT@gvIm5*9cl$naE%p^c(6b^Zbns}lHp4!Owz>=9YHCLbtJkn3-d_OxmYcyZm^X1yKU)Mt*=`m>fgbscQ z+omgX%ouu<5xvQ?V5tYHvhr!2rQ7|X78f}x&Dz5;dlSfo{jXjep*3{N7vcro#W@0O zPfv`|H$RrB8X7JAl8#+f(z~a1c>srh`deedkU3VM1T=!6TwA3fU66+if#rGT>Ji>) z(-XR73m+8zFxI2bhxUQ`sAVwQt@}3h3MprQ0lOr{BxE}vGr0@DjsabMLT+@ewE~UB`uqBS!!38s2`(+i#Jb81Y}1n-#L^@%3R47Ka3rSoir1W%leu zF&SSReAG`u2)$P!@}1~*H-4_Z0W(5)4?;Z+eW`@(p@>4s@{Bap@u-?rz5{9kjrm{{ zqCM9;Vml_bxrdCP_|i}hB|$8vJbo?hTx;0Vk}G!M*wkD$<#aN!#tjIp3tbS7t03Qg zzX#S&=z^?44|@j63{h9fy$r=dmZihA|RQ5r_DcLIC5qKj4({M4;#~yPj7um>xU@S*rJoP!wPNj_C`)7!>w6xlZ1+QLR53u05lYYSP*2Vel zGZ@%!6(VXlE2Lk(@87Xmo z%nayrP{QS-U*<7R-Zqj|QFDCXDZO^8yj2=T*fQx1ZkseDnSX%Ld@T(1)g^ z0IpzC4gl_!sWBH&K(?GwdahMa26>>-?fm)b7A{n-2lr*`L(5SGKjt)SetjmV192uY>R{!h(}u(XqNxzGRy*}cHQa`k`a}laDdaeF;E#%UIB=MW zM8ffYH67nH2KWw0KgETFqm)$6?mZSQZF5;@p5IZ^61*Hw`G!8EaWy$+iY=akWl|*v zUpClRVcLYcc>v}o(FPbu*jr_Qs8TsLLyPmw%Ec}E#K@fOi?(ia1JEjDJc?8^ZL|DL zc;-rRg!@g-SE9?sh8|8wZhW;yd5a!bNQ=0%qMe;HoPZigl^rkcDAM2|euxqPv^*R) z8tb}aBc`yYkqa0FN0Yi6xdB_s6fIRLtx=|nz+Bk3f624 za#$KnK67T(o)0IVNgcL!6wDJT`BVG-fvYPjsVf#{9GQM_xh*zkY!uXKW5+X#TWF@; z9tP`zuq;F}+z1`~|0~t1#Z|TDEqv`)bX|QrTD+!IiUYEB59Zj!d^s9MPdQ@UP5$VYr~hLA!}qhn zbGBXM2?+-xCo0+P6Q@I6q=ej3FX|DJhJLs;cmlFQ5~ApUy}>L77o9Q`OR8Jle9G*VBO9zaD&HGddnQ)sQv7Au$hs;Fo&?F zx^yAJpi(b)a7U|LPCT&c7r>KKV5F`G!C2-56n}I;sZ%DY<1lCBzW*>YAx6UwoMn+I4*h3 znTN;tto5Yh5mL$b{r3LT^zHla|GNHg|MC0RZ|^_&{yEf(zcLL!B!l_J_t1oFXN`3V z&;dvq#DBlXmp*-X^L@$m0WUt+17N1+)M}%GEh`iR{@l0|8ns@WKkIHx2UwTU>>Y!+ zB0$lZXaSd@)UXKS$S{}Th7{*AY!6JA7e)~O&rZ8iG%hE)C zjz0(V%m{suR3y<-X@s>UcMoX?OQEH`wTq&WKy z`*1DTR(}dog?4ilUaorPvcWDIy*bWBk|vgw_{Dr8sgQ+&N;D;D?EGd(deQQ`C2-I$ zw!rjL>hAd~TvU;?NDb?3MN$NB*)jgIEuwtqG6mT-%5CS%u?QlrFCMvQ=K#O(PaX9j z-q2+~ZhNx@Yq;H||*l}e$#Kmu20qZ5Z)Ky^y?W^4(N5+1kat9sOl8{ro#0XR! z*#6^k7^^>TxkB0XDT6gK?t_=HMMammj$A*}+gnBeBw&=p*?Gn)+*X|1cFnWCxji;o z8k-U2#1ml?lUscIyyos*tW!_Di1Jou7QTh(W5yoC)Hg+zbUZQV5YlgRc7OlwU*7!KmOPu< zGgds??>Dz7pE_t(?m&dmWHMGYS@2^8kt7c6NYuMa`)0URd7HZ_#QQW!)5;7!5%Kfmt9D(6pgDk4wUK+SxSR zk#t&qP`GdYo94`Gj$gHU_RX7j7oY!S`#-fg&Iy`}2I@zXC`3b};d@JjXJ5eo_h^5< zqucc>Ls(c{)BkHry4&}oBD*wSEl)ZMqiH6o~0emD0F zp!k_Nb&h)02h(s)rNlO!az3XB)r@%&g&A~=*t9EYN~|J6+5 zMUy&xHN~yOwa)XPdN|PMa&v8ppvP1L*qJxB?0`d10s7=|b&n5_rY=b8BQK{jDdlv? zvWuI)LeA8}&|hujJf@hq^pMlQ=*{d&CT-Z@X`EOvaY!AvjcVvcM#>M%7q?9DJN!v4 zjWHv`_2vsq3&V>blEDa(_6#*3brySuouqTYQ{_ixFr8YOFtnDc>*}@6)F440)4$^E zsBvFiLaU4@KmSR0p2ki9{oDZ2IaoidDH(_3%$zs$qjnaA8^a;abw1{@;VOw*pck$j zrWQ~J9HhPgX1Rg&7QW0om<`WPPsjUXDyFpEK!!V1q8~Tj!8`{ApfM6RpgJNrgE=i7 z`2Uo}AGFq3)AP;r$`3CN3nZ~YBIpy6vWH~Uo}7F=B{e~}mU2_iR(FVOREBCNwS&M%l%`PaPtn@Q)1Zn* zn2`xo1$Dq^q_Sp&Oqlu%L2uVMmgnDpfB*5L9WdADc0gL4Krx^dFYYSQ;!(%o;39`y z3lUR?Y#Z3f>c!BoA>GI5Spr0xjyx(INQj4E6TkBsVo^4Rh(zn@dg#pA3d>vQLYq;y z?vSxSuz?NiP=RS7s9J_QI#o2YNnHpie0eKZ)0Z1mtDAx<{-zKhyfYX8gy)e4u3>cW zJZ#n7=Yv5(=sy?}gy#$iBJNUhB3IRpx(~EM#qhB#Dg#El2bx1(HD3r)ylQszFu7!S z^e6hL;TwdQHNnKDJ|pkiY94qPdN3TF(7NLe6m5DqPms=*z{w%27+->MxmO_1grLot zaTC$fsJTAXjj{3S@ZBbFpq564V961o)pqPFC1{9DwOSuBX0lmvgDM87}vY`di z9W3r%{ckm{U>5aA3K41rat{fank5DvnhzlI)Tc})yr8?TeTH#Oss!Su${#mDv{Y_E zF^o=*K8VBU3x5+bRe>F;n@1d?trxe}LPnS~s>gIgN+;7T!#95L>tuxP;k-e3e^Fqx zf`F}2VNgaOu#&6w4#upusg23=oE&z40;ntt_7z6$r5l#Ynk0^V++E-<6ORt%bKqPl zQ_5oGe`{o>TiDQ3sA~{zK>Cp4{y>Bd$Q`(M9iUWlMjI_jF$&-ko3xKK5I%;M&T_`# zLb6JyFLCAN*UxVhuNFS$VFYjXk$2?bj^UNwrmsDtY{H{rYAn|FI@KAx{dT3L$WGmO)N2C6L7}3Fd}&uZHnjg zxSmGOgEP|6^oF)T4@?I=oVu>Se4Y>r`wN^lU=UuA{sau$@pNt|NdlGH8j2n2;%@H6 z_=YS1oj#`C5mD1!boz$<6NkDPaC-K2kZx+w1n-&0#MQQu+)kRz>aRm__%sfIHKrZM zByVCKLYb(8UTBGW^tTJuZiwl@Y*7s~4y)m@1W-r5eKCV1t>SN4*WNNCQ2kw?0_#vPzu;74w7MVa)-sQ|eXecQDr*`~#jH}P1`E~tOF8O3IC z2BbFToJ0Hpb$Osv;}hI}iUqW$2&9^$6aW<<-y#bn{(~~`vBnkgci?3fo7oQAJG(B7 zXtI)2n7SL|fLSA*^akq0s2!J{=yGiT_2cf%_kZ<#bgESl_{%nLIvbI4?dw1I zEH;OM&DtFE9Vk9d>?#9d)roYgE#S!rsQ^pbn6XUebVW=`{Id!xSPYV?P+=sNvh)O>o( z)Q?Q1H_IhtUu-eWPhKRceJB!FN^NyzZX&4!Ovlp9noM+F%@5^SWr2~BErQp@uxqyG zW8fuFSx<0UnwoLtU!<|Zbu?}cd;R|^p%1?HyPcQgorj#4H6ssSb91{2ON*~nP#O+l zd)69|)>J4Q3>D*5b5gndyd29p&MCZS3=b-`cU?2G1<(Rjb0)6{eov({ROvovWYzx!h4Icx{FXQLX1VNjozI}9q;a)&_;Tki10D>^hPyWD|AIQ|Vx z^}!BL4|D+UYk7DMO|x`3G|kfC&@@YjL(?oBs8Q^uHiUoT{;HGRP|u9^1|GJ^Mvv$r z1%Mf=#vVvq!xP{=+A2}$rbH^(XYAfZ`YByWJ2!_eJ2?Q#^iByCoycRDY=aF*w}?~+ zcT2$?a`31j9`nCZ6@)EqVmxZ60(UaCf|NuiuIKM#yh;V@hhZ>MWIA1mI+7P{5)~Co z-0WQPMh!Y7ee5tjt6I4I-`s2s@51;lwzy9$0r^old{QQAR=)b*x^TQWpfaNnNKUYP|HYxzH9QMO- zSMjq)d9dpgLBE=VXt2Q_=;`E@vG}B+%zML=uL9jLwOw6gvYj@!15qfC4g&Rd<&R7a z;uLZpuC}HjV|1zKbsk9Fz@Dq!C41AY82;Ik!i@7O?=gWxy~JD>Bk=y)Ih&MpLA8gr z!-!Gj1pyhdyCO>%Yuo83nV4_Xf7H>Wd+I&K9EMEld4II1biX6zEr!{WBiX5C2dMG! znIvHu5n$w_Qz~tz!X} zU!m%jX*3O=bykzZ=ycGFx`z-}bf{9(`2WlEtf`g*58pp;i{H@(sPqfwv> zNy5X)0sn4yZJpNvuwM+FN7&>taY4FJqXTBA=>oHx!D*Xgm?}1eUC;r+7mr72zNRY= zs#VNUeipxL8dNS%SeX>aN6(jnbZI5#UT_s|;l5RtgbhtOoqV%#LVNf?4wuwNQ|G`g zcJ$tlf8roOZ&sP6woBPp4P03ja!Q6WB|+?GFkG0X8M{+?*X4`ZC9(^QdQUVlm(=x+ zEguXqK#<@TUa|u*j1%@ASifm2qs$QUdM!q<%nr;mT(7w~4GWIHL?)oI1vL{>uNZl5 zofLyDsSQ0Z)wUdwYVmNeO?jkqZY<9T|Bx?U=BU)uqIq!btOHMVz6g4Q`@oQxKVD^{_zcp?HTA%zi3fB z@S(;dFw11z!|4G5E5+x*t6&)A3Nvt9$Ha3zw?O247BY&bp4ZP5#hm>X21*lI^tZMN z#cXoHYHOCD$f(z$=XT$s2yb zGyzT_uq-#zXDeG^5Rz!?SB!^c!KWJ*`pAZ<4oFjz544eNlad=B04+&d6wBZ`OmGvC z!wzhzi7lTze`>3pGYe}$JZ=j&3$nTf%kS4*I2IIFu{J#`O}B~|P-McKo^NJEv3J`e zbI9sFwvz&L7d)xRh1ir_RhXEO;SS9A52?aR%_Hc4gfuLjN65$GC(kH*gyG0dxWwTU zj89Knpjh2Og&G>k_HZj4VFU{*6N`_{v3r8+*H~I{w{87WdH&MY`> z>%}D_vGTlT3E<~ri-6st1RbB+^gVxFqqtWkuj~ElMG+cZ0-?CiC{#l9QJrszy10p; z`Mb>}Je*A`w!?n_==)24h(~82PTh{@uZ5|5uk7^;#zd5pSVSbo-3T0m5`l7CG?KYOHC^+~>Trf8dy3Fr;Ni2foSnixj$rOby+2ZAlHt_XJ6Xk0-)%h#&Z;@zWcs|1$wOVF$6&O|t|-4qBwOVd&;iDz^K8Cs%{hZpb3SLb_#%vPJ*Mjw z5v=m2d^sOjMjBW<^-eY~MvNF=d1OAfQlDby4E zlw_HD@u-dTn;!lP&>ood$DaVhX9pwhJIiysP~?cR;pz*p?9DY@Li`lU#Ba<6x6MK7 zsvR*O(@DmnWK5xyxmYg5h1#E50li_aL!JnY>R;ldVrfp#No2#W0_o>)eS_L7)i;n9 z?PBv?jle!-_^;kvnPXcEfNTHz@gNt4&vIor&bSmyWjBkg`n(%jyZ~SYAHV z0I7Nx3wm=wKRNpaVhgMZwOxBSdv}8|8jwcGPzt7=pd@>Kw?k>L%hhhF)OH>F1i)`dReURz1w<#fylnT!E?z9c*mO&fA5vbz6XWQr9tUx50M&7S^6>&;?!(e*X!f%Osx?xAWY zy>tN`pk4?zX*%6TmNt=Et=P6aGXm}&M1xwu0xO@TK)Q#fd9$J^asA=_kFXW#;~G1j zv4?dCaAk6q3oj^Y98YDe+()-0hXa#!;@T#rSE83Lc{8vlQowhW#66gCa<{8BVxp4P z>a%`vzNYW2=ldqUZ>Un}OCrzf!o7*CJ`+T0Vqc++1-5Z&NqDh7P`=P8E0kpt5U(QS z9fR?AT3sY~mS5Ve90PDIya^9FY-T{hrsKNGa}5+b0bo1}xKpfwSdX<*$WEa7AwYq({&zjqMb->EkgFUj# zn3e5t8*?h4t#Q&TtSQvhwFa0bYa%|O)X-SN;xu{wb(VA?{60PKbGEXaQBnD86hf3V zeVEtG*j>4zrFGKvOx`mgC(sF8WA|(%C$S}t*jiZG5;x5aS)d9?or&=?XPK3zU6@`l zF&A~;Q*pJ?W8RDCKH&$C8rQ52NFOqU1d_oT%q_NVKx z*I)%<3)d6jT;L}FB7#C0PjuO-70xm0!;T$pxl(X#1!EyUe6 za*x>vopWdK(+(?|z#5qDkDDY1y|D{S-MRYEY=9DZ0;gMWFW1jHQ&~VhbZ3^nYN8L+ zIl$4@-qNs)v;0m{?sSLp?a*Y+=8G2;$GIu+@91MY2|a#^8e2j}MpZI0qQc3@vEzUX zq~eLP3#0`Y@fEP$bb%yOiA7~Z^buraJ2eOcm&V{`iUXg@8=ZpJG%9DlC*=4}jQx$0 z0ex^eJ>=mbB`&%MFqn9Qsr&o|d@?THe7gPo)1Q%n&YD%_%q^!|C`q2-;Ihy61^ckMRP|4uBw)HNl&9rR5X6TqraWB7+lUcB5BwG>=0;`L7;N6I^to_0xa;*D9-$Oo=`ez~#y-a2BYXVJ|u z(X^>}1Cu@!L`d~&Vc-a~KO2r2L$PkCAQ@h0(z2^R27<_Ulv zYvz^_1JN3?>0*-;Q4^aq0W&5b#{{p|V;PXdk{FW;i@hF`xf8P#dLTBG`0wiVyC0b5 zuz^BvJZtS_@3WA`aPKPoF{eG<}xTKsp`fk<$H21JXx?(#$bn z+*Z+OAifUEE$H3;`Et8t?dl0q@;GLpx?dl6y9-iIJuc6ri9Sa#5F${iiT)zazgz&_Hfe3JS7^hBVScky*M8;aGu|{2%7twK>x!TbLAssR9aWs=(@t|73t=4*t%fee6%+9;&G~|&SN?o_BNY`zN zrgpcg$^){Gc(L(kd!wnakSNr|QEsohwi;q{*V>F}S&1U!P?SP_3>BL-BO7v8AVkP2MP19>Ssi z$6p>QO;kDz2uK(SG(}_?8UpQ+$w9A8udW%gy*!8|0n*nwFB+7V3@JsTf11vg8=DBk zu6A71+yZ~Jc#YSBnPZ?VDID~Pn>?iWl+=;>6l}<@a~%y#0jaYR=E%L{zPbGdie1p(hs-IW5g{gazkzjTLM#`OrNavnz108fDsbUH8CSzY)bu}VW%t*)_$QR)mE3Q7rbV3?~{zpjKlx(-Hu;rf3@ z{wOIL%!Cgi0s^E!n6_L!7k+!m}7|i-Jlx0z|=i$5x3|9Gg~LPnidV# zQu57AI{=3N!fh1DC5n;@Te@-W(1TUmtV<*tt%9R61-C^u1}bcNMhVVE=LA6rx=5n! z1#Oc@r0#vjxMr}~m z3XnQ0t>V$-6*NkinK{`kWi-{qdd@j#CCg=8qS@J8bOhf?R5=smzZb z@~s1LIZg~4nkUmsy7^e>bzuy2{1pqI z(n9u%r})^-%hfepF!#tXJ)kxs^OUS#DK&FvGY3S&q|7SY&dv3brX9L`0Wdnkxuan? z-us}UrA+`0CL*-pF>CoP#0xc-oFX_s)uq$6;svPTAoC+M-a+V4?}y9Sxh8Ex7-|Ny z8YG~eD%}_z4PJhGx9Uzw2dEoJm5`X0I#~RiPVhU(S-6W2bgg8Ca zkx)HFMSrNLRQ|w$s?5cMx&TSta6#VnuRq>X`ac!tgq_52EnV=v%6=Cp6Z8J_J9rO{ zOsLUCEUFZUs0*V-O@2W`+O7GuXIeH@*9o34H*k0=nj84|aB}P~<;ZoagP14Ek_(W@ zZeJ37nH8V6^dgKYEP6eg?q~RAl(}KpFTP{9lWRIDOr2RWDs)txu=u1 zMuM3L>ngPpb`SnQd`8!4*FLiV^)U0DowCOK&E|T!*~m0|27R2_3`-qtD9^d~!Ord7 z`hw}HP(QLh-SzTjbntaF;Jg0yD6+|K#$Z!7Q(smpd&0_t;P>qYI+spcGs|rVTh9&_ zgqAN#01cqt3>ManMkF8XR}B|N0w~78chVwx^TMyFs`!xKRLmM>1VbFy}d7t`*?$o~06tGubR|HWH-+L!HYi4ueK zU`rP?kwOIzR?M1ST{mUt#N9xmrTe)3aavv9UF~2V^VSZ{@kD&Ga^8Bih0YRjzc*kl zlwN2kIh-!Mz?mWq#Mo&#}Z&c>|)D0ZZmnxCW zf4fSCp&n^s%?S!dV{Sek>eX!mUuI)>3fe;S45DlB4xr&+6NJI-C80UXOE64egF3UH zKkmlQKfnIKP=e2I->US4U<&#HjLg-1jrF-I2Z_fn+b~NFikd@AfKc%*%yl+tpf#~d z*W?B5mB9YV9ENC648HGaI$CW_eZl#S!yQEXlC~r}m1;;(@<_5T>sBdpx9aG)^pF=KaQr>SUtQ#O9$&4kWj~sJ&@j_Yj;b+ zVCHW9oJ=}Sr}6@|a|Y_kP5}2CwA>KWsN6hz>#!_PfO@`>-4nzC(|Zi3DyeWZH4(cD z67}tRwuHaQb|gHJe(@T)T7{_|C5D4MjEX7o$L#*?>tD=5(fHq9q0Hhw=Uc+e*9NZ4 zUueo4R&gbuK1OF5ycglzXO(ceeA7UOI?LHQ?G_MDhj?K*`L?>9wty-se_n5}CpcL+ z-;KPA6*K8v90!kj`Tw?_uW?b`rD6Bpy0zs$r98ptK-`2HCIgisV#1S(zqZzmu~v75 zn#^?rsUOe~}@iPCn`kLXwj2GVCUc+5az5|!kiNS;D;w${?iTmhT1o8dT z=&!He{?2mw;TNKEC{V2DuPzT5rg%Fl{eJWKU-$^*g#VY(|32V@emDA$(cgZ0^Y$Km zIfQf6hQeKV$XEOBRFP$HT;;}tVBKwDlMH67Lp2F)Nz~|>QxvZ=)8%gWl}zB^Snp7d zct_Vmjv}CszyAI5-N#R_-+h1o_3t4pQtWDPP;UF)wSOC7myQ10NI_pzu%s>1E7**W zR{h%w5Z4Ioo^GfNXqgid_5u=4*QcLCHv)E>wQQqMx7X|b5r-0{0ro`8W(LJM6AFlR z@!~#Rfv1J(O-0~>z+)7_!kT6D+812X2O2_~$#A%8PJ!vQ+?@1scoH5z`mvYUYrEBL z?__@;v81Tv3T~fcWRpOV(A?05Gp##=nCTe^R({mGqJBv}s~J?fglbPGjd~?-gz6yZ zZJ;r{md+)$Pmv>RJ%2$NO?5=I={<65@IwnsZ_u~Vn_KB7Ac>rSn~y3Zi||bgBH}&@ zrKzv9Eyf4Ibd$*5-U>{SKC{i?x;x(>wx-m9R(>>iuI)oAko_+7(Z`?OfB2NtrodJ{ z0Cd(*uOOu^7nhupE?S5ORhDfi`G1oyr@U8{02H zEUL|AxQT3P4WukZaG?0Qlh9d_y9I?P*@t>uUKeDWI`WKnkwCk;0`=;unOtmLRppw= z6I1j(PCYT;($Bqm)jpSpAKyGeH;J4Guz!aKY;NY|C0sLeoVsXq( zImch;gX+$|HXvJLe1H~JTEcSXOFC@Md=gOPXX1bE3w*Am1?T;o%60Ew3#v&lGcV?B zb6sL~@mokCPv+?YYRjWh{k=O9(T7YeDLSbMOw7JQaJ!-5F}WVh2e47!65>NGVp@c$ z5EeNF8LTmu&+qs_9#O%K3PWwyzfLEA0@cY=BBQj<_41Y%H!vm97Y(e! zOZfWF4_^Q9!-ubM$m76O?miy7D4+fL`%j~7({uEj$LhgoCVjN(|oP2iv%n&T;vC>XkM~*@1 z0H9>O+?~Ds)B93nZFfC80gKGbR~NUa@`cC{>fdl#xh!)N|fLUlx>F zHP&qHslhg;>)C@$R|o265|sG-Hl9g71lNt)k(I!Dzer>F0Uw)#L1_x9-2{xy@chZ3 zao8aBY38or1|B`%u88%r%RW|fgqC0D&{z}L=gKt$%Bx~UTyfO(FKXP>Hd@}t!!L7V zAe7}13WMri@+-7vTA@L`nIMC?rUf|yx;Yjm^QVY55HnrUaE129u}(bnBwB(uXP9R< zGv;w^rTl_YQynq!6GQe{IA1W?Z;<*!OuiK%h2I}*++U#BC+#iBw0n+pEgKf*q0-k1 zn9c?a#Ys)x>!g)3Rshs%Z}@csQ+nhL$Oj6@x$#cF_2K1^3+}7%(KFjr108%2-0a5F zDiRCjG`7jbh`es^x|xybinmV6i=NK?iH?TRp6hi%t+HydFE~BcS_epDm6DA47uL$8 z+6}_(fprsiW_bNi+Jwz5NWBsKiF2}wu$(r(R>jybwb{nmp!TqS!O{N<%epa3YWvOR zq=FZi<;}lLC#@^U+`Y#{I+Q{{g_#YiE8N`PEN^g1BZI@m@&?tUcP~~)o;-aRzPvp$ z9JkXNg;Mp}2_3}Uj*ogxIN&3r+tJ|@+ktYMIAxkvu5!~>b5ma!GD^SlVa|STXyx8kT+${y4XX3K~Rx7ZH{C?2#awY%dYi~f! zjB%gr)D|LHo!G@33C-4Ui@5p&vfBCnq$UzSr{jnGI8qlOLZO&XXt8UAEzox?G*c+x zKStO>dOF?1(04(uJT4jK^zG%-&1C6hiF|B5((#~%DFSjN4jO<;azs5Lzsc8 zoa#2$2zrY-*i6tdqqmfE5PM87C%d*}=)`GgDSX ztO3pxEug#*tCBq2(7)N9T}0ScI}s1})qo4ZMz~3vCl+zQ6)$MuX_QVGEyUL~XrU`R z++$lTu15i<-wP@%JfM>&fjDC32B$ z-x8^1DDAri>_N`lJ6rS)-12i)4EL%4H3)MX!ZT)b2ItO@VP)&0s$ap&;KV+Ear$&r zI^&o>+ksz#59U9*E9~QtHs&|u5eW`N5o=XEwTVe~(!?!-5)b(jl3gr*vf#vN-Z$3J zHq?=SH97GDs}s+fe9xSQ)7bpEgl@myX zKoNzgBAMNtT|w<0&vUfsLhGZ<@D`eJJYaFIPq5u>l(^A@aw%|dK82e(e(Devo_DTs z0H)tDm!0*?sunP#3!JoSgsb~nm~`u-@rItHY4lK|Nj3(it@CW}&Jn?J?9I0GbQIYO zxU0@h$y)QQnCck3HTgBF7=+8KC$7f?J0OVC-z0O0`Lsbh(&P)MSM^;&#cz+FCI_vn ztLJvkT=lMFk7y;aM|x`X79fQX%m7#*WC&QHXz_p!P*%Pod3-e-7!cR|kLVU$n%OP&LgNN&RG($X_bWuffKdJihnM-Fz`oYhbr&nE%HvB z+?;k!inx41PnW_3$Odmkwi6y^h}Nd-p_>lR5+DG+WeMrv^zh{58T679jbe?3T+b~( zxc}C>^}xs->ER5esUAB|2VKL@51$@BGl~#;N|&}vvpzaPBc7P!dTFW$kwjZonj~q9 zmN(xBcj{$ak$Q=`yh*kAns|jg$02{1@IfI9{~eE~6twh|V$(TQXiv?%q_Bw0xHRb@ zfrUCex36?!`?kh{3w^@7sa>xIWSfa$7*491d>86!$Aq)6-q6etS_1Keu%%Vt3-_U^ zBLhJ&4~MhqbMk$oRFfIoL$dH|K)DG`1v4N^S_ec_Ac!td*Me?~Qt1HJK_jotQ_pYLb)Kf-2a z7te0Kgs5xVf+Qj*%Ii29-g<0zsabo#7sX&pGOo@t$?3x#1p|RARG*IR zF-J@ld>}r)`S*J`O9FGCGTN-q!0Ya38TNId;R1*G0a@Kj>3Pv9JoXno0Tpy3oGpHV z(mz(yt>@FXWEp1->2 z7ouKWY#s@_?9@rRUA=_$-sZ1RTEy}3h^El0VA&S9UKWaP_|PFb$mJyZvnW^yk8t&R zR0}O6C!T4etzbP>!*g{;mq}@1>W=e4u}tR|Vt5$Vgg^|wyl|Xe(m@W&_FFp<$2Gps zv&DdZz?>cmRJsi#{kt6Mtgd}lZpg*QJ$xkhCdG%wlz6FRH_+gH3x`LGT*4_&VpFVU zGviGTxUWk@nT$)GH~XT;QKCrOA@a zSNg5Bp0D8BWl38lZKQVDMqYI;DL>6>-?+1kjJ2S0gxp61GoC3bR(Z))ID0d5tCqcj z>a5v`06ms(t9;}Zn7Z4WiBxXNQkg99gPYqc$pn%p_rSEXks}KTvAx)8;Y&+1VBh*6 zdkGC$IkDzNt6FR7$ zLF!B;5^{CzEghUnD?pLd{)Un~EutX9M@OOK9;9hQ&hG-{(-h&yon{GCeZbeHYt%A>K z5`s*XC-NefJ7i*QF}wkFr)1dS&L+rM15@)WRvd-p70J*(U)&8t$pfr+>~_zkMl5V` zs|?^`4R^>HpKjj2W74P22W_FAgnPvrDWRf+UMZx-<<;#PR;#YIzYEnZz$1izAH!S} z@2Grcg4J1bk*X>lGb89eKdOrvEGeB6;@N)MHXuFPa1e$RV;bz~^h~i+!?aIy@H`$8 zMKice1Pp$1KtJx;>c_{1X`YP3MbT(+tXZ9DX_%lSm}Yfmy{i7?8^J=OlIgkW8n6oR zZRYM#xs?ZyV7P;`Q6L6A7kQgKI!{tMTYPwp^2zVtRi?AdB{sEErDpHf9?+-X{AR|= zVeD&5)|WiQbV~O&1Q&~KC@p>Wm%ducFX_3E7Zs{iKEKCm4#I7D;@AtnXg?Elh!}aV z9$#Ht*Q92!h9gw9$0YamsuS(z(~2G2^cd3KQMC}+NV{xD3)48vyZ|8=Ta}_haug?( zM&y!4YA$YL`(RyhMP9=QREwR83Ba2Lf>&6&gT39?Ny9OmK!FJe3?-m8np$QN-Y^Yy zCBY6*k939SO-&O8_GzF5V^$VURBL<&R$=D(XYos~x2JKBy_jJ;;j(GEk^_O~5`_l= z;EyN?E$(hC_TcK~TO65IfaaNNd)#B)HKNhd%Y-@}c(8$4u?~jz7|^H|hEZ;2JS3fN+X?NXa?~w^5kP+ojuD z@&Nfuh>t{m>Q5RMtn55U-}}aQP|o=9jZo$;d!;$wceNCHWq|Zbp>#?+)(bEi=#a)L zjECNQhx#K_kb6X1Yzux4x)cYq71EvD{mj3!_kVlm#aHD#v0IQTY zM)!hH!*KKH*?z`ZuryY;kNJ^EWWl6TM+dRSBK8f|`D7 zJVr|>qH4w}1s+w%9ujR^M?NSee8BxtKzz&x*mLfi+MEgZ^%g3epd>P3%(PEOk7m4kaW#z==`4tB+n>QJH>rG2)=3p{T83rHa15*_g~qX$OXDAzvW27}UOoPc}FU zfoPp8>zEs~-IQHkZ9`1lfaK~TIGRx^;A>p0IO<6i7WN8t19SpFOIf;wVg zlHmNe-^Sbl+UA1lm&aOCXlt3Qs5VOHvK;4bB_4g^PPCsgNRmJZFiS+)mHqX3mB%A)q__FI$DOG~@a@%y)ja`lQx zo}<=#h5Gvn(sOwzZ0R< z0wu=(`sCS@(`QHHqvNNilcVv;ll$L7SB=8qU$iMas<>YZq5#TdcuL=hC+!*35r4(rzWwX{huMcWf4xsq znz?xwh~b0rnO)hyKa5!Iq5;?K@)}MUn@gmBS-g4o=HpL#wmj0(MQz+rgaZFgAJmk3 zhgdts`YkN1dwgOebmB46n7pCcErOG5nZ>H9!@0Cfpi&PWBF5pl%4+$CV`n|1fSVS(=e`miJa34yu4iV<;v0V8CiJ@3C5P2xdlOH4D6Jg^an4Q9`4Gl&Iil(lZt}`k@%S44jw$D0^k8IVP z+kz90=1>V6stAVpB{x*E;P50(C+$RxFHYd1$Oz zv&izBKfU?%`t9P)Tck{M$9GX41DhPtbfU|GC!n*;sWxA8l?o{cqHPttlvf!kP3=Ro z+pj*nd2cgh+$jR+b!)WLRr5|}1Yu#7H)4z!sSZ~YiYNS&JZ*Tuit(A@&3a{F^dG>VV7M&K?Jb@V5a$9AdQ7<4`H(@2+%cU2&N%PdU4NP7hl|U zx1u7Cp2lsv%rJ+Klv?xvIi*K&@hP4_d5N3cr(w+99;8$3nVa9>d1y^dYtnKEGf3og zmow158E~~a>8ug4=9GqNdUj{H#tf-d(r-Q924K(Xl^=Ai-#<`?VF9I-J6lIBD}EWT zaygi3fXn2)fLS!1m?_txv*rilAw*;qnaw%Ax zniI(bIsAOG6AS*DO?J9SDCb9pu{zBRY3eKh`^c?C(bCv;Y(dDKz~y>%?CV5_C20&` zY+p^l$**T-t9G3cm$$Eo^Ao3a$LeV6@Z4WMe!Bk)=VAJ`CY+?Zg{iSPs&sG}FPp%^ zeSMX=2L#J6jxX;C583cN;gS`EeI-;EiY=nm%!EZqojj0S%RMigJ%eC69K3SHTq9GiIJUx51R zro+&NkB-Mj7-O@xrb-&-d##i(^G)fj%xJtfG(__aeKEg_R zTRjz{B~HCumX_bN04A^x`&Jd0raHaH!r;I`=Ck+ik>#C0LW{8VM0&M!2@}9Gnq(QY z2vtR_(ts(xbD;tAnJAS8+=YVoDAoA?_djZSODYuWeD?8h5MBfhDw#NzqrwLUb%yLF zlJD4}NX<&mETG8}t;}agR|r=oA&aLd373B2SmYKQ*&z}9f|&^us%uFSR1=?d0nsBVj%@C9dlXz8TL#(0 zh5P@Yj=BQNw9zVsOgu*ABfk_JhAy}6e58~ZI1n*o;ElJ-`Qt}f1*bECCTUnD&HB+2 z>ppz%R%rsO$_6smG(E;5ZTYh&`u5@W8c1NWyWOHvfqi4QbQ2=v+7Smepf1wF=bUk| zLvqqp->QFs>9v>&ycVY<>I#T~h=#DxUSK*o*KCDTfZ%q%(Z`A>B}A_#V7>>{8;g_d z&F%ENDZG00u}CLuSmCB%aSYwfRA6Q3R(N4L!IZUA!|zH!-H<*%X(tmYOu1FFt4X@7 zuQsa3H$aQEoUT6HfBgP6Dq_EQ{r0nIRB2QI01ODS63y2y&aUp}ep)Q|Dw|1fI?zWd zn1a~U<%M#0&560Yr((I`HVK!x&FG;n>VX&IHZ1Y}Q)&>d^;j?ALAwS~#SB9J2l+Fc z5HU5?a(9(HtlO1FoF?M+?aHI@?6;v;$14Ilh#Le|ZRz-^<=o>vk^5<7E2bfi6=`PN zoG1rBzmir?D{gWuMu(J>LkYH5(9JB*t`5{$3AWYOZbJbuiostQmUN-8H(Uu`oG+zl z_LE0Ph|W!Nul8=%jzcQQ+0vGDA3$@@SX5+nMAQjaqO|mVI5iqq8EVlY=^Gs-8({LI zp(p_got4DKpSniV8+r#%djxY3n;5L z*NBE=DzjU<8r0+EO01Uc#VW^mjLRB4F8MJNZt6u40F3WJ0x$@N02$ewrYnr5rLY~K z_F-H@aW$Bt_uSw>-N1FE@{b<17Td3-Z7*p;JlVx~a)kwslu??9x}o?q3iF1Wku{&G z6u-(vVH&54X#NoGllxMs1()d-@^1ZAG1uX+M3-9`syf6?-EL)_(D-iJ4W6g z8x=6J9v3Uk_udV-NBWyiiTFc21VUaiMd#+b8?bk9AUT6U9`ypCBScWg1ewr;QYOhZ zg>8QRaR1k0A=A7unucZtDC6a^(v7rnm}W@_qEarcB9(M10AU87u_t$lmL^WaaTc*y zTjLl8W-bcM)_w<9gvp`40(GP((13vvwEX3%tw-A-jaogb&OsI_`^EO5{(?5`^U>ts zi=sN46wgN!CUyQ|8J%rPomhsS5S2o!%kNajc6PVAnj>@E;b9bT^F&M&Tyl?RFO-YO zu$sZg)!BKZ1}}&yMS+q!95S)~?wplw5Z$S?bW~j+HQk-`ateBZUT$exx!TlJDQ*;k z@Yxou<8p@LFW|m#r_>uBWWn;XyE7Y=X#kYx;_6#w#W~Ni}bT}00 zaB0*%u0?j`k1VE)8L^}P1^h_i`-brC8(3MGgUie}XUpM{Z zUpN2bU$+3`6R;J#9ZBTw?fvVIpO6!2_rv{UwY+>oEc-&cZB+$CLe*Pr+MjuPqWFeTkS1A<9A+Ikn#!tDV`&wE)(w5{h(U zRB*VD9TTnxe2XP>1 zbwYye>~d@}gP(7*%h33NEJO1(byke$wpL%5!k$ovYv`?sE z_L3`4_wXiGi!|{qaRBfjZe-e&J~jNvhvg3UId{2(!C_dMD8T}sh{N$1iYI%I_w^cG z(b5cXwfQ+n=VRZ+AF?3#uByN0)3=f*CyAEeMsu0t|NQoLYvJy8jSASsh0^~Q&?5#a zfGtzJLN#)$NgQ;t7H&3ve9>pH(suBDrYEeM>K~}jc!$^qeT}QY}tLrly2ecwkk@sYgJLtSE3TSmU#tjwOz(!i1M3o=loEogTZ< zow`MRfGJ5D=aj;JL5lW_aZJU|R$1MWO~7WGr$9Q6lI75lpS*&Aj~XsLd_0*9K`6TBpH}W zHTadPM|ODl*>ku)2ch0PpO}Q|4ZU^`pFDysHx#fVMZY-j&Li%`)+GgPoY)TYj1R}c zZBLhhd_$O{hP#Xu!Ol>64;j_z?}c0!#osF#nuLgl64i#~t^(7n8$l$pmuOB4;m!No-QzTCmRrf7EXUfZpdWd!?Cy=yzv*ct@-u9IPf6& zMYRBR5G*ePBA_tQ4x%cK98cZXy_VeF-y!A9%d6!%{27mBXyX}b=Dc!hh`^x^7Yt8ZdrkP9_^`x^a&16R26EGY z3K{@k>-QTo(Bx>(hs2%&9XK#NhC>^Wk{HQhX{?_#MwLQqoV@D|?xvKuKjt(;u24(Z ziy^x6zGlo$<3WlVAT1%dZ#b_}qc64w`C_5aMR~x@Mk@I78*0%`Kiw1>ynobh45foO zX=RV0PgK*=O52V!`R3yO6SAKF{QATFsJV<{pk`qKLlZG|#tV2qEvARz8Ne4V^0V?) z9Ts6RE>6a+1_&LO58O4;_Pp~7%L3*F8RU!#U=L z!Zb`<6Jr*d*alHv+Gu1>yoBAjiqn&@d>r93sQQC(1W&_kxi}mlHtm$X>!A}v` zPl1>G76@-R^(F7V|L0u&RCvu&pkl+_0TV$WM}t=%af%drh+_p<2TvH4F|(PZ@WBrU zeuC%TUmk%VM>yAfBMEiNsO}3x+;f5(rqWTTtv#ybs*J5fD8+&rYW(DYVC>>3H`u(W zGQfgzB^=w^b&ET#_k-;y(4L9Y&)2IFQOsH{Zh@=q+p?PIK`JcrDt>QSQ-$;vBPOi&mXMFCC@nU3f!K?c~H% z7N=5I0`}qh0^4;M3KTGjX(}qmWl}jV&A-z)atQchz@6GQ0jU8i3n4M{dTtC%G&F4K zTAwA?JeRxEfrTLsbifqL)n`4Q|6xwz!O)t4{601RPsCEX#v(I0WV>*xds@x$;UC3+ z)hjTSvnUY19F!_~*UZv52cV8io=&zsm<*X}rdetsu5RH6r$6QlhSJ#)BjW$!u+w=d z;$yW27ft@W9t@HJ{J%F3iG zdj0w5kBirz-+rnD@C-GqZ!Z?hD^{%ZwVsK{3_&m@k?#3#l%tsMnbR!Wp9e{#-#oiu z`=gT4ooUS^5DE>C8PAzQ8-&Nq=1Y36ZH^~JT(#Lg z{L<`?1TI^|L#t6hK$Oc20ML?SwI0zMVhd^GV!Nq@w)}}*m>yW>s1u{Biu2Hux5m*< zr}6|vNn&whaYPPRUDeVV zeQDUNvL3A+THn0KjxEw5x3Fs{UD|IZ=_nwZ`x1xZ+*qPfISC2P!hH`wyQeBKqduXl zcuP}j!f(6=Er11ZDO`<4ftHFhj?1okwt8gP(xltmWR?%&<{Ol~!;Ze$;w;`hznkB| zG4&y6aW36#Zjn+I#!QO$Y@`vG8reU<-D=DwridHBE9O$O1Kc#sX(AJ? z?*pUU-uz|~wf68+&!WVFu$=iVZP=1uSg+Tb&I_0l4wMM1=?u2!fCNet-iT!lNb9c^ z6nA;&u@fnUf<1f^lM&52TP7IzCiRBT0#FS)-~ET)AlyF6-jnj3>~?Fqc^5DI{!u>& z_bD=gQW)nx2R6GH8*>GR*g!oGt!BKI^9S>~J;~A8qs}Ol8A_5v0yZ6G?Ps%h7+aMS z_*l?AZ!sap7&v7zNnb6^y^0HhJ=wgyzyJCA{STIs!qrZelOjVwYUp@;0bLpX7*Z&0 zOV|aam;%mTudr`qDa1kP^&?xG;X^%bK1{rfMcwUG(Lt^1uS5>C8S-b zZjqz)Eq0!HS)+J@-&D#U^n2(=88#FP!7Xbpv-%6oF|%tAg6yNLta7)WGHN;v0+zRk zR7Z-X`5IO&X{S25{#rn6Aj%str#gvExeQWQ^DFoFWFP4J#j!Ur*uN^981Mo_P1(e# zJfh(j&V^vFNcoD2#C1+CxJ^R3To`KjS9n8H$ZbY_bxp(h=KbXQ{ku1x-hWU~0DwxQ z@X_mhR`8>Y=3}5a5=eRQ1ROxUCWN$!x6`ANRm+Xff#xi%1)vat*A#oT1-;J=jkHQ) z;K*CQ)DB1wt1+50rB}tY!=R$+V$8XrFs>9e(DBLXlfyBhX7E{9qrj~|vvj-AT0}!@5g0gIuBFN(HsZHncxwqjIX%*YOs9;6Mqq&O zm3GM#&$nGqSKk`Fjzlm_im=^I&4amQUqKOHY+bkqBlKg)JcS~MGEZ^lu{P3Dgz4q{ zmMQj_PCl(mHvf9U%>@>NaaHV!WiNUoNaqmuZ|`mph{WHG)FkeRxo2G&+s&=ghZ~ZL zZi{R;Obn5~QN(AD_a0D>N*aN|RW@BfpaypgCy{3}187hq&m~-h%i9hZ?4nn3QmC7k z!+QDQ)c#2!_ru+Mu%tVD0}p?gj`jzD!$|2B-P=}cLi1^ zo_6r{d@9z+e+z+)G@M~EFRvEU@6KF~uNQ0!M9mfpM#bhAYCGLCZ-B9i=yWt;1>`fq z8CYcHNaB}!u@(BTAd*wxE#@f30EG>mY)vI->8zNQ z;u!vtC>{ojf>A^X^BL?P;K@0Z1tb&*E;@{Zd3N^{6D8~fgvW^=h1KW8FPPT}@n^nb zXh=_s4*D~Rs-lq{XZq9Yckk}swpns&FHhG%8DQfIjMMf5TaZ4E`aJlN0Tn=^Ld zlm`GgMnp@~sLWu!vIwIi=OGa4&2aDZf%PLr484QCFEg`)vI_1v{wHM>-eR&!QT$P* zvUyQz)_3)S6|6y}J&0N;b;dbk#n!EJskAgPMd(HV=-CT5x{0exnCBZFD;60)ux6D- zzg=Bx4x4Eg5U$D<$K|F2ObC>wqH3*yfHgj{5N#Mi$k z%l^B#$iju~%?0##kDd{Wzj^r$bsHI2Zu?z&Fy3OX``ze2{`M0*R}ScLqUr@Ssd9Ef zhQOYqxSgesu!6Y#V{uOp!`JX@lDM2`xYn`)HE}x47}-t62-pG#ZLvs~$6}A{Gn(rd zAKcFn@vz!j+-Z+{90F@(YgUl!IJxs}F!tQ8zuRqZ5u?0bt_CA5z@%Al`36h}7)_{& z6=@-qq&3&}I`K02CkEUVp6CK;#GRq?jUSsH-7_;~pHpunGo_g``Vv)Qq9tr6owIQ4 zt1Ec?Ts6svdO%HlB~8X*?c*anbivsO3tZqGois9G#k=14UJC(Afdxx^e7lYKMFpe* z=^Hm#AmprVk~DFi$SWyRfBE5$>oZMlxB6&!6;K{6W-8y$dToKJyB+7DY3G6dB}N~% z`Jpbl7ZISh%%`vo+Z+W9T{Pvcr|Et)o1foZFeItS=|J-EhXzy0Ob9}LKTepSmR^_F z*Emx{SVZuon;l%mG`QmmEX{@SbireIOQ;ksSX3SEl&3iI={qXh%NeMMQ%1ZqSOuuq zdfQMRR3V1MrlV_g)xtlsZC}IHh2=es(3_@gi8G3)rpjWX^85}17%)<49qmJ;W$4nK z0M$uYh!o*(5o9w;B&crr$BzCcCe2@*KK*C>{L5W7KW2s*XC@-CQb@wrZle}fzs;#b zHz+`pRAA~J<{Xuy*Ta1l8bE!r8@P*Fhukq(X58s)Fr!Bm0__&7(pDdm+Z6L}3td&m zo-(TE&Ft#FLGPXd(;!)61s>nL+uR_piWlMT8zh{*TrRfu5p8Z%*c+%@ z<{TGE8V{j%yMx|?T{JwCejnCpD3}^9w|3NVmu3my$!)b~ZAw-UMP!cJE6i-rXk=`L#2idpW5CDP}eoIssg@Ey8eluvir zK~fo?kW(cPn-3(%5f$Vy^>P*o;339)=ur#QqJn}z>_ANKUK%n0wlm*U4wjJ-pBD}d zQbg3NnicJ5s?X$ra1I|>IH0uWz+e{*k@(^T%#NV$Y@0UeySpo-cR}(5_W^lj7+L?W zzCJ?gi*Id5m=1g}swY5tF-b$D({Me7J;1z&J^IEQ8c34NN_HSu)04sG{C`8;**CO6 z7^x{uJ-|5Gq)RkYYgfDI1c6fl$JUfi%!#=GpmHgn*dy1k=-C&$QlO->4EuU%Lbyiq za3FhVicn}BJf}zxs9S>mx$15fk*+oLDOgCeyD8DMNeLtoF`^rV`q;6ig@Mk`lE79*A*8#|rK5$)W9 zn_>_+==ndQ3|trKr6sRGeF{dSl)EpNGqCHs(No{<@>GJRZ}kd(V?p~(KWG!vbkL(j z>B2>R)U-4&dVLOwH4pZDMg0nKIH3!ttK#i9C$cy&af5+YO1@orf_usx#KJ6HT2-*- zir!OY8T0Qji=^}qW{S+0?GDjfh&`Jv)r3Z2qp2SHYC8oQFV6B!9k|q<)qs(3K}RtGNm9R$Hes9q6`NOk^Dxr*t;7m^_&h z+llX4PxnNgY+;_R(U;X1yc-8%G&;P#qNTZx&t`srqvB|JzDw*IKdtYt*O3$@e$zbFYZDC=hNsl*Xd>~~SuoDEEw9vey$ zjB^-bOpO*F!TZoG6E&1PJOe!94kzJEOWe)M1e>xdx&j=6j})EVt@ z-NGt{1zQu{u{G1|nn;QYMdZI>21MjL&ZC#ec2zup)F_MP_2vf=)dRQMTqll$ry$&Vz_s7btoUDPX^zcIY%7^mC)jYVi5?jmYbb5MCu zb-tkS^^Pv1_VaX@sUMk@D5HC`GGUfXdp%l|M-u2UQn@H+d`xVxV`Hy$*zF`7Lqeo8 z1ozB#cQ=fb`1}s_f`JCFKYjY}=8vC0-S2h>2S305{?GS6d^LLg_RXJ=Am{*5QBE@~ zCM!IYqNOkKtxKXYoc7xfEBAirPEb)lMk)a@PIbB@&~#%ejvq)rC&9+k@4JsS4IUjA zZM#%IAgqeURYXg0`5IlWpRQ-}N1Dto<(*&_G9&dvT{P>EPeXrr1>ND*f&MCV&3_?q z&3ouVN%*w~JbtWHS$m+7Vrmcg=)s#Kqtu?8PaeEEa(L~z`3VroPLX36K;b9=w+G=i zao+X<6F$OEZPBReJ0Q*J8EnijIzi}w_GLYquD@HQHq-vl7i%IFIpPE*Tz4L--82&-~j+~un>pJJSIIRi3F+iD4hkSRl&i?^F`b3!$#2lLTo zM~SwThoa?p_6QK)Ct#CFn787$eQeR+W>uaC^2n%;p<+gdZRhRzkJ^FfW`eIZu+R^q|q9rTHyjY z5qP;Ve zf_XrGubwi(5N9Bj{dA6FKGzmjyR1WvopCjm@Jrku_S6`bBxUD;hl^yv_ka1z`*+DN zg?-!|#Rvm9;33l!sX_*6AF9ME5)C^+An$Jb#|#J-EzmU^x%dsBFb~)bZ3L3loPXzG zCkN(RqBAajT6DJcy1Auv>j@Z#IuJ@J;>wk9uEjVS`w8L!D!|{CU>RChsK!TtV=L*IJ-0*O&~;}d>ATmjv4$@N)nC%s5B=W)V= z@`*7kWYaUHV)^>; z#7Io1<4vH4yW!f@kjoHIFQO0586+IY=-+K5eXZxu?LPnP;U0GLFCVGSHAi0UPCOfj z-IQr}73Y<#NmQZ-%qFj^AY_3<_uf)fyL8wd4tkgA9M-|%`_?SFjjI5MRc$<*yVdG; zy&XwovcZVX)>m-xAYxIiRWMI=DnVCFu})$>sB6W0+a*ns36^9VOHOSgDX zOAa1{e{D%b#)MAnZQ1ylo$)s#Xw)AgIgCL56qF9|luW-FA>tiWA<^ZMxyaAtUQ9gv zPKN71OFrs{k>K-<^pIwdw*XIs&;!t`SEwy#8dlB$lH4tk=86&Hs~2~5zW;iBs!D9ALnicxo)TG3 zn9t6$9>&fYfY(u*6>s9KceHdYijw*p+_rg~=g8apboxj3^t!bMHskojG?@EhN%oN%v;U&9%Z7lbpcJ(5lfg zLedABZO+z+)ViMGA2Zt2wq}W&HTbmfOE11v*)_ext>r%bB$GBU%YaA1Y~I8@^4kR& zfoFDjWReL@Woc@>B&1V1X5MWsBH@9b-xL6h`5)?3a7Nxy^H)e$uH8h}HMaD0=Us17 zC=86y1HtHbO_y?FFip)7L!`2N5hq3gYA8Cd%rtYFO*68E7`~Z9i6enGG)z(ziLTrE zQ4kcy86>sO)s^LELTyPL7%$vGf|h%9)4M5Rj_ImQj@i@3Gg=|IH%S#rWPJPg;s*f7MxER?kXdB89- ztE~$*p@vQMUfqM)TU{aUX#k^@kcdYU1g7l6^?xg;@NxgNoKkLjNKUaegGi1%7K2`1 zjts68OUGw1sTb9@^GU;fgbt)RH4imRXIcs!yb8ftE$Li6wSNdB0q(fXFx6-cA`j+r zUnjj5=2obDDwg#Xzk_h2Zsc!a(8@W6#}gcNIsj~uO%L5epglcsFBt@)$!xJfVFVnm z9Gj0S=c5oDTCKK&HapA5T9F_=2rVX+9-j(Ft1E`(MNDnsY3pkVEx?!E6BAR6iVnav zkG8T^wF>FdDR8s&O^5D{U?1VV8Ta|}r3X9Q*Nqb;pt&v6E&Jy7o9)>Jc9gDzM4v4n z$=u#7mKUkel{;|n*w-i4sgbM1JfTFiG%uo#kpr^JfpvfyASGA%qfB-$W;jT0ZsRD#VT^)dvE*;|#4t@X0rX`6f!@Jh;)Y;R#iq^oJ6Co6{@0_9|L;qu5x4e<6 z79Et`^QH_M&)gAfBKl}Tq8Fb#&LNPP!$# z-!tqo>Z&)_{HwcJ*<8!!4J{smgLjOobc{TUq&a?B>jjc1Z=}sj+CDT6X-cGi&+)>F z|DWY6dWYd@*6NfU5H3wsDyy*&JPA1&=4uVH7e7XWSM@5Q8#GZ5h8T`niY2Oi@>Hj} z!r21yM4#=v_Y_23Y!X5jnC8b0h71#d6aw#KM{*IMEYGw}^wQ3YW!TEM0Y63sd)2gNPy!R5SXw6gg+j#bfBl2cnyy1>e|Cp+Y<_inHnTZ1v9qiH)0_oJPtT0Db4<>5 zi%?2jn*a6w-KWj_&mX?OhbC<@;yV=<;W34{X4>UaxbAdBxu-h0XHmq>1*aohz-S6j z6^CVx-be5}qk3Yw-51~5gE_XiF5AThIo4PF_u!x-aZkoP^?+rOBdJc4fty>hWNFGq zP5T}rBYU(M1*lhKdT#Lp3B5Z&-9WQ3bZAHq>>4mj3JDSic4TlvbwN1QXsv=!4s6MC zRWP{F!!cZSdA?SDMJXt7`h9~6rw3H^^LwpOWQtOo6*LUgHTmme>F!SW7F`uw)&sDqKN0F6|G_l)lTY}`)N z+RnCzu%hSGGx-RfkCrw$;cHl5RTj_Wo!V3n5)YPVg+F9*L=DZJc}q7c@8C~l zJ|TaiA5LNW{7Kub%!?GcSDURHX1Qwm5@*4?%vcMnYZvuKlJ1dA>;@7$0|VPLEJO5& z7q?fCe_)I{yTRXMciHV+1zp4pO=byMd!p=c2Y0zrIYcrx;Hmpz`c{R|!5S6l@S2QS z)e<8lVDnF6)j<|c|uyS z9t$mbupSdhVyd>!p|ydDV>cR4o;29yU+K7JU)epEJeWU^*-i~S`D}e1=@>vPr$-Z2 zhl0rwH292J+As~~#2}UthA((G*QE7DzN8Ss|6DnXAXhAGx38wurbtrp#CN#~e>g0G z1#MV zq)S4JuScv~XR0N-Z+Hmy0)D2O8N$y;2BSwlyiFy#bi3g8k8l3{9u@u|b!bJ5xHq~I zTMvG`wDC(s3cOg}rjIYacB&(CVk&MwgG|Mt^Yhsr9s>tw1M;PxK&`?kkD@dz6xGzr zrnf-U5d}R~NtGwZ_BM&b#h62Fi<=%}dxqW3BQR>^kB3|t3QUW{4F-J(tff1crMyMs z>EzfniKe9Davx4U%j-!vyFz^Pe7%MH1H=1*TDSvI@osdqvVBs3b??|-Zw@l!Tp%2u zufd9-D-fUDPNI*x$ZH;4*USIWkcWvsgtp%Pq0#4ox~GQsDAwcE99{@0kfj3+Gq0vL zGlv6Ov+aevB!Iphw2JI%(w{n>i+$>Vuw~zwn8r*)NLYfr&KnxrLwpi1(pU0e@`lpd z@Uli5i$c8G!>SuG1JFlJ2DzA$Fabx!i1(n;Dfcv6w$fE#&zwvzQSVOM+BBmB01bAz z0+mb2DahH$x!~^X3aq#E2C1!k)Q3SmkoS?yl1CncZ>fNOYBwm^mnuXTfN|As#4Dns zYl@vQmAy}y7M*GYzf+D7$9wg!K+U42-K=9s_tv!RON-H(dNG;JNJ8cv<8=%4!`cs@ zu){{PF1PP}w?9WqaA{d?fMReDUlio>59t8whxoy7-{B2C&giz506G^s=UvcNFlD~g z<;~sg-Nu$+572~#2tq1~jPRDGz)*o2j#A*DWWym;W7oSs{_^Sm`}dzw|J8Siui(C3 z^@}{z)V|0Y`XZ6Ni1KnmoZ>{l%e#kf%ia!%%0?}jzIKBYnlZveD+@@&iuAuMFT{C7 z9Zb4GA<(??YG5ijr@V+xhEd1Oi z7r=1q)fGzHfEr9hJ$qLTiw!HAlaa%bc(h*JA|p*Z!5yH6%2>eVK7BwJC8! znY{wkZrzzTYAJNtoym$iHNU37^p-+xICZdE;UdmLX2YPE zj`Q(blHX?%IH`}aODg$byU*PM=yW$kpDP&WqI4oTZ9zJbh)<2hLnMf zy1d1Fq0E-ZK&UM+yjinp}j?fOmw$wL@$~{BkXm*Z<&z9$y zFAS{JymKn;4Rz(cOgeqL+#Eq8-ROc_n8qc9%lsbjhoJ`~%T>#MEJ~c(dX?@C^IGIl zciBvPBzvVn2?F~PP<>&?I9p!(N>}wnuFClg+va?RSr)HZo27?%w@Vz^jV6cpR){`M zLfi~A7wi3!JV5tC{S4o|gRTMvriWJiL39{0G7W1KNz(_S$85^{fuY-tW*rS2QOI+( z9ZWl%kPCkFO-uJ@=6I0VFb^GLsGZ=L9VM)sM0>Y>I(c<_QN61*kEh#d{@*z46{vvoQkJ&t}W z^H)>)t@uCwSz-VpXbCLM9Omg|ul7OVX#$+a2v2kud3~7mf<~$}@}i#3|3*u2i9jCd z0GY2SkSX&H>uqe~_f<6bq(__O1bAdpMv@4BMt_7a;TnaQk?3U_vE277;F9{)6?+sja4yK zRFd(cgWjwub)`q$S~!3pVp>j5ILaJ|X&FlKS$la*g>54{(BbXeVtfav0YFN@agXR# z)Nc9?$d?t?+9Ab@t$kJtE8jx)cX@O6ZT%MFFmiqzTh5OdQB~4);ChnLN{<_N=81rM-7I!zWBg12>{J;Y%o9#yOAwF~wPKJ%hER?3eYW_Zw{=pl$ z<#6|Sgwv}v9ziN{^AQc!_&S`2t^J4>^E0U102V=I(($_r3XKDF5Z?EO4Rs?~Rvkf# z_`be-6#+f9tts2>UfjR?;r)l5`$kXSzx(mcpEzGy0(VVvm0GlPr*O#+NLSZIOYq9t z%`Ud*($lN_aS>F))9Ek$tpK&UTz4b%FU(L2BfFwU6>?{L?Mc&qx+{HesSNT;XZn* z$76z0%n@ylOQCd@ICu$dCQoo&^cB;GZbrPto9ThDD(+2nI;Wy``^WhF!g*P;8@a4g&vYhf=h!KeE6@2ck5chyY+HpJDhGdE^v_ZFmx32Oex6?3lNhWCkV+Q#%!p3#5F$0uxSg-2yM@ zrh9O}!hTffLNb`Y8o_A=#u(JG)K>%Kw^-%SU`(Fwk)_F$G%!OE*StEBlYI<5L-{c_ z|ELnbr$dzfy75D@M>NV+O@=Y6P(vWEH{=UmOX%K(3YWO&VDP$tK~fgYltnCG)}%$0 zw$3wfOq`U?wYp*uWT^_+<40V88ib7ugNDDb2G4(eB%Q1E1%{c@*QAdWwggBI7bl)F zhCLniuIQn4W3!S@A%GA&(Nqs(uUTmaw9)x%ZwYSfhrI3OHSfWnWHyU=HU&!&BUx@H zAvl71c=cdX_MaIZij^Rr2LaMo*7E>Dnn<&6v8o*OJlDv$u8_<#%XE$IJPEq&Fh3|w zYlm4*N46)78stj~Ohc5Eb~6L}fIs$~R8`pGzg({-$p3*qng9a8%hKOA(#*l>fe05K z?uWJ~$#$BN_iB770cZof+rDx|3~7_G%5Ac1MS;VuD^;&(J7~mqCv~NW@n3D4Sh6lm zH)tvCL@_^!G=(k9x_6>vP#^K;b_(M&6f&ItSnd7Y^cd+5JTs0t1>-XA=II0ac#5?t z^wAomj~b8BB8&aU9h@$aIuLl~TtPrFczEVq$;AxHS%+8Us<`E9_h8}cz|Y_qEG z>avnAG@tfw_Rvfozzq!jNpCVk>}Lvx(FJMrx0~q_xdz}dD~>`%kh0t^adKit>OBlF z2=YJ&-y~Zg1d>UkIEvG1SuTczk7?E!7qLarHjb7i!NF_hc-MD4aq&-3tu%c7F`1Ux zadOP!ajuX+o^;4ruD5|crtTswvpML+Ay^h+*5Mn|#Bv?F;KV90W!@8+hujO8Z4tpr zh$P~6MD~BknerxarpPb>#GAwa0(8J~%noa;`#>`SJV#{V=J`qM0Y`1hCLp#4!Kp8t zwKi|X($e?Te45x{2@%Th$*_l(oe5B{Kj(CWcOpkhzGmqz3DJv2BKH6>vs}q znHw2T7LT#8XeWB|asM;@Howh7u?LTk0;^Nu+=n_sO$#??k{R-T8u7yR7We2R!bY3;b z4G$_Xi#rJUI8*p2QrBr=1nM3hP9DqDS8Gmwdj0N)KmM}6CS`>;dZg|dDq+O6O45Xw zd5g{*XO->=D~tT6(C4YjV<{J5_+n!)Tf(Guh;)aKrBDo`Xc}Tmy8hw9Oki zjvzJQ!UYaQENg0j{8&dp!GylRsr-2KZ=(ZU{`&W*e+j&`KCFd_F6!~$N)IRoP@Akg zABUn%*J-sqlog@uLJL$=&fa$CaMqpz(&-B&ntxJX=L(F zE39k8a6t@mEO3(w*Ap%kSa9mlOxu~-bn*b5P(>H8+ZfGAO5sO-_di&9)uhDbsl(+HL}XV zBd3{RkF1bHO*ttg+|PT=nlp8Xo}z}|dFM$}zrw9?`toiOF5vtvbg=hFI@VRVs}_Y(xke}Ux(*H?b=F9r zSV*Oe{3{(v20G}*_E5`5N()hEoxc#d#Ym#u<|{aW1295-69pb9ec+<9+?<_X%^Ty9 zh@jDIcz!o6&CqW5Tqd{uNH+-ANkoTIJB`l&eE0Jj#kY8V(&Pw9Ms<_@y74PHmuay( zH!AfMLGJ3>0rAJ>2YrfrSNMlT%Rh{RF~UhI?6x(@sgdk0h%D+VKK{yyENd)!Uk@7s zA%e&MvRDCpS*c7ZAX`w{*pS3(!oLeJl}XCvaA}n*e#}M$C|Eq4_I6JXJJBtScXMnS z#AxaJdHA|pvZWb!iS}us7d+}*5l2^G@~pKg0G~m$?^y`FYJlN>ECS4b=e8fPI#fj9 zn1cC_vK=J}6W9F3?!+7xj%fO#VH5+}!=PGZCWm%rSTcpJ?!dGU|PV+ zPnzo4r3w??f)1v!@F=4f3)IhpU2Rm({SK;-3e4YcMWd-5+#GM_SFgN^biLrRp<-_! zGy}={zEu`T;7~o-B{r0V>#u8qsc$)mL9frh`@?+grIH-&2f(_`P{Aa?Cc!)vMb2H; zmmB@hp!$%oqYR1?6{s7`9X)2>?GkB)KpT;Tr?FZ{b|()Coh%L+)6E8}nyv{UajQ54 zaO4O0zqq%gqtK;)vE4_eo!XI+YQj}uEJGcr<}$Ry$d^>ir-{~4T`rJ1*ONU| z6h|Z%p4PPwt;-7oKPit+PfH-mbA%W^e|aYjXgY2ike8=uMd`7SLE?UzMrkHf4^Fz zcw`4=;i){OmRq|1z_r_+%O$bPo+Q)AzDLy*dtd8ZulSq%EpA0_%6?84ax#K9F>-~C zz)z>9k*&=b-?5nv8bb?A^UKW>nP?j3gI^4P3NYgGsbxQ$t~iL8%ZE~>Y6Vr{<{h2M zEZb+htb<+jZcVXomnY43fjbaAMt~}C^!C@euF1S+ z4)O38$p7$Sxml9qA8X61oY3tH)Dsf+)~3)$l+I{xgjz8!?$k)i|A2=%&>JG_vpm^^H@MS|*G*g>*J&?N1=R|Bi>UvN3G}cKy6b>IlTM7+^O&TZ5(*QWMJ* zw3%+gR071BS$ZI?fUBHa`nPcUJ#00tKwA~LCPLhV^222$5OFk?^Q5U~kZn@bE9Mr< zhv`RdP*{Vo30YC@^bj@W;GQsfgae3b934IU5qXsHY=l~H8h~iDka|v&?sX@LQUIs8 zSJqSZ!*d|ymC%;|gYe6Ug`$`g1Lzm^3VLpD5o9!9lfhe|qORrWFPFT2vC{dk)>qW$ zT&YVm>h3BbtL^Egg(@&jIzLNC8yp+&uA&4k{AtVaa!6x6Xba2P*>4`br34k`TgRWW zfDaS_aGA*iNrAg5*4a~>@r=zAc#{7h|um@mgvEFk# zom@9M|2hPLGz5MkN$%Br8g+N&2U5srTu3NuEXGCk*3D(hYuiiqZDEJ^5-Un7G7z)h1M6$`P^kO|3c1bfjQ|c5apSp0@z=7sYqE=D zq9qAkB6}#Z{ploucMWoi>w?~jlsvO@^>B;Hw$KT7SQS2@r*a7#jD- z&u`v-dh>1<@R4;Gc@HcA@e}%mM#bk0Airw}Y$!b2!uy_yu=>mx^aBpl;6%SXW9&e0 z6bFf$B%@uHx^sL>J;i=PS$-0@!4+&-N>_I1NxU zQ#8l@?43#}16mjf-qGK4cVc0=jEECgGAre9ur_umc^6$4tK^=BO6b>94C=%(*)2NM zX(@#&)_r!NS!lU z#y2^q*?`oU3<~RU!ea}LQPN_`*)FcboAJh%!M#%)Wuqlr2PFV=bPa-t`Zt^A6zG8T z(yBLTvUP{h&;gfVCx;tS7-5)nCok_hk;})A7>wXs+XSJAZT6PFz*c))ks%iy=mGT= zAAfrP;nV21rXQ*bm(G-HKt&sq=$KQsoL5WB6aMbqh3)_~gmT1!@17qu^WFieI}HKI zYfWT5x4o7w*c7?vYbID`#KJ*PSo>`9X()ChI z=n*1Ya4OtPFW0v>NWa4`8Vy`i<`i%y;-9FgMxZp9r|}^Yf|V>xF}~#6v@qsUl$> zlnV{^`1;lD&DD3jlynvypq5Z8cmFP*fDFy;s!ho^JQuZc{7!$ex)?@ z^qJ5G?swx+2F-pC#~Go_psCN4cAk-l*uFrDsLiL>pFV%w9X ziYiV6XeVSWb(Z9{E*fA89Ji}`Ln|m8V}kO{^+uLA6zWz(P}^9Jz`+kk(=dQZEbUQt|Zj3sWDH2G-Rc3AX;`7tQFA2=J0TwuWSygZ^F)VISiTI`? zlMo%*_uc9SYfS197psP?xkrz2YUdn^tCgaqZ{soR>Tw*khh%)+V9WF#^tZr&ETs@0 z-Z(l?p1iwo=HBfveWp3|S6#!oTwKc?OsmdOWPz9F~;e5VEmdxGoiqY zfl=W^c<8%nu#d(TT7#}ZNMG(A9)n303QUi2Z?B^q zyCa4W*``RpaInx$(jH)>T@751vNso_4z9rlR6_DSIC7+35h;o1+N7BzPVcOTBz1@D zZCT<>JcKUOG6%by`B~xk{`C0piz&s$=hZ{Ozst2y9iU!QsTd1yrO#=4VyDcrl+MV{0mX0src7G^5g|*U4x4>dGS4 zJ)8CE(IZ6RkA7=qAhglw)!gD@*@Fb>Ihx)Q8%U{9ai=9zu!Xk)+wL*s;;i{OXl~6j zVmz3-r@-|3ih!UlxwIZ*~B8V}iM$X;0+Z$=Vn89;8xmk4(#HOnN%hy1RTR)$!%wUAZ_PPv|gM2|bxnaTD z@!xRZJ~}&Cv8K$(h8KYBVNWIgvKLF!!pfK;;3(Uw)<=1I@3dT8@!YLel^#093YP(q0iHv2aw)!CMT4!V&CGJ+<-`MB{`I)1m)w?Osx zvON@2T3irbv7%1`J=)#OU$RDQcurkXiq5zZeoXE=A#IewjS)TdnwUeHp0kDec(kikg zQL_Q5GaY?VEQqy&-n={i{Nv`|V`=>m9O$4MJ4+6)%(!tFC)hzZ?snuc_E~d#FsBxD zK|mBf5Pw4cQ!Y@(42^6{IA=7_Pi(EG^hqf=$6uo|i|uuOhha%*+A_!J{s^)ygtE7P zt+mBIX>GC3Y;WdMC9RQYL4ny^lfiO@9T_k~J0@pPXUHC_HP{;T1zXF@+%9hJpi5I2 z-;JxXEBeYZ1Hz*{mAS?K8LQwk-&6oo=1F*@S&=Hen$|;j@wV2(xS$uqY-5BNo?ri$ zj;5o({~ZTwJVnk*c=QD6QiiS{?YVxu=lThPd|LTsvBFd{+c|`fv-NU&c@5XusSqal z4Les-wanal3GQ2gNAb50sbz*cRFqc5wsDeO$B<&cUr~0&e|L#6VOFrr^o287I*iVK zQR@Ot5o%NJ+nhZZrUp;Nd^}`d?SZ4J09;E(CT|>hc>MUjD5*?b*aK-yPrzh-)=NzvW=j7=?^>9iVicY8&F9gn zCZGGiD$*4B^&X2Bc=iUp#S`^rN?9l%DlJe6q;tZ4hYAQjlXs?DEzWERtNLPC7=pR5 zrG@KLdX$)`l)kM2?Qt`x9n_#7GZ!T_WUqKG4I}o}N^&}7WcvSg>oAn=1&NDhQVuPDRe8%QEn8nTWC#E4ioKzK3foP0c2jneh9&?DQYpIg)gBosK za2*_Nf7{y&#fw2H&e^~v8u|b3EhGmc)YY8Eua5^c^aZ97=rpGqo~eoTFFk|^sy{4YUDjpJn|%zbx2c+L}W3udg!h zK#}?&)nK~e@kKer)`_{9S(?f|SpHRZ!9~!BAuIvSVw&}CVFEi?IB(Y%2Tf@yOof{(aW8uqg1n$M zg5tO(ef*XJ(m)C>bONa4#}J!pUne~wDCBqt$Loca0-*iE+Zt;0p`!<=Xm*n5fb_`9 z{%*DqxnWpo*x!0l4@XcRI6|-;uM$_+mu2^N%93WuLEY7InMwxHbJV|)LBJv5>MlEo z;Q#go>W6El?ETW_9vbSP57pW2g`Yj=WVG~Y+SIPwX=bef=uy;-fV$K56yB(0NNp3N zo>|g7ZeNkQ%;P*#sTVMyaKUEnB@5wt#mb8Lztz`ANDKc zxy3lA8;HiLZAWnqX2DJoqlxW7$$Cu@qe)_`qolkTjq;@=SlX<{PWc$U(V(HHt%rKL zgvSONI;fx_&Qb<;rYb0;J@)b9GNel&J~xfuc}D|D~ebkF%?Fwtx4D8`O1tL z(3^lM)o7iA>?N@BIGOIteP76bOYZyOW|Lwg6KACE5k+aoZ_FF~MU~OB(=Ow6|DQ5j z{`GpI`Tuxyl&+Ze(xqH)=uzqHa7`wL?V3zQrf{lhT>&>7E1V`eAev@lWmp~1QGt}& zc;5L^93OqJ*S~46;3R^Oh>Q~mMNw@lb z*nkH_x&Y_Tqovn!!EVnmH!u<;QwL9p&8PQ2zkL1Y`@5f~Z{L6aXZqubJykMX%j9fs z-T=rT8P9pTdls}(Rap%wFyq(fIf0xbb{DEyV;Ta8e1ik?Ag2;}OO< z-SgrF(b6-u@R4=KmOWa6bLY^-r9}E6kEXUw_o8~6xio6qOxy&X@@(zKj}UADVMm(s z2Z>H4nWKF)IkUppEOw9wI?KdO#ku(chCKI-b`F~Taw2=PMAbV$ z65=Z zA{p&9rGVM|>g>Du3|S7h@DpKCAin~e64G|e=P#Z-8z6E{Ry!OJIkqJEu|^PN!f0KD-S_e@AAipv~dQNq1ip;?CcD!x!uv5 zv~elJ#3Ko`9_HSD2zYLr8j5r!JynR)YDc9WSgcsqM`M`oMe9)sc;}4S0;Us$CCI3Q zf18VXy95*qMeQn*8jz+zS3Cf_WNB`lrIpW2)IB9RI6{(xcJB~*An_x(&+;E2KaRrd zZ*Jk!JSQ55JIC<#gwlAFCFOK%${0e2@0U&Ut2sh%Kft+|3LNw00@I%CvR3qzz80m-lC_hReXao5>IUzB24 z)!JgI+mVlSSE{eqmW(YoZvc1;;S*gFxYV_h7f%| z-<%mK-^r`Y#k=5Q29jD>Q^2|+R}u_MDp=;E^lWf=2gdUjL?m;!4JVT&J7U|u-Bjnc zA&soG1EG{qFap@Vcl=6m5 zUr^*&r?89V;nGM8e9`L8I)bmDQ^oY``Yz zjPC3?yR73$`s>Uh5zZ&USwZMk8!;0Q2279W_f$Q`>OGf&cqzM=Eh_hT?kmYpILydY zOk}#j-NxhDs~0(20=wOIPA}g+oJ|*sP3CNqi*sa=(j7A5%IcbLwf-UzmsAh76LuyK z^*}s0JWG87PC31(zJhN;bf~vHhK$YWig=YO`c`+sP&~-&?ruEBHFcS}$jsUniapmn zxspB930;CL8zvX4uwo;Vfn{c79h~9?+fjBbxlN{DZtcxR#nYg_YdfcrLcB^+J$6rI z@kQArpKz>4S+sM7ygu-y%&)yNy>UuS(|xt}%srJ;erp#FSLTEQNqh-MLb(GWoPp62 zh0*l4hO3rY7l%LIY|)Iq9qbP7J&8=b)@yQJN-02U;3)MMsT)VqPj5&^-D=c712I{81reK&?PrA~~=|Hy7=EH#0%;-A+#7b~)U_Mz-^ise~ih z1HDVBDx6;6P2ETDnm^oN)$%ka*WlT<+qdz=GbT@zwjrhCCnmu|J9tdxNa>mf$+=aj zd9Y$5SHs0rA)#^=&ng2Wd{kvDS@7k8H^SNwcjgD&pNTv31GF4#R|to11ce&M z%H5D{dSAFa(MF{D>sv^Q>tAj2)P^ytszGqO@#D%|m0~1h zuWH-YO!dIl<^}8{aDZ9bfz6Jc>4Ql^QYI$$1OxETPA%ax9)g-gphn@4Ish$pjPc^& z>|kSkb;Z??IAn{q><|eVcR(-OGyUBa4 z4jn00rFTGX_mfn_EizWTYrB|*PVt9$G;@Y>{>)Ze#Ks@&6(Rkwt0nZ$W9X`pPZE0`!1-&Si=yw z>N`aA@r0W|>f_np1oI7-WJKASpEAYz$~9m9ZaoZH$wG-QCV8e`<03-I)TiQrvYPRW`HQnH{qtBQXLLP0s( z`dbNF{bN)(c}((-3MTI2&`>X8vW5M_iyR!gWU34VUivboy3_cum5`7&xQ*xxR!nJd z8)d>7QEu}~Mmn=7(4_+$Q2hQH4SdH)PDs^XgIBwiAa`Nu!QE8^?Y0Z1v1S%TP%h8s zbMka&HmI*W2!4v;I3oFQ_nX1)l{m}0+6s%x;~;{bvK(!!L~u(v+IIx9I#4BU@sJ&g zSk3m0xWff2Ko>u17DTWdm{y2Y)P9f{@N1>1AsP58%17RJ%aC$7l;Wa{Vvse&J_YZA zZrM~;zTLcebmhwUQa4!Z&o0&(>zmy!c1~%zjKU?}vFc5w!;$uDf`LfdF|CU4@|Nwu zR6dpsp}~DWz2ft^#^!8M@N65bkeD;>1)R{8(}Xvets?B?i=lql8?qD^myiKn{(y zOmW2V8%j-DH&LX~>_LXdW+-!ya6gMBPN1|&VosxzqMU8z+89c_jgx?f=6NpbM)d+~ zVOee3k(}%!hMAa4!NgUJR4^}^>=Gp++a@Rm9bSEVM1t1J zR0wVM1WA?Y^ZFN7@EofjOMC(+pe=rgUl7wxnbMU$2N|EBl{G$gVPj!!a|LH_BIqL; z2d5wkQ}OO#SJ=5WIv6kBxNZ^ku2`KF%U)BXY&jN>rv}3g;TuYNCAK=V^%x~f^n4}G z2Z7^hZd7O221^f1C^w1?jTX)^KY7yy-UCAx;UZ6Y+0EQ_X( zkShzWa_Bh4^7S`bA*>HSc{}!YrH{AX5ArpxLMQDTe$d3m*j-p`vS>*Te4xwGH-mYg z%q?TDG3PD=2&lVp?fUWB_{t;4Z{F)-Os-sqvGTfm5CFRiCIbgGuYl$uz2m~haDdZy zg13$B?dcICm5-QEw4};dY+Nx_#?o0k3mSugfpSh}Z{3&%&mIN3I=FQPDWr#S&aXLz z*D`J?!`YtF4ouP%m&UeS8r_*;?HpPQJ_rlIryYLBD;&1OtmOXUaKaWhWfB`7V{+_ zTkiMelAqC%_nDjRx2YnojAlynIACUSvN0O4zq6I31+)_TE?OgY;Z6dhw`EV`jMlQP z!?SyMZlPymtku9|D9jS9y2wsViU&2=ockyzDaXYP20=^n_EY<3c{L8h`JGJ==fyQf z+S;1Lxid0FP*QMR%uM#wLqG4+ZbQQdH$u-79mg*fYNL(^+4CnI8!-UvIN`m}ir5g}G+^#UhaIEtBroZMW zY+%KKnON6#+x|?#hEt+ZIjAIKAC}*Y&i(8-UAv)%)3uR$eZw}pa?GBP|Kzi3x!oy` zt8l!NwVn*uYj2&x^-gsK&($4@dc$5boa?xYPz!2#JzHxk+ElG zL2j9Gp{lX1vPP45E^3+=JV;_bH=$=3)}>V5r8;7A(?O?ZDE}ZGc%;~mP@3$N-Hoza zX3#C=NPDkMF<~Lm4vu(J<1NGhYABbZJ>I}vPO!O6)kRfMY0y1z6(^6bk*b(8mzB5Hzg^^f}_uxf!j&i(^gYCh zq#JFaw}`eWxVzz;pQVNEWs}u+hjAyPH89#1I1MN3a*jYlAmaj#JgVxFDo9N#Kj6p6R#A&ppU6O4qV)MtE=yZ)Zc8SVE0bA&tGrOsERTw>bqfh7KG=vOhL4F!%-qw7 zqLTSZ@`^?%L;^K@z(TQnrC6cbF^o91W_f9Sl>}#s3rQ^=?T1m;(rNMs9siccM-8M4 zCxQYH?cU1|?yb6DXddZ0JiYWp*Rb0TJ%LN-BaS#sW~ZNuNxUf)kiuqayn*A`)<_K) z<3%x=zkn=xxafi;@uSqbMoFngAeJ58IX`O5vB+Ix4li!FM*8L!GJeKYuf@g9u0--{ zC85(B-*~h#ek-}eA-9@I+=`!yBe!(${>P`RLQMbZXea3Ndp-X;>zdMeXWJ9=r5CiH zfRLbGaAIklY0bBr^X<9$UavVj*J}61r)LKy0>UJ;0Di1I5UX#3V7Qu`goQZ)hZvlc zvAPUJz+MA(CI1%ayNp8CI}#;G_EoxqJ!3>zwDeZNOR%`wQ?}JAigt9-p}_)92!^Z5 z)*23zFul_ja$OkA5V(j}aOQWW=m{o~n%y!zrChVypE`C@N}QVFZ$SEktY%j>aMBz- zo65}`THtv7^nI(yFh9C-FvjLi2NijlP=rfpWLvJ8P8N|p#@I3K>t>;u{&RD zHbI@&mPj{Zi4SGVeL2^A6h<6pSJF{%P3Mq!qLe5&A{1^3sXO{Q{dE9OS|p!n*i6=M zzLyN5!Zd?9A&5^@9WHJ^m^hSMiTBy`HVZ!Px10~Di&zE4@0H5M1gy|&W*hK`x8Mg? z7G*0)t7AvE#S&fNZe1CY%ag9T`Xp92ZE340E}JtS|_i7-o)*%JwS87-6Z) zKFFa|4zla!lZbY*9+p*YJUVw9hrr!l7Bvf}j)?$Vkj!2F*!j zNKhW@^qW}ZsM%J9H^qso2u-f`>UBFwp4w_avZBWw`E33S8pb>D?_nzqBhQ>5$vus7qZc% zV5kS%!)>RGlX8Er+%wh4j`_s}9N#BC#MW)cPZAIQ=Uk-kZH13@GFsg0YB4s zWMy_$q3q&tkY06l^41c`$BCO!IApp{=NMMz$GX=?Bwj`_DYbE8gyS+H00-`0=VS5; zzcJThte@}m&fo!!n4mSzs`LWy6GdvZ*F0d9=U7FmC3|UYC4RiG4>CAIce50a2)9Em z9z$;K;DEScmM5XChlL~`QLvb9GD+556;;4)ZV~}f{4>+P9bi8dxMBEER;#m6e?J9ktbX}YuhnCEvk9KhGLTk2eCzTIw*;v507;1o;p?v(o`4N!a+bXfIvai z0F#pxAzVz#V|Z8Nq%rk2!W5&K^hB9^{kKdkO=j+m^(b!V#+ZW2Q7hhUwL@ZJS}+!TIjAQYM=pF5UKrVCAbr6$>iaCrUhucCWh}(DS)^p?0Z?( zWo%a1qdZMQ{KXG}gAz3DTcwQ2uXA}c(eqq!sqC)N;&q9KRMK;w4v8btKb10{X?-R? z!Qo0s5=i@z3 z%mh!XW^)MxU=6bT1lR}N`XU`#c8Lu$%6fKSlDK&u%fCvKyo%$ieVRA7sS7c~ztcdC zNVN|pM&(ox4Yro2i3Y^PcNt%ZJOj=x@&`~Z-|p?LK)96O_)Z@#&d{G(>OZ7u+U+B% z3>l-j9JZ0~d2N_Z3;kLnqf1l(QfMgSgk6+)ph$MV8yKw6To8*}zEzr=2z|sXsT_>8m2Njp1vJ)WDAKu6{TV&gsk{z`hrX(12A?V zrQ9#3SQTpV1>OtohRw9Nm+KN+Z}T|%!&6`|uLrLl^%PSo@c|qJ9mu3icp=R$_Fjv7 zIYMglO4y4%5N>v6n2co09Y@m5x}Pe3CtWp?yg$)X1O9I2sd3{m8`8nG@mm>38oXri zI`%)@)C0Y>p~h*^Lu}}nIHcVie!o^&nkO?{?kudsH=mfmIWWnfU#Dp^MHY4dFLo?v z{$jycKUBlnmDm$4Ek+r`6_R8GsU8P&F^+f>S~`3dU4zQlA{p;|l7#c8Ly1(ymc8Om zf>%kR8}_uD?Vuc1G2S>(D1)3(Ly34&?;(<=Ax6fM&8;J-ba%aRGD>5nb;ePnnPYve z)yyrQoZ?OkoX{vhjHgv_)*@Oi8gY&GO;+PXDrPP`yS*-s9gbpsDALn)`2?G~kO#BJ`ZEu9s_aw(C#%7g@Gv8;EGV2&wu_s{=``4~rWsZkf0FAg}J1vqYtU)$h z1)Y6(2@BZnbfOuIEntdfk{l2-1z}-1HT;ApjHp!NBlh-2*Dgc%*0QDn*l`R$#8hoh z1{C|oxp^?bSW%_ZODyY~*hy2@O$|2XTa8fSU5%4Q>Z$z)OE_E%<|Wa8oScKJn*$tD zVPr2df1JP(r|~p;Di+G~p+IdIl!)Gg6WHb+4(0SUABBFHUhQNzyiCafOgl<_fgxi5 zq$y=9UlvixhglQ(RoHDnp0hz*Y+m{5mE-Z1slBZ&QHPSY5s3}i~Y6D3wt|f@m+S7N#KE@uoF!S zXVRpSZpMYfaj|2JI>(h_w)Bt_2~)MjL#f@*4jfCCU?q<|*gia?P8bC8GQv8g=J;jf@7T4^QHTXRamb+=7af!)^y# z+3XAjei^B}j<}SrC6pq*)bjecCgoTsoKhPCv7B4=IINte=cha6=M+){!7K%EEQEq9 z^)oDWTsT1yggiJ_#8UY!iieYNE|enP&K6wVSUA_P#)m@04wU*Rk&&^#Z>`SUN|>z0 z`;yQ`5STmj!(^w+(0ZG?=?Ib0PPa zmP*5}@@`bId^f0Q<}BEna27PihzD!gt}uluuf=Oc#bdK3DXixq2xn>q;mLJQS$=DF zwevMnUm2rG=}S>W$j*oihZ`%PDy?RVCym{}ho7a~S*xS3qSA4$jluLOK;3;B7GYmu zr|TtA5!s-DVC7jvqujpYa=Q%yGRZ;L(p_QihXN-vUCuhUnzgup5 zE)T~dUutvFaxW}Cywh(-1(YYK?U*MZa}P7${#}hw*;Rg?01g=_t&g}zC)`9reyb?& z{-N=9!=(_f6pQ7$)+JG>P%81xgUQQN1$Cr$!1AbalQ?dXnccS3@>p{}7CctBlNvmv z&kkKp20w2j{K7J#+fsc?{f@{(KZ;2Gs_cZ@0to+-@eQB7hH|A zv@~dFttOYEqh-hgnj{3RW(Rd@Bj>A7pLs)xsm%mROzmmC<}XouT(2Q4AsT7cB66U@ zCkdX*IA1k2Z%ks@X6Iqom-jYSqhM;@2gdOr9>9YtksM9u5$>*qrBBgK8BOGPPd*<5 zy^8>1q-cU@Y5O{eljYGpIXXPN=IL^;!a=fe{rK9AgX6|dS_iJoCl82y+trJQR^m;k zPT%)7=i|B2+qQre(KcEPL)0ucO=khp%l@IhE4RanwrsB?g~8lVrCt>z`$!a3_Kch~ z=QvhRw9et^5BVR`M3u_N*88#B%>vCPfxm^jFOL0Aof&crU*vqWi9E=vWM@0r&&{2) zNc~iIQHmc+u@a@doF!BC6(os(R#VxhLtROFDTW_`E{8_M^evm~6As}OWW2#MD{U@y z;ar&ar`?fad5eoc&C)cNPV5OJZy})#iE^CmhEgOR5RM_OFNV2+?&oMa4<8Qzu_|F^ z8&$Lf@TpfKQX*L{2ulT#I03Jj#t&Ye;g0^YY|}CRJcN<1{xl0Bmiz1%jLL z)=}61p|$)3sp>V1u6ug$4PguQ2gJFA56sUK^C@PR`E{{9ehQ*g4 zJ^_5rGV)dJHD-JXNx4&XP~-a}PLJh|=P`DYzMZbw3g(`d=mNziW6w{F^zQR#);1HJ zk%ww$-OXZ{Ki+G0h#*3ST0x9%wtz||V*7ljkrZ)uXG^<>&nvl#X(G9=7&i)~uk45~ z+&1S9cY^Yn8&AeQyZYrf^C%~mFhW`*;@KhW4iH~xH{ubY#=ygivW<{l*R~sZhXTwF z`Yii6w_rMsj}*Vd32lzPQ7zE6o!%(ahFN9JJ$rBX=;+#b;o5ja;!|^dZ*HH;GBaCl zuj3fO#l*l2>>P$tmqBRICLLhXkf@@fs(mg7^jTePC*863N` zxZC*2Wl8?Y69e?krn3QpXo!Re)mG8ux6ZfW0rfOCDPfH#Nl|)Uh>xY+<#N%ajQ~$h z>=SQzLt{!6euzj9cf+bnYmO_cgZi<4$Z8jg?3Ua^aLGp_gQ7;{{=;0K!NFcI7qTb?`XWvp^IRcHb#@l|!V6sfZw zf>^^|0|(a*0czb41V-`+snmc zbciq#jRSCZz`ond%z=WRuh~;;q=`6oW5%IZH5`GhZ^?9Bmf0`1_GxS3R(UJEoD`B} zx*$_cS}AS}Hng?AGz!9?`pc`A2hl}SNMO9J@hO^3EEUH#uQh~G(ODXlY(-6=*-&;; z2X zEm}6UFzfKpLST8K*%T6ZQ1lj3UZ%~PK=K1)T=W*sy;#IJb(QGMH){} zvLP`WIzv!D{4e3b4cKIvGAf=ZI3|&qA**&D52h@cI&4{QZJUpfor~(5OsQ7SuxzyL zF2RpwBB*jlsRX*p;L8pCRqvY2`Nu-492CBy|rndqKuiwIKfl!&P$i>EIomgzd7M4d?SLQ zz)rmN2tLuAOg5Sr|%@Y|`ycTsQkCy}(*xO51e8=ZdVHKJOTQ zEi$mRr#d%RQRo)>AeW&({9yO>Og!L{85S}jg+=1SQ&XYrJNJ%Cj#|zrgDgdX7PvU= z&kF%o9UGsy^i2W7mzdSd*x((UkdZTpDMq~$_(F)N*k{U&vnf|d-8cnQqXG6OZk_|- zQ5)Oao7-GPm22iA-`|Fwjv6P-rj@;wwVumICM!ZdB25mdMJ3=2O~M(Lxdwyf2o5=U zlf3UlMYI#TEN|*bb6$XHGD{mWfn`sW#C&rJC)HNoQpHv}&sqSnW*S%R{g-mp(b`}K zm0+J?D?;>=9HC>8bKcmuU^baz@2Rgq+7C*}K`<{-NNCZV~}W0&7tV;}+BnqNX)vt6gNzEP6QDvG=SIBRC`*xYWr z9tvg4-+{7^p;%>Y)^rOuLTF|i5J*J5U|%)X7l-1CW3z?24towSw}Y!zAD8=E5PI{@ zvw0Fx>^sgJy|t=h&T*{H)frq9=Q4d+1;y&6R?Om#w>H-j#h9*ecE)Y2hTS!%Jafpi zKN}x=5BRm!chP*6Pk6 z(fuTEb2qTkMT}2`jb2ZryybF?jk0SbtTq}|E{JxP2d_)E#TcI8OiMmDxy;YvtjQCo z1{Irkq&cCx^Q&nec83$%1Y@N*17w+~6&xdu!ws78>4=Go5q^0)O)Xf>e zf)zLCg)s6hpG)ayVlvw#HkbM*p>ROeT7?6y*D4%vy%Tl_nZLw|K(|=2F-^Lwf`%?^ zOpYyJa@vM;vx6BtsTznHr_JtL>x!JH~E2NQ?I6S=KI^kN5C!qL>7&iiI=%Pgg z>S(kMB2%hCzWLFy3J1L*FXGm4N_`l+iB%37Zs^#n1Lb9!!V@a?Qaqt6W3hUvtA+VO z^D5KTCg}1liuBS3jj?kc!PNNC4?zwHAqXckFJu)RQ~EcU!ve?Jmv&nQfKcL~DEUxt z3Zp`+e2UWtn&rfUx7`T`x-f0JFaetAOpSNQ7?WOro}|2)wXFEWhw$hwqgH)CWmsEE2a|E$Zwu1zj9`my|f0&Caw&7AfaG4K#f8t5?q++ZyE1Cx_0r( z7!O%Mn&|BhUH=7Qm<2&dQrT-54{f-8H2{j=rpV}>>{h76h|Mv&}~di zoMVg*aB3gvmPwa(@=!j{CeZA;K$JbX64iUgK-M0^M-t{#ZF?2W2~s08tO=pOk8_b3 z2EQ1{l&pCSMLR`tWv5>13G-?!QbcK#gL=@$E}<%^cF^5dk`P!o8RHHonXZ-sg~1c} zzk10vi9r!QQHvkI@$y|f(U(fcV2p^T9$q;XED|V!6LnyvJ3+wP4l@=6!{i`$~vY$N8%K z11d;XegOw2TIy+qy*~7ig}XXki+(H!R=K%{cv-lN;z(<=rPNj6%fcpQ zJ3(@0y;(r)5)W-n&a5vpX`{P*PtuCg29;KjHEEmckl*XE`X4_A#R#KSe?c8fp8)Lg4j;vzLvMZ*Q1q8Prw0&_YB z4XQ=W*tU?Juy(8EFE+zs(|soS2}%|f)pg}Yi2a*Ha{$BgM|@3O>7pGOij|?V#L0#i zOlg!bkO}3kLzjFRLpc3>poXolGOkmH24M;M=IDAgG#6t>H)?U=MgU-8u|7mo+mu3la^96fqGK3uwb`7*MACdcerT?^`b!rCs8JqX?x z{&SUCL`EQ@*dNZ`QXd?1I%a%fd6jKUy47d~EL~ZC^GP({Vy(3%Qd&i}-3}(8a=@Am zf9+gg@u{#EXB-kU;0cYBw#KXGNUc zL8cR=SFvvmm#F3r7?3IV8=W5iREy`Lu>FfCm-(8HB%|#VL+P5!OkmD1w#CbblBSt` zB4#O-URN)hSEE)jFPgdw$`hmy_T?xqu3DvD#IcV`I&4Y+9QAe!QPa=!iRr?u=q{}l zS<^l#Y)S1HUMt?Sg5*b3x8juz)|e%4&D-6Jm8mhI+n zX>|>oE=;Wt!y1lbfJ>qPdzQ_4*0zm}gKa4b6erV7;$$Xpq#LE7%*apq;LnV1Rb| zsi4G?CUcU$%X0pKF-NLgM8H^XA3Fis$pRKMb*|oHQFfQ=SIlwS2#xQh(J|(ss0GS$ zBd2%{i#4~u1^e!V-+xtWVsTKxQZ_|rqAGka_fdD_m&>RMY=7k85SdsFtq2RmPc#dg zs*!lC4s^dgAQ9thD)0li9Wpxfr0v_meID)$u6)LB-(G@=J{<5&DH$sz_#5hz}zrm;F^s$_&QezyWG}%Xm+r5+OolfxKCrJ zZ^2Bu&MK{-skICL49s@?r~b^P^b*Z>`gC+jjsG_$uCOf(XkNJV$kp|$hvU7o$h-ia z25Gkz)>bwdC2g0&O2%@FE@{r1LgYHUig+%#v2B(~>5nfzdTsp3J^8u6HmH~seju6( zd>oeIJq^DF3*SN{?T8LP;rG@z?QWpe%P0L_o~%}$jth3g#t8(x9r;I)n({CK9$6fZ zCD1tpS#`RM;vfR|0F!ID^5Iy(i1+CBGLDnOzuHj=NRCNdM2b(UJwKJ1;2@(P?;Vbh zpjSLZk|7g@wvlTdTmJd&I!P%(@=Xb&?hb(1PPSHD;beq;2@x{}c{$E$_X5H>DG$r= zLa!i}S%

    ``3kd=1p(+#X0cY!lp)Ow|m->I^WX(vO~wIxsO8ajvQ zVkdABeQR!P4wsRLqBx=pYHHMkRxbew&GKLH!wCl2zAcimKR1M>IzU0#k|0t>CuX1? zqx+b{4E8ac@-h~rwdWH&dV=6#W#b-uql^kt-a{dqNw+GWS-ZOPT9FJED-R~~FV(m) zs`?u%+@y={t8e4W4LpE;0m6B52qCHwnjGST^v)M-IpZ_T7VgF)!0aG`)c85(ahEy=)ky#dVs;XXnYG;6iHd<=u-ZVx_&#qYDJbu&?TNE#CHDlMqq zFcY=ptZ)P0 z2o*|V}Q z)kH7|Qq2upNL$4iy&oSrT@Qimz-nr!TIDRfdET?MsSIKDA zIY>|Dic;GfZ5GX__6nrI75#{ZlqB4#k95+E>y{g+PeRduiIrQJ!Yl~1|F~R!vs7VE zx)jRjE=N!nk8>WTKm*t~dSkfA`-49Y|Jd&hjt9fz$1nmu`swx0pa1gu!^gYZUmpE5 z#PRp_jfpP_aj=|;{UHczW(tquRi|twOJ}aV^_z$N1yKA z{N;!DpKV6fPp|IY zzJB!j!%siIyZr^WZc|yhf-mFz# z!_lo(aU_fgHYAwh>*(!AfuIu-A#9*FfKqE3@bh3ODG9iR(Z=1+6gy)h30?ABxg6* zme!C#_D-|?_$30lCkTFH4Tc`Hhx$zDeqqUOwo!q6jwpR|-@p}!;QwadlOWN*qW?*AXuTWbMciQB+^NomEln5nGKQNa zU2B_QHtVnn&D>z?=KMGkPRjVb8AD@2e{R%derf2I{Z!`RVX{wfXUU2!Wn_J`>>oY+ zQ`h;yf%C%y=TC6H_kVhS|MBg++am7(`}}``N2ccdRP7e)sv4_q2`p zp&EE!k6YXan!B~PEpK?#eXEDo>(;J{+WN(N9JV=;b;4Bzq7)1Kxa9cr+$JXJ(0b z#^oFp3#a2LeMs=s>{jCym;}NIZwj=I+|AG~0PkjaBxDVMr3;ys()h(13T>`kTUNAOKX zy6#c@pmi+&Mm!6LI!h}2zNSsJLTz*5QP?_Y42|`@TEW&bMIBgvQGqLMc)|j@cSq+d zYt9k}nvk@?;az3(14+&v^#dx0P6FiM$=zFKPqcxhAZ;230(0FEOo@ySQ>$hR?ZQjp zXmw@CCVQ;)-mDa0$6^sV?{R4S!(1&`ImsH?AAo&{f|7~s}`m0>(n{hiuo5o@D1QQDldF4~t9-C~*Gnp@{QI5iRDkibS#IL?gil%O`2( zJ7~Yik$>i`{Gwtg*=Gi6ElvD@Yitg+93i}P#e*{0q3&lyi58T}Rz3$ar=U3upQaEP zBdSoudtOE%ov?+lN_tgfKh(EU;`PbJ^_+TsS@!^AP%bc(8#!sX@KB+OUeSxQ4~IL< zml0s`062oMNyagp+Z5(w*ID2~9MX^I98k4>#cVwdFMcx(Px4`SQ0o#n4UneW&CZW4 zU4vUKhhY@3w9TfltI&sJ^nq$QHqQ<|JBZDA4QNr@z^KuC*>gA4T;vZ^Ei}T_jJ=R2- zFP4v}ik-0KJNuufo8#8u{3#+ck~s>2NaU9$$W#OT6^M3DFt4vXjRE8jS!foL4x^Y7 zSm-o8vVmO*4Z6e%F!_a1Ww4IjsXVs@P(a8aM)Ch`{0XBVi-LJiPT!MOLm$0t^m3a>}QVAEWm ztX+cX7TMngLJaZMjJ8MGnwe&RdVx+Q*7C2K)pJesk zujB~MQ(^YKLN5{2k8|!lL?fJsnn~Kom^S6`u;ZJkjB-kND+p{U2*#slyLMuL^d0Hm zE)k@?>$Mcxa9x(SXf7yb#Ib~=p|T-E8!x+CSHz1~bq&%T3VOSO*FBZ)6$Q34!gClH zCcsJCylq*a4YdBdY@RTEKZ8nm*O)H#Xf45d9Vyx7cxyidTdM-OjE=NjhP|fX@O11i z9`cH7k=^>c=Ai(Y*kIj5y3?X*8kXct>kGFl_hS2{8xY^XiG$&r&YZ2eXw~F#9MRnn zqUHn@_bqxxggcMLef@rz;nF|HVljC zdUDv5g2exFEiMpoA+6Z*1WaM)Nu>=r8k_*rMm^gi`mN=sYU(}m*u1JZq--cH6}l0W z-Y~NCkH>CgL8>a~%3yom6M0F8x-a)G)f%XZy+WbfK3^{@Lvb4+4h=E(?^Pzg=}FY{ zGM3*+i;4&xybZnnSSb)CT6gHS+^R+Zv#hr_P_J#XxtF91ZtFZkKq?g*RFG%LdBz3A z4Ph$H_zr`TnSYIyA^d{Y=V;F0M>g5XT#tO?8av}=eaI7hbqHMx7HYM~82#W<{<+54`$AP++ zqbnp40Bh^`n-cQq+xdGqhTgwMKn_d~MVJn53Sq(ODD@vc{P!N8qT65Y`X~TX3}p}8 z^sHZZ$3f$cgMaysD0)`Cd( z|Nk)dq&xnPVNbf_{}}e9J9c4Dv4u`+3!l5pUFf&maU*U|r!P1Anf{7?(}@(OQY(ZE zhwFa2T<>0zA*JG%5)+h(as)Ooh&*GarbLSL5NyaAxrWGbr~q~++5g5@LP|l{GfGtjBH=yUDM!3Id!hl?B3Bo1rZL$? zK19TMcLSVBaDJ807;Uw5kW4=veYKc`ZhhC3j*jt&`9diWv_WB(WN|6wS@xena5fD3 zDl^A?m8`F>5R-^}ma8iimLx6}$CAZTRLlN&Z$+Nr`8FTcnF0^6`uI>7$j%S@l?l?a zx#p2FB-0Gp3vni-eY6J15Jx`_bv~0E5lsd?DeUuwp&lWvaaODoZ`fI@ll!o%QYX$w z+t=oOh6lz+|JUYtuoa1d;K`B!BQpN0hdLw?FdwPe4d>&*8W#J~#>45YfSO0)yamf9 zMYP;20rE)?tx2Y@f6mOHx_92|&uZZDX7?Hy?z!YX6N3@g)w$Iha?u#HD;X|n+u8#M zqeXW79~S=5^t{YfkfS=fpsayKl!x^mDLBuHO!RuZ1AQ)`gQ(9_mj#t|v$Qm3DRg54 zZ4FNFa?dP8+*u7Fj?cxsl1sgj)H5)rn1c3=KQWnU^K88C3V6vde`&R#!nENVz3tVR zcDIF$q4>P@46u&vnK*!o&8UE=@d@NuQHbWr@{1#d(k-QyBwEZ!U%`^@p3)YW@m*&- zR71*#sKhsP5`{1eE2J01v}bP@VH(QF2v{aq;79knCCmVb%>}|mg@wOD%b|~e|IAL) zIWliTueh1kt=xqPrs1YFP4GMzsNC@v4=G{!-hC^hmUvfr?*!9uZR~SZB1Py36`hiX zw4wPK_KuYcSRw_s1Qvuvq0`H{QJ>b40_xvp<-ATg@2u;kAO4l?a$fZ?-61moJRTOX zGCvHK<(wxDk6m3t-J(Bul|_H>^--q3?`8aPcUVZU1vLu_(n4-7LQYx@S_)X2pWO@h zysW~~$WkYi=5WVCh1_`U|AvX2BVe%mCvD`+3`p%&l_r34kmvW(T*#A$FS?KF+WgBG z?o1gzIhGm&KCvmuL5Ld?3{^d;h;irI^^RR$xh{@m3ee=`M$)k(49OZmEeDwxTyG5e z94|Jke)ctfOM}L5l|AFJSbj=fFhbOK14kU`1hp z(~|%R_LeS;P%3i(4_p(9BTeG^^5q^uj!%&XZ5zd{50y7PK0w|lSu6OZ$rsh=nPLOf zsTYavZj3?R(g68OU(Q{E+c76Eak5(3O!WW5-Hg727t`(I!EQA;J%uzuX_o(J(Il!R ztFD}kHoIwXfkW1(=PF0$qX@I->DSUMEi>Y@}9=+q$}YfRUMt{his z3!C3ct{JwKT2G!^TR^py;*svB!o}Y3>51luqR(zQwa3SS#^#AILjp~>9p^OGdwx>)x!BUUd|3m~x>@A-4mT;`99_>Oj&X>F20?5ofuN$D=iRge({`7|Kqe zZ8cRdT-B+1;XGR*=vCa+=gF^eWYbW`$6#?GIx-N6N-ZtUm6%ZMmkwwa4pkyfdM$tH zgVT{Y*E9l~$|w_734{nq#+gK0Z-dH9GhIR-9bH{m_2X0bI~ZH+P7F>kA?xj8$hBq!-GOxm~aXVeUMnGL)NW`x>AC1v$M&YF9 zW2C0=6=WPVA&RVKmLt+wW{h}w<#QCWH{A5{;84oWT?MwZbx8npnW1t6B~Bad6h;Z` zoh2P?-Hr9hpKN)#`Hc~;^3Ml)v_*T~?l7x7ffh|fJBPoDIPJ!#l*Snq~JExXS z?i~Xv9fl|Ejlv6DYIIh@y;V4dmzYAw)hn}vP8hV=by8b}L|MBV+&BLK;`Hi(`zqtc z{q(>PQXo9~4C3r6j3QKLoTE(EXq~fmCW~J@(qj{0RP@Gi5u_33(&Hhted8!0+$I;M zYxd$W87OS0?RZNA)$;rjfx|{=8M@3FzzZt^*Xb`$i>I17JR0)EkzTZmMtXJu%j}V3 zQxLd(_5RJf+mE#PAf&T6^PpYJ-iWC-ZkQ-q_3mwqzKCxqY3If2X{gQo9u@dopuit$ za^&B7Y0*bIe(7XIJbU9ApLt+tcBz!Mir|Edmnn9pe3J?j2*diGDMOhfZ(4{78=Z;xqG& zzC3n>?zgK8s1!mBOGTyST3fVF3%oXO6ams{o~0tOLdG<^4es$DHrXCK(SAY8L9JEr z{>dC9YoD|MS}vT7*gfbIh&~$OooKX3bJJ5q($ah=j5JRTit2P=Yk~<|rNvupe`oQ7 z0BJDUk&OGTjF)mBl!-rf1>)^!$C3G5L@a0+Z&v{I5Z-Dx*&#X^6l>b64@Hy5Q{y5xdLj1lF=% z7qq4e4>a$gvNqi!4Pf!%uJ_lGXs{mPdx0SfPl!c^<-TWiN{9W06)NQqZe-s3y8|4x z1+&*&<9^Vps{|n00a5M_nO>Bxb|*!()sxt=n(wCYrnT_T5HraF1EsfhTD$1J=F)@% zH5Za$L>%l2Xzh72bd^Z z%}&v z$dRxB=q6Gq>U1r%uvGdMwisLW?SH=e_~z~R-=h-BkG%)me|*}#ef^&*{A)q4mUG(l zVF84F+XZkDky65iE^V*$s7sj4jpBGwaNbOghOGoR zTY1fz+5fyafgkA2Md%TzrQT-PHjqByTw_gp1a_Ngw+;Qr&uB0Ay}7u}@XMeESPLp* zY8rCcuT<}yCuB7~SyqKj8lW^+#13>d++K8-j7UITz>xLv44Vq5Ilh@AXIxn2rh+z9 z7ip5*VeGRMN17&*4+a_>(@Bwj1iGf^jqYLg9V8x#PQ+@0V(vB<@FRO5BSwHCkaUW2 zd6bGr^6O}~`G%Vi3CYM-rlwk3#z-jIK#v1DNv*{2OP}N0`TSxzzRs>k+#5whepMb|Kn{FJ(%AC<0wbY?K;>Ldtx!;!^kpNGjVSd;d(_L^6e^nVr%1My51D z{Ws;{9;IKhN)$&hO>m^g6YqfB)8%UOvgb-md!)hl7-`r1ih*_sG@H8K!ubs5)Em4Y zikDJnxLl&WrMLL9Vq;!>#t*a{&OOK?JJH4bV=hX=rr-P9hj%E8_3pO!`U6rUY}K9t z2NAnBG_qBu-ft5~bI%;L$@GREhSAj+@dVk|;FPFqgf7*KS^&6zh94B4;e4+QKrZ79 zP7!BtI;8tOB^UuL2?g2mRB54ipdA6Nz1(rrtMzoOxZ!l9hq3dJ7(dE!fLftX1S}Q| zHl{0ND_jn;hIyrD@M<)}1-(F?pCXpSN!FvHi=9?!s_uwjIuLx4I|44&46sh6o%2ehEVyUl48Dk#)(fzAc2 zZfr_G|GK(Yhv;=L$w{mA(sn3?LgSk#e2$PY|Lw8*sm=jp$~2$+P*r%el8s!qrcx3? z@#QeRR;+)n5rWgbqhtq&UIcC+=qG@c=`4(xhcY;Sq?_`FuG^@!eflWdktoFTkAKw4aOSQ&QaJg;u z+J6bYub4WhtxcIJt-D}0tqPu@LBKtK7PuknUg@4Lh;j>tMWBD2?CH9RG!;lsH0my) zkyM1{lKB;Td1Q-8J}1sDzPH-85K{NRL#Kk}`8MIwy>&zqt)|t|@3gK5sCYlgXRx5` zSr*>?6MI@d_Y8!-Kt%}q4vu?1dO8JDlX_sBvAQB8ZW@zaJ{{RJ0?-k z$B;ko!)In&1C=E=L{O1oK<8Jv#Yn`csAF`=a^OYL(BtC~<=$*RNx^KR^k$5O)CNqg zvM?>bm3~8Lnr#AC9)GSJBilkI(6=}xit3mqxLT$L zp9^a^=QU?4@uVbGtA<3TMA8dfrppssWdXVW*8~GXEb0sf#QFahd06^*v$P=Hp%%(& zm=*+j7bJAq%+1|%z)_S2J#RaQ0(SX4f*r$3mDNAhdB>z1&CJuT^FHsDXbGODaTdqtasNJE&38tr# zuUe6V>+OZ4IeHE@J%P;T;KGg?yjozYkCX5lW7`){ZhkB1hGD<4SKXOZu0e4A|E z-IpC)o~mye>MXt(4RMW{_zk0RU{PXrK(%UKFrp1NHYDPy0Fq({fA;AgLeVlee9tC4 zpAe>S4>0F;wnWHx7so1qnnUr3!i`rjg^Ke4&1eK{EPCe<-B*s5^=7`JqgW;UQ+hCD z7BptG#7D@q1%s3yX>bfz?jHt*$Y$F01QS2dhuYU8`|)s8LIKn(L5haL)NPS%K=km< z3~tNKYy~qeuJ0W&%$U=F<}Zwg$Ir7p1U(+Oa{>u6uyf6xKgW+&k###=B4K~co2Y;o z{`4(g(0!v;%A~W2Sb+3VTyPSu$$9GWSWxwVXsDLjNp`UpjWrBt?P0a?4vG=B1y4yS zgu@eU7xIks^izvsI4~%^^UTz#&{pFpA@R%`0EPF+)IakcaqZOz71L}>V}U$b`Z7N! z)~#w~o6qVoF0x0NK`t!{Ldw$a;=H@5QpS&l$mGF@6h^+`3?kn`9xF~2Pta5tYlfff zKm}8G5)>6oHCC6w`)Kz6ITQv+R-5U~9!AQ(%+ZwpZOS_bX~LagS$Eo@m3P3*!Rb4= zIW6Nhr$m?=#7{G-u(k^o(VdM^dPG_4dfyxTaWFVNelk2eJ;VP7$NiJrN5kW@87dB{ z=gWU+*@n;~oPucPB5zo=05pmd1^v|J%acDkS#oLS>Ehw2%#cF$!}87 zGR8nTP}8a#y4%1h^pM69O}A8_tMeY3oG(OjM?h!%CxYw0^;$B5D6*Qtd#<1M&FB)| zGLmEj{iL;l=j}K2iE0PuBUu;KK<*8fz2~C)!euol9?$Idr8v^pI&)F1jdOZ+?y$vy zSd92sXSSyP4b0xfh@kU5EU<_wKfpn|2RvZZ!SfO7g2PaPB&fwyaR{I?JP8|UHgPET z`?#nW+-b5iA76J^WP)Y?-UlJf1>bQe$D9_Y#;UouOGnx(i)VMlTAOZp4+B=HIb`wUJ8b=lM&fXu{4y zvC8p}+dF83_Ig1YY^MVs?Im3p3$0E2y3pY4j@I6#F#TD~h(hMy^RH_Q`Ghb-Z)3Ep zs()Y@LlyD~Q-7dBS}MHUarG&CzDYHaWFAKa_HiA>^-^6M(-bC*aLuI+AZZ|5na45( zQSh*0TaZx0)4-zP|KZ9Tn#IvJ&e*eex9ACh3Jg^f zF7t?zBX@g54eLBIvs>~_K)svr*Gm(eS>R$ErCCjR1Dy_~NG0}|T)x3>4n<}90s@^d zn|?)l0oI!Z+g_(Q8sB^sD8H1~KK!PN>vU=_eZe0{1B*4kgKlPO8J~LQ24wGtB$Sv% zb0jMNzA6YhYATf_MDMfTvz^HoW9Bva?y>MVo;cE6CaR)BqcvY(C3%{@>1DkxBl}nA zM+DI-v^71$Z6RfW8Qxpr7Az@?!X!1JY(n)_QBMofsTZuT&VY@D(_@YTjQ z(8xomwKoiz>;hRj+7$|@%U1^jkEYE?5hcdO4jdSf+#K{Vq@nB;}T5BYNt$k>8eOI0}_$#E8i~!0TcACRTKmg z#xjuW((^}AN)s;PpX6B@&D;s(HSilCy^KU27>v;I2V~1vPQrfPzPlG`_wu=g9m70f z5J1iwpWQtseSWq5Kn(Yyi=M}cZ)p&YOxegk>+=~^Xqk`i9GY?(z zE_JMAf@vuegH#mAeNAZiU07B&Wk8V)96U+3-F#jKUWSN5T3E1sz)MAn*00fqr~N-O zRiY_42`K`k!Fn4@PN2D}tN!bNoEo5n2r4}qP?^b1d^m5>|Wq)uyb)sU@X^_n{_qW-TsAkpa z*SOmk%t?o@`I0q>v~{t19tJi_4kC_b!E|xf4@7hgGsWJ_<_*#W&WTNio}iH9qI+gB zB2Ma51m5Rs+yx8{ z)lC7DrpY9Qjr$2=T$x$Ygb69P5HXjiu!fAD^_n+C+*Iov`a{VCYPo8w@n9)yNj}uN z8ILl_t1|!(avcRVd5%h4#`>0G!f!+7ww;r=`vNxKbJ2b1Y%(73dGiACF{CMS>Cv_c z-7Q&QI_!Jh1AIRhhztUbyp3On;u`Cyt+|JP71O&kEf01v+Mpvu4`rrKQ(OQKe5E8-Gd@mjpPvb;Rra@udT?(}zolOReR(4(k=>@GzVp6OY);CqUuFqG1 zv@*br3FFhy5-J66RF&Y5&ouimU%3Kk#IiURK5I72n$zvyNwDU2v3Q)whAs*eSUR+s z{E(=PvQ`6F@ zQi;K^6&0<|&YO9@v}py{P|Ww&6LWyYk>179S1v)^#;7=39SNQdu#?ls~Xo-XajIS4OF zv~GiGPXpdtnLVQLP}{uSlLawmlMQ}Zp)t7NWT0l={1-^E95z!drQ$;#ra4SVoTAYi%h>?xwnhvrs1RiX>qC7Q z<*V}vaASg~mny@(g6M8ZjAMUMx>I0K15ZgAz2qsV$Z^J!nJ9HIz;BbFXiEc=Ue8Yp zbC7RB-n0QJL-o`O5F>W*3kiKARH{*7(TC)(_Il5yKQz5R+eV|Ti_em?^=ELRL}JJ{@g1CNL~>SQ(&UscdB1oM+1v z*15=^;Z-0yc3gCx`IJ-ai~3L%nO_iVr(BDt($kLUwh~BMo6tHJ>}Qb>v*`G6OsXo#Hw@=4N@@UOvk7aH=R(rWI-deMH(Ny ze%O26`?r7Vu_Kdqkk{dB8c=GOrkC3zx%*Fg^`T}UX>LmtD7HEdnm?Ymq#~F+Qc@8? zf9O$@2G?DV2Hga>0Z~)~jbYz0TF|!@ZQ_m(a*8)UriSTbh>p4qjD_Bf0g4Kd4xQSf zdPAd}YlMM#C`UTfx5o_;_7_fml}y2TFwS=3-q5Lphc;$kM1eD)Aj4u-#OhT#@}8)f zA$Bu(CTN_#6G(}mW`t~QQ3Pb8dSTmZm{)qqlH&nZoxxHGrh5q|B6v`?^g?iK0Chnk zsM7grH(=eWn6vlY_8E(SK8q0Gw5l*^$>>;`AV@1&<9s#W4zHxMrXwwfkvgvMCb!t- zfp1m8an}_>$Z@vADpmo36~W?2;5&U!mXJ`fw=y74t`KG|fYZ^PNAI!hO^tJULEqjq z_lIy~g-t+KK?j8iO2AkzN2?o`Wz>HmK75GsB8b$eiDm<+MUrq<#3v>>!o`_3T$fQA zNN-LN`4r#NcwF}wUC!A|1v+27d-vB@uUSo!r?r!qiVk-b^H;Ue6`>^jm1|vQ?QXbH zf`l_JStb^VKq?7B@OTUMe#ChEKir}J@M84H*kln80u5cVpVf*By$%0A-Bm3OG*XkFbOYG12_$1e9v_pL;?kRavqB@nXo}Xdjhb_gz}yY zAAs2sdXk03d-q1NrmO{JkiX&u$kzm26E@daWh6&v%OW|-%D7w$dJ;H)kjZ zDHnn@SQVx89#em5fb}ZED7uhgI9ejR3|0r9dI}?EV}o!A$+DjK5~3SvcUZ)5E1IH) zX}I*lR4d|g{vW@vU;(p|3caz0>pC%B-`Yb~)W=yf(Rz_CV(otW`L9%o1UzBiE|O9h zfKvuffsIX&?S9+Y7Rp+P8Tyh0(;G!i@N>8=Q|Q{saNwrvaA}lQYH3;x*G+$Suj{6t zT{j>y*gj^sVNnJW9X~7;!E%%fdx}_QaQ3mVmfibE1>2`dbG5ZtA_`V0l{$g{K<5;1 zqz3hk6DTvM0Ujn73Di-}-3U<>xI$8%m-%0Pl}N6v*yVI5qy$Lh8iL%zA-u3c5IvAVe@qi zz?IlV{N!%uXd75K17Y#E$##BuqUe=KDIfpz=IHfLZ^U}||G)gjzTx4&OD^z$-|72T z2pI5dU?}Sw5-N*2XeRAYZq| z!s=5`*W3Aml%8C4{pj&O=A-bj75(H_Ov{a$#9EFAl<#?+J@8 z#@Nhx>>YA;oz(}Uow?&V6L!%Q*>-2UCx-Nq#BKr;Cjj%9CcupuRNzS7V9!LeCQ&+A zl5n)TG8AzyilYcAOC}Plai3w0m2;vA)t4kC^9chIwV3(^AovEU)s`_NT$<^TN*`)h z`Y(`7i!l)#f~cb7+{xEH#&bMBqASGQ5QgFTM&p7ZJUn3MsR zAqnpHg;_=&5K9|L)PXW{$_J4I?dc#|#n=VDjOkFX(@`-ZO15D~fQ=V8XHFP|L)_!> zD8^`|L`O`jH(9mG*Aq;`v&t>xZ_w$|u51z7IqEZ%Y`e}Z%M?RT#D;rE)LXk^drv&J z*XAFdDN~$;NuH4$DI}fIG;N@m0ttzc`t#4qGwD3m*q;HR?1{| z`_s>Mb>bE_s%94DFz7UD*k^56X7dHhLpho=7Z%p(eHYAH70Amp+f1iWXrp9Oan81} z;dCe02#^+(^t<7NQ7&@hTqbV~QKgcnGsOf|2(d+vp$!3ho(ZB@zcPhNaT?5*R0VR*d^hgGL5Y1rSv`9Nb?e#Ky=}{M~8>B8a~;;6jR) zNj#ZbvoXY$`33<(W8}1cT;INb^Y;A@NI}5Yh(b0_+a55*>p(CRX|e=XFgU1z6vmDb zkPWoO!+K~;j;RxVK#G8dbU^Pk3f3HuXHs6PRBsaq=K(kMdEp)OG4f?r1(-Y^ZDvqs zXY>7NyX;wG$t>pdt0)#uR|(TxwYUOArR>=WZ#_`anZAsHDlX zO1IGDm_2>q#TMg8ACP&=_Br|%%`W!e?M4^QG;MkY41zO)3XhBEZBB>rcW8las`K8+ zX1~JGh?S?%jJbz;#1)XHpMOJQb-2Q~T~tj&3owY@eNZOEIQq*HZq&$}VA544O1ASM+aqy|1k%f^ABe(}*;>;6q3BJ4Wu4T{ zP|m3xm$Z!4e`4wqjfubkG$2^W0q$kaR%?XDzGSm^`@iO$)5Y5)uMF)MUvSFA5Pe6z zoIvNY+d>PdOZ1KA1urZzm|$3dmLT-=G5RuT{=8XM1C(wug~fRXBd5Lu9Fg>&>-4zb zh;6&hfe|H744rUD?NE15Xca!9POhDSdPnAqi7z87eS?_9*&K#H#tNh4#Y136KNK*p zk{ucOaTv&Yc|I)d-6f_rKy7V{p<`XF)pRg3kFjss=-oSiIZPklj&_JL`^0y;dAm)l z@C}p{gUpUP;fCBPc%hT47En!LBIs*0%Y|zl0vTt8o6BRBx<=?yM>FZR@$&ZesM&>1 z3f*qp7R&_@XMLTU(yhgaqshRE@SkuU` zurWd)CZ63pLQO&ve?Ml+b7E-E)_bOqGG;A^|AX;%RG zS!jSefFaIQ5p{){;jSmA1#y)3f_H^0MHqewBeEiejMSL_sPz$M<`w%w(>dRUyXIm zmM;eY8|!LUGG}@7Yz(7tEz|QwGE5KCyV)`*2F@ zZ}7Va&Q-UEa)4en5nE51_JHQ{veGNL*`I^Q26EA!z|m^eLm?hmFjVzgO9 zSVrk9sMQFEaFE|6MHvE&;Cj#n%eegi-( z(MlMbC}K|NE(a1Jwn=3b?58Fbwu`H4##BRPonM(R6lM!ZvZ=0k6US>&|i$R~^NfSdo~XN(SaIDl}O1BaBrzr`^eD{^Syt0Ny=?YM0B2 z_?-mS6!DFqN2h*Em{@$Bmd-?MSE2ks)5U8rn;stbxD_7v_}p#)DPATGWpNiPrn_gL z-b3eX>-T*R#*v2u4 z6(*oApp=8xgg48oc#J>%^wZ}%Gz|Rke)_lD_jhuAv*%D91fOsXTIO>y%c3~@kw zT#TS6qmIo2YAqPX^Non~RBp@6AK?6NC@kDA>Z1F7p?Jo9SKU`VLnb(irWUyoG78=1 zBqOPr1@T?-r8VzKptN>fnogCgk%)dn9nu}@QKZ#`XgBXe zrbXnozBonCyS-qLiGYRA1*M@V3!q-e<^Y*=NM`fj-mGw#tcE6Qjjx#ZhCe;ZR_VxS zVAjpD{rKEoiyYfNoA#<^hYXce1cuY_!s3$TB#*v@PWH75(u=W3p2CHmsDv0f<%J{1 z%#;nBP+~Yv;7Pzci-fe8h+f`U4TzIvQ~jHwy3JL z&9Bl~1mn10Ae~a^HV2~8)OyA48F51nc4@>z@0zGCNhQJboum=yy0S*&71zSgQI4i{ za<%OPiFiG{EXmtdU{Mof!jFd{fm;h@!)@?{(_+CqM+}(ORM-!C`c{cvU5}2V{NeuHP3=jOl3=I8X zCN#g87Z2>D3kjBnvqQ!e_;%dB@MKAs}NXQ zaNRFcH}a#}0sj* z4blxh{rKVIom9f&R+fATi+4x$Q=S!uNL*j8Hv)q5CHF8Scr_ zN^3K~U56&f8Wc4*oF5UyYO?@$R_35|pv;x$ZJ%om(+1)6(^E_20#-aZM9Rwnx=_ka z=@xCtUbtNw?h=?O#)B@yY!re9P!F;_iO|{M{yqPCtA>0+^C|A&El%8!7Ds~fJ3+87 ztx*te3^RuL5HKl+e4$NH+ZPJ?>mIt7B2Se~PMO$UwFRO}`AtrYaC}yDybIOsGLdqI zT2K{r@yL2jJ5I&6pBex1up~dw#Iy)7Xqb!fyg1Jr?Wfg|E{79wfl3zF%l({@j;;78 z4=qxhN)Twad|o3QL&{#6mk+ugFfF}FMeIGI1>^gWC0=c}+>J;`i|LYawspFgWs;L~ z2!X%d<#lc@FWz7u1*Ha-l9>+kM9Ne_Tr_!8e`TKx&C2lKB&tqU5+F^0V>OLPg;81o zj;8SV1UPNr@~9hA!Ba2^mci2PoNmEqJ|LAZbv&E{)%O3&x4#7I2n{=Q;9K(lYO_!7>($bd$n7hY{x4;JmXmDMDr|I8eBP!3M$`JUo5^1w55j#xK%lm?(4n zA8oV34wHyGW!3=cW5_o=E1?;_3#EjOBKXgOce7=tE|7K{>I+-VB}7qhUj&-iGYxMZ zLO5B?B4l-=7= z4~tV&#`8%*!F$qL8@4$`(Svt;=UPwGv>P!aeP~31!7uW@#g7ycQ=QdYLL+Y*g0nF= zgA*os{ht#HCP+uRTcQH?JC(>vR^QEfoFLDAM~4lH9b-Lg?aid(ov!avGa)Kc1v zlQP3&%v@LgpXsIM{%xJsMV>IM}^-4#!@ znjAXc0(YbSK~3+gfes1^&*o?TejIi)nUI9X^?YrdhW|S9EZ@8V+}Kzu&YNs1-8MM4 zs(>ABCZk#)Db9ee(6oJl0O>ueYYa)+Bln;I%R9j9Z98okkod}oIG%w8J#U8NR3P1i zSU^pUi_HzmMb4^!VW}{~O4yU}Zg^6#H6s5Y!g`&|T41j&R4HbDSrC094$Ia7n-}QI zEVNaDD|tjAkE2^~Ge5in>BA(S%b~>uR6a{pl!akBHMpGA@{2s2C_adCLc(E_F3Wzj zU0_2ONIf7qLB{2c&;&XS>vX;(m|o7Jw@}@0z64%cvxfc?WEyWT_m?P$^Yr!~s=c!K z@cswe!YhpABbV%};U0(RSdc>gT?JQH zcoT-G2C`{TcHUQxjsol-NeLaH-lgTJmnldGRH|(Xc0r#$AadpZ0bMQ?T?oUo(R@)A z#XvDtKPkq=mDx;o2wa*i=e_Dka7l|^L9r=+)G&P%NFGrXMG#k;mk8Bk6eFt==&#(B z{tGj$fgEDU%OzDtU?>{=5X98-{`P4b4`5e0+ zWp@ybH=4Xmw3-(>@|w5{S5kdX?al<#Ep^HS-YB&YM|wxW-Rji2p%W~aq(7W8;cGM5lN}NEVBmq^5lH2kQ4igFpXSoZj1~8mX(=#pa}#6wO;k%@PGt*8{wchxMB5VyYh_ z@Vr+92`?b4#ngteS0uQyI68u?=N^pIt3Czz&>lfcy5 z>GO-3zB&%H7T_IXrj)=DZqIWCvu#3~>*38s8cD19Y+7!$!=2~;mA;kuZV9BD+Z2+7 z@4!MX=NFf|OL$-}kq6i7JX_N8L9d|Rnwrwmox^FIpw=of=(Z`_E^U=6vPJt8vGGz@ zd4&Q-;1`q~Xp4a7&!6^}uikw>`-}|TbRMz^YVd%`lSVJ3tZ!aG4yEQpgDpPY6s?MG z4qPP)tAVQ%$xPqb^%ZJwB5jH8p&J^v6EStNacGooq1B8~KyQN?p@64q2!g;a>k-Zf zuQZFnKH-o6`-JI}mU^&LKNeO($kJpVEO}dWnt`m&u_Kqzt75nWoF4*=4*@2J00?RP zFEp8IKRoI@v>uMORNx0l0U8|l{@~_PuZ_~VN(rVZ<__G(TU|;XYr$|W`VFX* zgQj2&InCc`wG(_>{&C$v4)@6-V50+)#j z6Jk>)DnNzWZ^;v^(^o$ud%*JuJ*bc{%pFQ80ttaR48J(-c)(^4#p8=NYe2M8X^V*i zr=tR=s5Wd-3>uAQnTdu%i_#qGQ(-t4E)Ux|-ht+Bgf>+K-?G}e8lvBND(D|k9XttD z+NW1rs1)+O%-Cu=h)h9-jv6!x7a!_Y-q~6WxTv7L9F( z63C6-@~~sVBx@CugpFhmPn9YBDf!rO88e0%JY>`BfYL-sXTinvib26sgkIh#2$U!J zyOiNlw8A}gP>V5ITZ?o<&_EIDMqTh?IlexiaJ7N%&{>^tP{s}ZB&RH%gJ*m$0rgl( z7j8IIsS%XWW<@DBnM@sp4>b~&p-&NRTsh1d<2vwbeECF+XCZLac}EWLIoRl7z9&N% zShmo$MG?AgjItH>Z~X{d=&3~#K@?T|*a|tS!P#9%SENw`t}it00Ckq;u(7v@t$SP@ zXcs7DR-ra9)o({PW&i||Q#sU`jEl~(hqZsC5kV*M<*mr)m{MHfKbQD5i^b7vKl1k2Ox9S&%8 zyp+$DbKf|r$=1zHD6DLL>{p2f@J(xEF;$)L2W5g23qe!sIgscSpbB+M^6MY2D7e^i zh3Yu-GCwx&nY~A=tjg}6PwKO^J;xhZBp{mkc9BrVB}hGxnqo}@m{%uan0k8UIMS2w zl|*j0+0Wj+`t;-a!{2W|PCoqoJv=wzcQliJ4Yr9f-w^h6Ezamk36@{QC#5sgD#0{d z0Z*v`0Q1=Itu2W!CdOj|)*a;i^w* zj)_U2o6XKqk#pNU!14vo+3Ab#j%orH;+0Qmfr=ea83BupJW##>EImaQrY>`x*F}&x z(rv-NAh=(SuC90$Tj6P)h-pWfepM0BVcFarm{d3H!-^Dq=AE)+cyKy#4v6NFST@9k=( zpqvyENL(%O#cfTnvv{*R+U_OdgFlaw+1?*l0Q4|2IeIYUz>p}Gj)Ym341YK@1nLV_ z6Pr{B9Go~(uFI{Zy+mY0+Cl^}@dX3Q#Fsp-mPhDta&hEwDUVd=b%_U4K%UyZyS@E+ z`Qgp2NS+H=9blm*i;V1EG()wx;R2$0@@1lsD2o;Zo`_0L(sz$nr6Zp{P6#I*VVNL2 zOxUW9jOP~(v%0-R^#Hw*rMj|$MUf3ruuO8D29#)F{n`&#Ek9*YI6_XtGm1DXAg#%G zv|@@BS*yUIhiAl*zIcWLdMaTJzciaw?ychPSuX)lm6}fL5?JE1(LV?{RsLW;tEc!| zQ0?&G09Mi!qm3#jO;>3Hs5#8S^n2O~Pz4BOSpX@TG^0Hsd6N$ z2@|UCB?VAzdC;S(=`ZPRLhc%|QR*;3+GyW@Ooh~N@Cw`>S>{``cAUTovHkk$T*r#z z_{#Vo^vb*5R}bw1b&F8-od`UH0|(Y)6^%s^u73yf^m{%0!_iUP?kl^R_g2G+hmZQb zKP#X8?Dz?FHC+0?ap}=-duAW__fI|Zw0P!kd|f%BRZxs-<7iGF#|>KiAr?vK2oXC` zF_;MyPilCY(A4WmcFL~_rqwq$sMV-Di(*)x-+y}h!~5Gez1Kg!`e@WA#Qeuq1b3wY zC|J14E_R*WoJ1UpauPX!ve+6e81{viu+Ln$7~g_nLg+g+Uk)pz*o4qx1m2YFPbjln zlA#8ux&18~*3%LA0QHiDvnVXk+#x0!(6GQvScPs(H_Z8f1#*D`Q$+OQ=+U?H_n+=w zy?=d+8V9Uj;)KO5QdMjyjEU+4l-7ks%0z}dlF`Xf9El8RNi4~-Z!rXZAgE1K=f5%?u`>dM+0nOQmWpED$O01W&M93s02O+o>$tT)P0SFLRTp zXPCv2W?OL611hI_PCQ#8mK>od%sdmRF6~9?oL&sj7jOZEWZd}?`fR_+uv6%>bOsd= zoHG0+`R|aHs&E)Q%{gYy#YYUcFoFUgUvbPreDHrLoUZkLHB>Lhhc*Lb_2lMB&CZ@h z{tgg?1_a%nLDqLbMx?k?*hJZs-l-A-p#;mz1z`~;MYLJ#xoTXWEyV+KuBT`QccT`n zM-0$MNoBN3awZZPJ9&__GEYdbYJB{m)Rx zD58Wl#3&t*;7L>(P}_Hw_>E3XhKA%D6q>XGQF6(3X9Vu3qWJN#x{?M7Q?>yA2z1@sWguj}(~ zq<&QZoQy7U=ZJGl_+BgM1`_f)Ig_c-3$><*PST5FCm=p89ic?TDFr_93M|vFaeWCx zI-OsFbh^I;>2!ec$(n&w7CH3T*?)IiUyl!?@9jid7dd(0j-UTHL;$q zB^k*9PEEsoK}yO&d6Lb@1t*UoIx`W7d5EhWvQ~mA3+cyxxk3*tKc?c>?V#Wq1Ic|BVM&MmYvpc1=8i0|UcB?~p zU&4LI2=h=g+F6Z(mnM-0c|c%(elv_s7b4TSXV9 z%%viCjfkgJc=l8atMe=ILQHr2oUy*zzzok@Ovl>3{#&@AWeGcq3CD3%;m+v!^->pe z8hIe7@n*4oc7_JU%h>+q#4O;YBHh?e&Fi65Yv_GaW4R@KVyjG^MdcF9aGdomsJGLH zm0)>3-JI@*4E1m47htAX(g8-7ge6|}$9IAN(l@B~fuIZ~mv z-#xEzoLex?>rFK8A!5M1jg!!-=vb{Fg~iKCG<%_5RxY%Pb!JOAJ>IQORkp zV8YcV3afL#^4F(^yuJ^78|(WMOv6n@ga49ZH|QKpUsP@L2_d6!$LmQP8!wI{!3!4T zfj0;PANRUX>k2-GmI_T!`e93jmCD$Uk8DIIlyRPtZtBWl5Oc7Na20-d+{tDRv6#WE zy1x{T{CyXs+zc;)1e-&RAre8nyq^SPh`Ojuf}OB~ zs}X;oApBDEqYk*{DKDYRk(qw=GE69vA)*FJe>3SU$*p|~t`tD!T)ATZbuB2lSAl9d zY`E&oQ=HZ^=uH?)<0WFPVPbVLr+DoqDD7m5vqcI7*T(n=ZgSH{M}o9k zmuR=+Cm+!Ek{UP6K~f$WNlNFGB=M*h9gWPs(e{0ccS6?Uj=^u69%@PYSj&fUZs!Mi zD$M`jh+<(VTXb*tM1S^Y+3UT^llir%!Ba{^7~a)ndqX{vYlGIg#a^ap=8Vjz^vj$K z*R)clsGPvXXsVj&srRK9-#5?~&UK%%0)cGheBC+l?D6sG={J}F^gDD<8}xtE%n=KV`EB-pkG!8Okt$0ZS>0(oXa zP&(9{6@H)r+(5-4+(IXTJj7i$e|iYP1k<-PuGpVF@#?caIAsq|pMJ(GYF4bhL0haaTV)|~JYd?O+%iBTP!l3f;}o1e50JgE z+pHG*_ec)9(FS(q0!{{`c&z7Bi~h}r`WT7zj9r>8Q4%d3!Ng|v+t2Sl)K76?%eW9O(^o2^2})FBG6S)Cf^W>w3C*&YFK_hAGeZ!pO-3c}rv^isE-IHl-n3BE>Ln9mKr6v@w~AWi~aNu z^n(UUnIiI=WmmiGe(}|vCBH&`?H(Ddkvph62gpN(wTayZLjO8Uf@v+>@|(z?V0r0m zQd*u8ti6ZtB)5i~WU47aZ{BXa{&@Qd&16g$K%q5k5=%O=Ug#EDL!hdEgLIRi)E*kI55bYD49@k4=3r1RC}ogXuOxW27b% z*IB`{`37ycE&~^!7edYNv57n`d7D<&}y)^s+_ zf0d!!15zu~pitA)e2?Yu15rD(}JPJm>u&8y;8CLl7j3upA!#fda75b7n*BhDcWuK;u>Mn z=#ZBjVJ^>f4$+NblauITkvl#(thmB}GAw9??%T}=0gc>wVNgB8{a#|QWy$0EVTVTP z774SLn?f^$VQU1NYVA?zW!1d{>S}Y191*jLP*)&Fu~x3D9DOQXud*CiSM{>Bc%vS;8kuJDOOK4|R_s zq6Se!qwB?vRxf0NYHb30U=iC|R82idAL8mc3o1Ug+&!zID6>%#0cFdE#gn$|29|{s zSPjvwp<1#JXLsyd6I9WwO8MuyNMBgpKz(RDy#ds74U1X2aeNZ?0usImc?FyntHzz0 zP~A#9&m6Co57oG+4YxNyaXy;g;haGWUnI)*cEy>IswTJ;RjP)_`1DN`!leW^(+w>h zH0o>Zp^VL^3lI1s5z?#Fj{qMfSP{w7U<@OkP@n6Z*J+0&<|E?n{M zi1~-xiCCfm`A}asT0@{T;?D|Px`lmf7jDi1q}fZ{=Dv>b;5`A>MciOXZjeTpj`Tuw z0xnjoHH(ziK0p#g&M$a7I+!xp&T1T`JkHQ$){h>eYnZuNu z%UmuF2oio0Z=XHt4#NjbrYKMW0{Zja$2V`k{~i`ITVapU>RjRk({iD+!y3J54vK0W zP&}7qI6(F8_HS;#f6Ex;q!Us`uNu{AGHfpTE{&cAAjdxZ8XCvs}swUgwYW+!(_5j)Fxt=Fn?t^GO$$-CT18wtR4=O z@pkJ(R3Sg=?QH%y2PjYeUfr?WnjU#rMEhZvQ1Fm~kfqV)t ztwR11){E4oom(P~+bR%?q8sX)44FF9_5+j$TL61S?2M|}?sx9d_oIx>o@CI8%?Xwt z<2P`x8rP9K2$cb7z(u{TXiHw4(6dOh72mE9yz>R4Aw{{HC-a+m)jGFT$5FbQLT8{P z*I6Na4uf2dX_87m@csx)!pl;hxa4kP;tlFV@@|A!v*0FBpRMn63$W%BxSfKdq~Z)}br7 zL0xSmTiQ?ILpiPBScmF4!kTcjLtA}pPVw&rc&ZK3%&jy?WWgyR<%p3yxf}i4r=NLL z&=Va&jmw^buQPq$Jbr|~Lu&*b?48LHl=0jH%j`Pog2s|~lyPK_7RNG{62&DF zax)wK=?a6qYA7)8?@3z&oHGqrI9N|!x(7Da$_-s3_c{mDgIVo{ITW_YJT(0Ju zGhq*N=gvK4@XOWt^=r{Yy69YiH-Xxq8`LhQBZKv2TmaRknr)Wi7^9H}t2=1{hbss+ ze`Xa%2!Sk?H?TIqaN!)Y`_YGPB65gOO`{I^RzE{M*=x4?#|l_|Jojs7=(4`fsv4f1 z*?agwam7z}_$Z&j@vvoB?BI7$SyOCsx2*>5D#-A}Q!nDy<-oI>}#cpw)n0D8Mn&`mgl2Wo+p&qkdTFfPF5&bMiA z7nr(NV#FD2)J~a+Ge=Fbl74cPxRfbS(Sjx%&ydcnozaSd0Cir9gQj8Z>pNZAEjd72 zdAA5UKlY&-5w=nXBe>-*?*6Tx}KfdyG@ISM2N z9C%5A)t8uk++X4iy`-)Mrp%577l!JzL?MqdFV)O_tOyN#nr*tqd77(`OPp;!z5DrR zQ~=cVdzh|Vu6IkOnN`9S!X1U=!AW7x2o??uIJBX{%}l!sX9Dbl*s$c-aOgBGeW1qX zzDG_?p$sxYu|f3{Ir;V{v4Av(=|n(Q1&Wc`wA6>{CSv|J~|W_?TCB zT}qoF<>@)jvPO)I;k%_^bm)|*W>50Tx+m;)fbFAEw;`u^k6H2%3GHlFMe20ZGc@gC zOR>X^PNmwH_`vDmqWgsns6NAG{$W|eWPTSl%6OEZdz^C9kKum2{|j|&{ExnN*jr6F zQeu$0Af16GZo{onCxo@cGOTu+F6rBpnV?V7$!O2yN{pt`T})2691yf9SaVMz?K+%oDP_ml zQBg_UAiu+Fl<9pbLyPHhwcMuL@zLmeyxw{^`sZccQDDq6a$%D0=<*rQKE zzBL_--U>mEq;N8*@T)*gzwz5l>w#5ZYy_?%p-fRX2g0U64f=E8FJ;d@2_ZSmMmg%C*8mlcLHJ@6K#_Y za}ln@2T-GZ$`~TFc&R}YE2Yfdt9*REVvZuB_l5d$U zY44vg%DzRx4$$Tvx(RGwSi-07m7s7ee;aeOBEZL9iim}y*FE>779a?^ddl;5S#79e`DdGZD z1!gkETS3_{?ZG@#ueE^fDHL0X^RAcd!|BWi*Jw~jGZEwhbxZI;dH(36SzIxLF*)4>xOMMDV?}d&shidHQhR1Cf zp2G<~&xM zF$nf{JvAwb@|dzR9x$^6JpQvsF_GJRkOR%vtLan7$lRc7u*uBA#J!hLs{!fT%a)t) zkVL{dX}2NkFwL3$cc+wpx)tk`uklgH|ADlFP^P)1x@Y0y zn>|TLw-=ez9@oIn2mtQc2hC$v%{Zmrkn^b5J}1tamGGjE^L0Tv82{Dk*W9R&Z+D zA|vnyNkcd+oWk4Dcye$k6|IEX&|$Z@#Pw^ywwHu_P+(l2UEcQGkqrMTRJRmvQ00OB zC26I_915oHwqM+%t=4iq!DgY28!;Dq21GI|Y>=Mo+X*K3c8P8B>KruaN5sU{KY-S_N~qP8g)aVk&P2Z z@=Yjjj0~B2$$GeDH>*4S&`;3_5?sUBgIPv^g1$~iquY%;1fl_Hy7Lu1kUCjfob@O} z0_hA+!`;)|K;2p8AY6wclrza3zWdz8Fgn-=x=GLtXwgcG zSI%ycMR_*6fA+(ubjA)n-GYAtIr-LIew;Ygmvkt2BR5Em?)Y_E#5c33di#m7ljF?9 zezM9FXF&89zb4%dhBO%V#i4@OiPezj?dmo1NXzjSQ#jh|W+6%YlNQpNo3I*Lr2oN) z!L^k0sPF$V+#&C`M$^fI&*Ms)6i1wy<=L~L+(*yEnM+GQIlTjagyFb86s1|QQzzPC zyE;rX7Aj&EH<;sgK}a|XsP0^L2BD)N$98YJFo4dj3awQt+Fn0|eQ7xS(IDm3u%|Fv zL5Dul-gGv{{)AYG5|s$IfkE)*l-5q0X_rAK!@3fugdWOg#L|@kuD}8BCY|H6h;oMJ zdVpPq00y-nnE|kvtcYP&qJu`u+lA@da5%qNgXIdsW{gcPAv_58lmwvbtJzBvMW`JO zsx1dy5k#6iv{atmQ&4V5EAw?!0*qoa|W6*jL zAU(}h?Pty=?=hg)uwnw^FMrV}T_ef&_fL!+r7{tN3;jl|o$SH7PUfSf@3h6$5uC&r zU3J>;YLRH^uJyk@Z{Gd*H)fN(0-c@0!@~SeQKqVD7vUjkF5RwNoN!ubBif~g?E~#; z#UwbqhhN`4$q+gaP1Y`7AExy8{0rW+<&{5)eQ(7@%uGYZZP6@_-( z)#Ks*s#Jy{O5(3HrjKV_wc+M_)uT9|EXO6rU*c>YRwvHOzqcbtMW;I3 zCW?0@Xia^9)H!G|g$L+Wv!1F0Qg_l-$kP3MQTR-|j&9i>y@U=$Py(ql&v-KZR>b4} zr=Q+^oLqnW@b1gUPZE3qLz(RXs8NRq*DSV6lM}w$ZgAK3o_$W=UV-|Y7RfE5uef=r zxI%HCpsv89kbh0!vf}@KbL4Wp>sz7Ao}(Ws%0R@bIp>!qxW1I9hMK66GW8l3r$ouJLzJL^dzgRDj!V_n;5ZfYt4qDRHKsp$rEtjAnZ>3>q?th)m$fe4*j#8%2 zW)O0&xlKO3{cL3-q{v`>dS)^a*nqZcTyNYZTv@{`S{JIbvi)VZRCO~Eec-@!I)Twy zs6%Q=+$!Go$>3+Zi^LsH;}Q8S-KL)|1i5@8jHL30S=|cvV+M**FhkW|Vd!ca;6Wl6 zAT1)91EzYt+<5)Aq`PZj>Yi|Om|xC9vN@0{LozfHXK(&ATix2!a8Ky^-TFdtY8V0M z>_0}~H4%xxT-F*>hYlsBv)KE;%zzdAesQY?k=TzSrAZyzfoR%o z+a2JX?t0rQ0~>ho+xz*b{$?l@w)B7v-S<1!akzucuY0^_g)hvGEUUI_sRp1=?lcX`&00=J-p~?*B*(l21+XbJuife9Jb4usWB62 z6m_V^O?D7IQ56%)`9mpWN=vhVw?Ou?tY}A}FKA6|H7nW?Y=d#+bk%FGpkn!z>NR$C z4YX#&H5$&zL`%a!hrASX%YOQp3FCwTJxi(RnS8RovcFjmoTg_ zVS!Rv2dgbSi>z_W*AC-7W|5)iJBraF*un@TZIgWwH1iVhBJX$5`bw5LoudROt2U3? z=GZj+(n#!4molUU!frAxP^}4E^N$sdHOn$&L#Ehx{5yt~*L_W64p%RyNbFwbNt6y+ zK5(2jvy0g|D#5hk*gywET`*RPJp((Btcq=}M_#K*6`KvTnzZ|8H4!hw{q*(I=Py?e zAAbJw*X<9RPj5eb{>#Is&!zVr5aw!ja{=x151ZBL%^IHM>!#`>9kJapBHN&N*|fDN zhYi<2adq}9KGmf8WESrA)HiDm&oA90kXb{(1jfhAE<;;hI8Nv z9N?kKr*|NjUw*W0A=LAQ%@+amwExfc^sfSL{1*al)R|rEwD9nm0l3cwBoBR;>2iAu zOG@ZE#OcQmUsezQQ@nnA$)8|;Tgb9z4~(X;$EcHbupLnl0^B`uOucb}`wj%LYObW$=&97!!>lBE zWcmWhF61iTT+xsz*uGg(48MR6qGWTbAA8;gLb}QebmJh!D!BUyurco?)2$Wp*Xe88 zN6|s!Ho{00By9zE3w6$!xVO}{&F-RNMPBp8MCObuj(UW3~*eLQN;-~rq-*fRP9%HKU=ca4YSMKSQP@1b$S zvF^HDk^^EnJaTazeiqE$3s&s>4wdOa{D|%-0K2;bP@f@O(2FckKyB2tY!9u@PvHy# zwqr?FgvWSA6B*M-mW*OSGQE99W%)a7fH;zq?h?WM| z%=&e+;W{9V$1FEi7~){ExjlTQOd6EnnfaNAn&^h5Cp|x-bCXK!Xu719BDz`4-fPqj zqcWD5$8Bb{?lP=^j3|2Klg&L*iCYDzyLmm+31C0@^k-XujfDW2yv=?LZ7KQ{+rSW3f+f??;xXqi2KCE5)QD$m>AXS;V`a&yd+1 zbx$nG{N7I=zyA6C!_&jx|8Tf}d~|$xbaFVJ93CIhvwCtUSsh$Ou9=*)I~|CBFi9jG z@h1%Dr0yHE0>$ZI!wasx>g&A7v2_PiirDql1OG)nQ8)JcCTQ6}9&8pBYWu^vPVo#t zrm&FVQ|XmhCXqSkws`{)5ZPIb;$pb-#RX_?p}$VC-B{<9v7)85X8`W;VdJAH zx@L5AchTZQcbrI)>*cFCIsMqLVd|t=(PZD~pxpstYsVt33rzL3yj?LMn17U1gvU=b zAWQT+Z%7DILFfLNIhB(aserP#;y zt928}(f~AwD$Q~aHCoVYf3hqszsq5zU}-^-6>E-J}L9AgkTB%hw>?` z#0j&wM~wL4LN>|>57I4AXpthH+QEs*@jajhtivQnJ{<6t?EjyEx<#|(CPMcPh?ear zW|fd0U)yjv6R*=C&Js2L>gmKKENxa2F|m$Co$8z;PY91XI;^Py@KeLkBP};+m#u9; zy>A+fwaO;Z%tg6vyTdv~Sg)qaBgWlLCt4b#!{rV#=yzn{b(U(d=mx0tnYgczhX5)P zByX;!+)3cI6eD~w*VxHZ3)5uSS#GRjH`=I$sXN#3arNRep7lj*OxzZUEl#nnOXm(L zCR#f1BCUT!z{{W4?ox{ATB?fQorpc9DdRbXX}ezc^l{0z2dTcPQ4zpD<@fet~24oIlMwwB| z^O>|{PPy6E2hm@R{-ijXK?fNN&|YEo(!xxES;*1a7%Mn2PF|+>W6*neGr9dp+*tWS z502`_Q}yAR2B`u?L!6UDZf-=9kY{^!3U8Y976Qc#vZI;e7i38Bq z9m-?l!aGVMlHM9>O6(9-c6ZdKnj>8`e#+eq5=I(j0ILgMHP7K^dP)0Sqc-k=pP6PO z5!aBuA$`pw4^3%ndG&0!f|c^jRc~9gR$yDF&nrOq4>Cn-!Ija^%=_?>!zj?$j3#tJ>^RmL9e?RNX14H<6EEc&_`J(1e@ zCFh}J8}mzgf6HD$_{$2<9x&Z9mf@Qz(44f_3!3!y!(4<(A9jQ>(&IIu?5G}B9Y|5M zob@sqN!g9vPKbtw#}dT`^ixT#^8+#wHGH%=N3Ev5|zzy;#8%aZTK|pJNsakxy>1^o z*rlMatD9=>GDIA8bC(%E1&>}Y_l=uPy^Fm?ePx}-&@R-;817)$W^^bVJEEnfGoc}w z-;Y9kh9YqZ#R)9(5(=;!CGW5o?c4wT5wZ+_Z-2mZ*V4VxM6Z<&Bckx*klEEq6D75b78d4!kSl|_}!Dv?jHV>Zj%jJt`**v(x@Hr$`A&usKQk-M#1orLf zjf(p&TVzJhCRUb1uU!hLi(|^eOqS^ci2ySWfVLyY zPxJWji~0oTNp-lo`&7j%Y%=p6c9avt0gd3?E&EeM?C*!i4P`1nK%*xt+5I)?>*rFQHUGoDF^<^p=XKo~|{^`@=o- zFw^y)jtqkai*@=t}`xfk6(1lCZDbA1N$8z@OBJyY81!;fJt zcZBe=P32P9sxrtob!Z|6zpW2+gaBiTW5uJ5NJiKyZ=c)g-)NNiYC2$VUVFiK`>lKG zK_CMNRPkx5bD3Swi|A^oHY*~LU%|B&+_%Q^vx1QOSkN8Im6J?Xsx_gI!(k!Jnz9e{ zJVkMkCoF?CX*kwII?op83q>TfM`aJJoA{#e!E&b>_Y*MAN3K2sZM5vQy0&M8N%sNU0@`^|hg4$mVoeLK>%dRz1adryRP?XL(YZp`Ipp z7p77(p|07JJ->DX;=0cupI3ALV8|&Z&jWH9lX&>b9=3!}-!NfiWH||Pt&UQVpo2cQyXQQRKB=;00vGYsL8h>-@=MEIT6WZ_2Z?@;jJZT0uIrY^mhz9(gUEtR zY=*)&3{0+?wRGH>Ls_Sr4T-7TvFz72kZ5V*!GS}7>^oyZo38Q{Hay1sKnvGc23m;b zNgE}_4*61&=9a02wboo-^ObEJZ5{&A-M+R53Q#ZGQa${Nj-a%0RDuRRq^G3mLK70Z z@0{Tzj#jxSXlg3$9x!3j;-5+$9580zYaS@>@9Z2ZzAdT~Ae6#%c-RDUC0*QJA`Re( zrgElWRLc)`y*!*N?Nsz6_1GU!H(Q_^(tyi2aZ=nH<*a&7ObQa9Ye)BAW1BsP0Mt-n#v`K*83P|zLqt~gHNpoF2Z8F>1t0jQW5uf{PS@tloDnOW*w zXRj`LDqGHKg;k`tvnlD7NJi$!HG8!Ne~5li!jQQ$XA}6HoL`iTQO?^nAU)X_A~4ml z_WW6fNZp?3^q{j)1;*0Dbcvz3H{GG{4-cAh{(MaS+>qGiwvsIkA3kmv2kS7DP>@~4 z=eW)(kuOwiRa9ZM#u%9=`q1{|sd(o-ax>6D-{m?~n45tiB|lcHU=5&d;JVaK3^r7*JfTbWK0u}l3(Xk zpq}nb;Aq3d-1uZOua(bMl>)CVWWU1;Mzw{A-*Xp-5Pi{dZ5^N?7SuhF+4FKFcOLBN z3#4nP&dx}yWZFj_xMYI)mr-O{oUd1f;pUielyz~PP2IrkRA#ItNEnMJ)uaXcIAh(> zM{8%NZ0l8D#!5$CsR9rcjS<~YiPz5JY&ijGIMu=LzcpYo+tSA&+QHo%#Zgnu(zz}X zc>NN)mo5vzg;}d^Zufk@xiM z7Eb*=-^>Cko#!UrOx!~!S{l8vx02A@Y+KX|o;-BW52(QO65EFeBH58|gU4$JioH0K zkiKT3j0;rvqWu#^rOEWIDH-V`hY=cr8w14rXipb3e$p(1x^6Kb|3Y*=P>;N@6e)OgY127hTkyd)f8Z6JBK$49Tui4$w ztG>#w3;vd|*W@h%Bsd{+j@N+Cky5lqCv%dLENePG9IA|+{`lDiS^vI~(+(;0G`o54 zrX&KgaxWLmwKTOq{uZ&n!Nh2gBz%u)iO6&$=VI|7oRyB2=;nR_+s3~>e|h-(>f!Ul z7o0}jOU6@~j-bgAua7V@ZP8_rA|}fu)yl@hWb31rv4S*Tj6>XDf33GK?-t1Jd;=oJ zES5G?_7>N~yY<&?Je&v%!zEksxLT(26Shd?DJ=BvbbY&)C{mksp-h40*h|qsgEB{| z@EeU*y~~F=c7?;Zq*w}lNPJGwCS$QPv9%Ko-1ljm^kU-@rL`X5IW7Vn`_wq~sfg)g z8+J*lzm&JG!-T~M8v3eNlb?5NpQ2b+=Ae}&fq)G-B+%WA;U$C zp3b4?3q;wD#z*8AixiF!0OnPoJci3>$c%=Mt|q~r1}?}zxg{ma|WUk;!kNY%%; z+gGGq7752Q20lSUYM298!{{|2dmIjiZv~uq(PTj@m`wzL_HC9~K%77|AGo&zq8CWCXw(+FUxjPqJ&Kzl1A8 znw>#Uep!MO`jg?UW36A(XK`vGcfjG?ST;A?bU^AZ?2sZE^h^yRpM^k=zdB*Cv$?4P zqOR_Lj;+u(^;NV*&5;!p4)RGiLw@|#+rK^B{UcrU`7yoEFemMn696^r;yrb9i&t}B z+FTza=K?06SU#R{SDkpe*ao7d2cl$T26N#!hYqX9~vt>D`xy z?fM_6L45k@;jMCA3<0($f6m0%nc4$qEhLu2H7#IX)2`D}3$rDuv3!UKIp{=)RJ}FT zGMj6p5H=KUf|@E!kNn4{cOUU_{{l7n@bK^xXcOF#hxH!N%Ap*ug%tft{fBO`RA7Fi z@goSCT_dKQ+#$1ztWQxa&)CCp(F;Lp4n5EYDqN3je1+;FUFAjt(pR;D?d9T6zYJwH z4#8J&-N%aa3vkhAP-r7%G4S>D{EbNrlme*{a6R!L@hdPr%w~~0V*T)C`u^jOe>;Eo z&v%~@0PM6!Ah0b{`W{2Gg3O+`H)W$rp*3iF39E#3Z24Ro4!F^gW&TeoI0)hVIXGya zyEx(qii)JuNuOo3)#;TRqJ2bA%8?y$PRBn0H^JOZgWc^C@v1NnA?RU)9GQ!oCBl2} z7dO`T$d|m?WWMT z)%g-q-Tmxp%yi_XwRO3{*Je6l9^ zPrYJBG992iIN_OHs%jmY37~h`5c3S`1~*=9Q=AkMxWy118AK-)Lq%9!uGr7ji9%wi z#UR4iv%&hafDg={Ro=?ZPC^N@dm6nc!1R)d7_>-j6{3%cXgd9h4b<~-l=ci+Iqv4r zGJ^_i&)$8x`TF-iBVB5}1a`u?>_W?qzNHN%QDDX^OM?RO307jz3s7mWWh520!<~3L z7|c)7f5MvvlAp#K6B2L5Mz!=4*m;;)`A0af^oBp5s> zmnqxF_^S}YJ-`p0rd^e+v7EGz;?=AEy;P1h%PqN z8N!y?2W+kM%o96zsr;ws)@%)50m<9vqg@c`^y!8S{GZbJ;GdpIdxq+3c`B_fkm#O! zfQJ)^OZVU!=%U-h>@w2vO3gJ&8W--@^&3Q~0@7{T@hFtXod2u>c_2YOdvR2rdTz9T z(mkGqs0C)D5yQfVa}mL5?DV5HJ6~7jhKMsHKz*vS3o}03JbiL~JzqKhG{7a@U*jkf zb2R`Y3uQFeUE#vDFPhqsh5(J5l&$mDU0mIeBUe{&|KIG-Y^Hlp|FFAX`@lcAx@H9d z52%BAgu(%vDJiZ@Cj$!Qv9SbGheDOXFn#X9(EkQ1&>KnPadOd=u((;h6o(fLO^Oa7 zW1qXr-hc`+rJ_7%y(lbDCu)X)(^46)zkK|MiRqFJ;FP}*`iYe_e;Ww~1lZ(w(kUF6 zA`YdgM{0?UNwZRL-6OcbG+K2xWes!-O-qj>g*bPe&;cJ6j;R@-Cpmu##nevT)nVNi zca@`#kdd3yxC66_gXb_!L8o-#vrEr66^2^-lxXQwbc8<>hGfTHM`1t5`|wtOXj5)B zhP9BvDX<0bA4Zy2hL@zOH4!}ddb~tM_p2A*@5isu`#9;4MXq?_yjHLS`#K&7J^70y2ZIs#Xux+SEmF!-(B zY+ub6SRXoXouF_o)gIW4A(J7gGlhT>&#XuM;2iWz>_<2%xM%nNp>c8IpbJPNa>fqH zs8l?3{fd+*ZSOu@w-KqRpqtMZaFpe%Rk2&x=^6FR@(N?OtY#t`eWqA1Wnusdpq@r=akEJxe!7dsi&;nY(6%5C)%d_z;X_+aMRA}QaNF7ed?T#~E2`{b+ zA8O4EJC#zq9&@IAI`DHVT7sMAPcEe>pVc6A2c)kt_Jm)n0Fb*YDgcdLYn&5zM1kz? zZ;maY-k8|zQ|Zlj&9C8KI33rZ7OaNO{vKe7K4YFVaG6E6ZT`q^m^R;@hue#W;P@$3 z{gAbnMT17qEV&4o8~dyl8;M^Primfhj#@L}5*JAvu*&BdnPSq&5lQcy>k!sCBbVR*s2(~W!@z?ltqSBCWSd6*rBjOM)hd$oL zoyO4j`T)9rYEue-S^X&GWBrc=>CK?(7{>Ypsf7# z=@K5dHjQJ~X~%P;sjuOF0GeEEFQ7KWkzxO#Y@|_;;vAZdB!lM6!Ja+<`w}xpyS>$j zmepT`o#K(|jDl)iFpKF>Cyhu=eGSgOa=EJsmQW?k zQJ#FOjY;7xBcY$hj*@m7i``4A%0bbwf$P(Q;v!1r*erXXU~K5~&*rC&rlv{t8abo^ ziNi0(#m6}O+{xa|QWm#hC?LwA*aaw~9}h)OMH#Q{p&LmUrpr4x-QS|35HBuQW9Yda7??pZRDBPHrb^`23)-)zT82gCYGRUT##Zu1)6ah?yaH1*{B+pEnfGM=Nb3;sRue0ZI!4c>=gz$lj41#nuD z)WC92FULrFk+Nd!^;2X-TzvG7)EN<3-n||{^4;sdJ*CEQ%8m$D?>_$-l&9n=g;DjB~7?t#B9#Y;Ty=Bcps#m&*u3=Pp z#wdUrkiDTnXqT6`V{JEie}*=Xj!KH3KQ>daddO3*?E%&H&H34z(co3R2^gzyRhkAb zwQdS=m<+uw+hWsfGB-4LA(C!UQXfGIEG}<-WMPnzPU`R4(D+lL%bVbX;VzSFbuw!aLeG z&heqC6fA!+L{IwyIu~e^uBJK|HLZ$OUg)TMBHI_bar}KlMD`w<8^1Lo zc%aIcY=@_%OLa_!>Cld76wxyL#Cf)czH0RviT!!FMMF@Jxy9^4(1oq#d^Ue|b~h)C zY@Ae2yZUILq}Izd)JFV2Pqok^;UJ{o35H;Cf2hIBCc?|$=y|cqB+xEQ=cfy}>^2IH zBC`~@UdeB)S~C}m6^_c&lA4OmG-AA|-%mpn9~;BP%Opv2i4-XXak|cPx}=%X%$g(= z*5+slj?Ip8ht+V~KUoLiKyL|Hfkz%~-3X)+OhIb9cLX4{*g8uyk4 zPxEFJK)QbWe|`K!@lxvvK8(0Hr7VfuM(1z3YTqu@-)&hMlfv8$*`vy7?CPQydU$HF z!3%>@;3{5Y+trc1gF1O1*mU^%QE}T?S}lowse~tc@OJe66Cd8 z-QE{L(NCK=q6iTV#VJY>4N`v8A<=fJBE4&Jd@huvp^_Z%7L)%E94XFRSkfy;S`Vff z;+WuOU~@YuxuZ>a1gDc0mwnHQLz3=H+|A3E!P&Su!#*Lx?4zYm#Md4VDYuSYxn&l7 zB)#fj{QdI4w?ZGbxIM`7ze$YHd&N$b%W=J`aTt?^qnxJ~3ctNk-5>rgSJcn5SD(+O zi)(B*4^%Ks^4v|wLz5IBVF0I%s%4O$D`B) zVGnUrO`D}G$#hhy&6WwQkF@A2Jjb22FFt+z`VTx1W7q|HGC=T-xA1yI%F`iGBOLmn z!!yVBpGy;Pt3_DczC3%FDg+W?f;g9u^1G|Ahhj^GcmK*i;heS-a3;O)s08}qtG0nyb zruaT_EFi6yRHv$ugK$x}`8NfEdO+Rca{2=0f8o2en%$#v*%r+3Crq0fvr1l3a9 zAkv%CIq4-!88G`=`#Y zaY{DfmjhKw*dy-g)GWsZ^`P4dn9%9C>tM>;6EJNqS8&y!6>)PGv;vWPb9;@zW@yw- zUt_8EjbxZ)HW^eI6`0;pSyek#8r2+?r$GAe|HyLyXpJz1ROYNy8aM?A0tJaul?)Dy z1XgF03etMN-f3#|qh6b@oAGaq~nmv>aQQhoVEW?eXnd3Ey2?P=Qc!OTXIrs=7DE^ z{_Gx519c)tyBz(nkqC8iFkOv^|M`Ngy(jhSDrGpK^8(Xj(@2Zga3pw;NK~(uFHgxi z;dRB?(vX*7q-OrS!Tc<32fg1MN{| zaD(F{(naV%7wpr?f}>fq>9K;t9sIPR|M&elQn|U3!wN#rF2Ik`UW!m#XDYiL{eX*f zKPe%yoz0C;1Eeq3Xr{KHy29{c^72^C@!@cXDs(qF@mE-Pu^lZ-09)wzs-?B`(5;IN zeAuu|>sQEeVX@?h`4K`n8&Ui|eZRFZdq0pBS{!naKN!jn)G2V4L9;R8~L z1p4aHxdNI9likR#!srPR4>lu<;u42gu0?29LsFo;GJlOsrm<%#e?{GvyUs@*5sNiT z)WYx{!oOQYDF5drM?&1TDe?igSRN3&&dxs2o@u@d;l>y(euKtHob2;EzsjP zba!G=oO1=MgaZD9Wzi{M;*QZCoz7^gQ3aP#`K2%Ae1!kVa72oUa5w}#QfdE}ekzsJ zM`Kj^utzC05UdYRleT{KoQESKS)Rk48O(^jMB382qrgYtD}6_Bi`fNzn0O2`aQt9C z+1{v7m;Me794*1?kqvbuBsQ?yoKAWTMZ;V`bc%nY&lBmdW*>h1_|rpZw`_BGykOP^ zn{dKXrA9X+Ts>VkG^pghMl(cS@i3%#l&1=*s!Z$mBP%f&+SoHj0wTWm%4$UN>G=2;CI*~7f3XKk^dr`_%Dh|bLw1|QZ`XAv5$ z9q*yOr?1*6=;a_iUg=X8SjN6yr-1Y&SZ#2reGkpZB?IN_`YapVj@z{&XNSX*k>k#% zOEtkjW(3)m_~s(3mq|BsHnYt3`)XuVYcr;we5CztPS*i&e2{xb-cAoosvDVM@W30y zJ1*~7H8*U+d`|bOt&nFT98B3zU=UNi44_g3)?%ciJ)Ono3Q=TKR>RYQ z9HK089+nb$uHc@4raAuM)4@5F{O*PcA_m#u3a`1V+gdP(h5>E^BI6I z*t1SUNmq4)1*iILRHm%W52aWg#kb(RL+bA$C`krPav^)wEF?_a613)pPSE*!eB$w z7WyV^quwnYDJ&2#DN=*Y5_t-BEZ@wDX5s>SyA*p! z6C|Pp@b`bDr^|O5W8{;9UynTYl9TBAlKvC9=%{IO4oHw_F6}H-7pgTX7lUT|>Fr!- z51bd4JJKT^T*)I;tA+wkNcv5O5vG~agHgeo?yMyn2j|MK0Sio!(`xeEpho~mCH`ur z+DjSBth=gvhD-M4rlijT(N|0FlvO2r z!ke8XU$I#N6CkIT<)vv2^=y)Evwal%IZq=M@ILQs!8UE zf$JI=BR3#O6=QWVJX8`g+(C1;TJZeeokYLFH9!R4vpn|>KC=fit}sI4ymYk_eVv*W zz?M}4}J@ZIWXN=r6Z5uba#U! zD(8Flx~G2_{Xe7s{3}W^2oZ(m^rM(E+MvsjcA=VV5N#e!$Up;OPUq}wHK(i`nw$T> z`tdjU&$_&Xcx16&rVohITl`3KtR)!|@(omLp3pH}*E|UwoqpK@8dpO@t)U93F2Zf~ zYSW)GZp;sA0wZhV>5CZ{Rnb?Hn8++ zdG4m_VxutD5R29lNu#h(wSw$R=E0;dZ`TVy=y6rL}%yxl$Jei!5?p$V5w8Bm^dnEGolZDSpB(a=jk3TW;nMW`BjUUcOMNuro? zIyXfI$?geexMtI{Qd*Y-+ba@9bv=Uoeg3(Lv@%Lb2LD#mUq!1-Cv+ZgLm?Mg)bp_| zIDHwcIj#CX{PKu=dKK)rUfvU4Ze10R*2vx5%XqOeGw= ziS&6#F6onFh!PO`t=Z#FQMfE3V&HfVT#9rHNO?yUK!j02a}8Y!6xZ5Y;KkHmJIhCA zz9xf|AV6v3*k&p^wrJKR^$?Ko0k96?0-#+{s9tY-4S_)|#Zg%ej$PzZCXYTr^<<|~ zX*#8Q=0bh<;1SNb2GO^R5;AMvz{DbFJ;b}Y&0}rr!-Kn`Zhu*8nWThV%ncV%&8D4Y zCYpiN%|*@;T`~uA;8dL)m^#3z0XAFsGwl5@yP*~_g4m-2PUdYy0IR{RZ|3d8uW@Q} zh$OqveBVOGzqz|bRj7)(huV2y7N{b}_8foratGFEDPD5iWFg-e-_&D(W zyytNb!%qf|C!5>xL6NmsuO^J7oAvV3!{;C0zJJiSg%lQ{3wY0Hk9yO<$dY}bow**^ zzCEQ4I=1ZRnqr?}7xJQ2rht{KSE-UUehX&jdz4mD{JF-*6Q0WT5;Kw%?)e(k?&dx^ z51;eG%d`?f4=%i+nAUO$MLxt89j>q*DVY)YU*fJx0K8h9Ba^2Rs~3Iu;v6*|wHe56*(x~AirAHC z>bum#4xZuC4+W-a6JO_H`>xB3mL8|G$P7U6X3Sm;4Mfkf!I>sA;I|sC!|;pesp9(#RZ!jOhl}P4`4#X~pJ>J=EOA#Sd;y@LKtJzwS zZAu+r2lfC!X9DyYOaxTzDdJUnSN%PZCd>-%bT{pYE-38#?m3QNNO+D1bKhLlv$;_( zRWRX$bZPjF`9s>O*Xi6bwOui`IIS^+l=eV8Sa2_T&{e)2U|msHk2ZOFyp%Hsf8}$qdcB_};hH<;4E|(zj!AQx02dVo{qPE` zzS{5~c5Zu0Nu3e<(2XdisYTL@e9(uZrX{$YgJXIOhJzh_IjW}!Z!wjBmf(lrb)-n+ zLe;_~GNeY+QIb;cJ$PaA4=_dsAMBXv*~|ty*r>?*(tO9iBt6N)h>|lHhAD)fo(aB% zX{=ggl74#8b!w2}xRE)9g4%_fR`grnK#tQ~qZiY03H!F3l@@-c+;_*|9bS9PS-mju z84!NsG-Ldn1{N~?52gz#O`pWgC92=hjyGGu`tzdZ4|j%jkkKx%v{u@MVSuxSUQtC5 z)*ic=zTs8UN*8zfa6Pn{nt9_o&;hBtxY(3B7;!57OEw<5hPkRqIhuSpp|QxSsG7sc zHyY8=ztN6a^H^gZ#?A2|;=XTgSKxS+X7up)KOF8K9~~baog9uQhsQ^U58oe54(E|H z!F^J??#>d)3an1B$3c1^9L&%pc7^or5_E?<6o>r@9QF@T>;tc{)P|fi5B)gq&EPTK zDD68v#NcLoi{y=3zIMxLn`dw)sKc(}hEU-uuE{oKLc1GUn&7X2OW`3O-_qtK#D+5^pX>^{3r* ziV#o~LR^1&`{nEB?bXBQ&*PV0-+qFB;r#3S_oH>dmA4!s+j>2IN$m>E6)atohH3nH zFnL9gnC4nU*+bntXEIbDZZl^JOb#*4QUg-w7b`jG%wC<2wlgHuT--dj18Ys?!4qrL4hTn_DZG;yY}7nOdL>Z z>-kQ6D499KV8^;>vzhS_v_3=iJ08P0x%k^hR)lMir<{;MSs9p&L6hd3HVe{%GEYo; zZ6O6kalivp7BitrH1syV;gX?KCqs{Nh#o~Jo%QS`^-K2}cfNpW+8_%`wRrS&e?#Dm zZGNzWEu7l|Hs?Jr`vl#g%H87P2HEYYh=9$IR=>TsKmGKH7R|jMKYsZ9W%T*Wr>{SL z8EtYO6bEtWKR>?vi7nmq^!q>lGt-ah*&Vs;SA1Q<)k;rF2ThCC+C}t1skp#u_u!Md zM~R+Qfx4lvBMOD69En9nV2mj?u?Re)9b!^L*a!JfC+rg8oZ6bwC?&-Z(iVkhQSJ|_ zLtVWO^C&5gC0)M0MG|?MxKKnA)>1mW^nkN~+K?^FF+_CC2{>uF9piw2fkDm!PNWpg z%+UdNN;O0XCKE_P2$|?Yh{*voH7iY>i@7`X%I^6?1+2`~G~tAfesweM{OJ>vXwC&y ztXaJ`%z{A!CWM)43HRfeXF17B502dhK1CKuxS%8b^{8$7?!!FtnFES8ZoUpwECre7 z>A}Kt9u==9o+$++EPTY$ljdVrFFm4nvH-`Nhv&hrxny3d1u~bE#`S8Seo~wnIFZ7E zpRS~lQp|sQdN8)&lw8t*4M1-m0iL~Cp03x>x06Ru4eRsS+1&+Xf8iVwjxeYK_8d4a zUaep!NDWaYZC;c0CynHfFnDfLClusJs|g{?#kS9kfeOKxIz;$!zBKhf)6zL&k&IUj z?IxPXbf>QU!85}+<$w{;dgCsJ_IU_K}|~QWx{5UZ&4*@zOsdS{3eg>B5a<%35H0QM-%W`l21R z-&kMDc74@GC8q0oo`&ZYQ{WSo&=O150qO=~fN0buonXAbo2^@zx<7KNS|Z&rFnScG z9_XLn0oC!k_l0L&h?b@kOv>fU$QZd_4`!qbaNJT#cA<9R0|D{h#hmlX7)JsP`b^nSVCkH`=3p56pn@L^A<5j1Aa4{waK3G{ESUj;Do{8-kua3Y|U*J%1Eh)6EXO zw{o9D&lmy^;p1X;9zc-9dz2&%N7%!AS*aZub0Kr9aOP_)RlLI z{U8x5Fm=~)3_TN~pb!Ioy0J8SPRrbwGTcYE=j0NkuEo8Hr2(Es{wNeQH$I7nnFn>% z^WiYg2XgFF=KBLVoi4DkS2j!ju>)X@A)n2MZF>C{q~68;t7NiGOIs|+A;Q?Nmq$H@ zoRrZ)_VQ{Shx!U84Q#hC1>j?CvmAm8+Q3(FM>InM>zPg!N}$;Vh=R=@HKc9`fyCXV zNg1LC>CkeKdyr`>u>4*z|C$)E|MuQ7_jmc0$iIP`Aj8XQ0;7*ui8VZVFGnN=rtk1b z7Kyx2`|Z&O7k{PUDZl^tKU^K6La(FW{f_#d|D&38pyIKotrven+Fe?n;W)QodUY!f z$P^?%Eu^vBt8e)4^{F>6paZ=DLHKXK{mEmLbniczj?w!^3O%!@mXE<}1%%@VEE^C% zoP9G5M+CV?ODIP_W1!u^4ozks_(XL{;U%RsGS{d?gX#2s2_OUlNV6tM0XIC7aQ zrhVCtPI`d2>}3>kGIL02@;N596b7!?4F}bDp1`e4>j7z!CYZlW32uUEzOL7_N0hRW z^)IQXC(OKNAq>lwd2|5zJy<}Tfm!VO-whw(P8wW)ui}~bc0rOSUvgN8LhFNC7T+Qq87=nfj@MSUMyr-_z1Lmz%Tx2k#>+C2= zG(-&06%fo@Jbbe{U(DxQuwtV_g(lEBPTY0F3sWyuAi_RgS%b0U2KJ)>CxNJf<(_|* zb$n(Qv6Uu@K{;xS9;+TPKp53tHZFk^?h4ZE4Wa@`(N(C;I5BuPAc{f`43X@B=X3?x z?gXWIb$X9zZ@rFDcyJy?Ee}-wq9-9?<%%=7uB;n89X<6;L|EWZ^N}jdlIm_M5A!v9 zsFTpJxX~kk^B6fay6x6w38rbR?(`B2+$kCt8@r-4*|Mu5q0>vDLdWjaIA0lf0X76He-coRrg zy8=!CvOD+=u&mXNUwm5gsU*Z0z@zCbc^7a^vkGnNE`I&$3d0Ir5s$pl z2IzH~Fwb0?ZMR0!oW*F4?FLexVe-%*t^}xdHr@9)iz9uj0=gH0!_X~~(MLp?9rxKWS*vKy9p(Ef$8Bk1)jnN_=D^rCN*HfIXNyu`v>NSkIFgS;9Nym_9~MgvPk<&2)h7cYg`F^{rGi895{0`Eq_F)?x)mBmm!?f6 zE-?8|>I3(e1w3Zne)#bL$$*%713-|Qa+l~2RseO1v(G}V=sN(_!6+3t{O9Wdq@|l) zFI+o+iwK|IrIq79)ly0x0{&<^YFg-V2Zu12KfNy2__)tYy3CuoOG-D1_Vf#2nUZrD zK?_VvrpG`dp}o{)%{#z^(L8k+7wU8Qs~L0L)8Wd4Sp<_0kWH~dV!&OVB9mNXu_2qT zqkS`dM$LzU)T#M!{x`Xd_}=0eG2IrC=_9mhbIE2{yfog$H3eMNs|{qWt9KtBX8(Nn zFn#;}{h#0d_&2S01Njo5>e@!Ppl6MxLNaxD?fX0Y+NHdRpq0vw>Rp(Ypsz2%;nU=` zt?uQ<#I3Kvk&Dd1D}2LjJh5VA2fcOoyf0tOm!IT^yap2qOX z25&~;lB_~xJF3>>qesYVsI{XL;HwvRa04WAmX;`3*mA*Qq>@WA@A6VDyu>5v`RyED z`1p4YYNFRs0HD%RY{ozr%{>ul7g2SGaR%48or_Z-SLMcP|e`4ZzgH zGAj3nt~K62B1tov2<*YGYiB4!G$2O?!~jIks*g=D_2qcreoSY%N%z4mEV`dSUxWy| zTYLvT30X2$FTK1x@wGzhbwhkF528J)#F1Vr#G_J>b!5!cBL%lHe?gq6kpbO(V-&2uS-)dW(A#g*z^m6e@E{-)DiI zo5e+anSFWWbHppnE5g4@IawNyqXwW68abfO`s%D7LfVCv8Je2_gg9QkR1RB^g0V}^ z-at)_j8ZEZmt4{cO^fF!EzOD%F7#wojA4q)s;yIu@ugtg{QM#7wkwcmR~PN2+47*6 zmR;nj7c@HYfTpnnl^v(pA~`MTnpO=gQ7=acZ)Vj@1I%4~@syZ@&IJWlr`lXnlfG8U zV&$^AS{rZgjXIs+$GO7_SJIe20#;vPW^CV%-q6DmqiEK7EO?jj5BJf-8xi&HrV6Qt z(EC{2Dy1-!VTV$%0>KaE?vd<`Vn0KnToTJt#Ht!NBZnezFqwda>ECd@YA)$Jx7(ML ztA;s*E(mxB=I$T`dH8{nw)Sub$2r)MSV|LVPK=*Km5nR$sEBwfw=G; zhZZyhS9BNrqDBKvUgg> z`6<*Py{k+xs`Zw2xJ|v-`cZPthdTMPdBR~A@Sg$upfiSLa2Q$nFgFXP4!G%($x+j# zgsffA6P^=DCqhLZep+e~jK)rvrbhkr@)Y~-7Nx1UxkrP!gfQXg@z9 zQA9NB(if&d?^QsHSPq0fgCKxvfC8kb3Bj1W1KtQFsc?zo=t4EKQaHjwH9wsp>yY_e z?2mtlbTq!{Caxt_T6}Gb%64b>=?+M5=$iLcM&3_MY$Z?}%XSX);0_;<16MV3LtDHx zIPZ0XqaBc5oJevpk+woyaojdlnwoYl9VPYc>1`-S z=w+&j?HbxzDQ>WfmY(Vb+6dO~-~RJqyMFkeUmrevdH44HcJ=V%!#iAp13|A(0)kS| z#h8=SBdsj}J)3|~e$6TDy!?L=hAB&iY?eE8(KJOpRy{?iW618EzIJ`Av@v$2)HHCn zZRe5XMPl5e=`)hj2*^?jqD|~gk!lLL{wMfsH^iD%HpqgaNjT}!r{GjXlvLfw+JewU zApF%XmY4%O(me3q8+FH-rP2uuSDwTho@{Ux!9VGG5}GEVRLctGZo9zmV50jXWKaJ=hZj&abGcQ3U#Qdblesn?Pv^j7*qU444oi3l|># zn3|wbZfI&UE{|P?^5|HTLyb83E*Q-GQeYYfF}Vg_P=;v`y(~RAofc0rL{I8Fu9U5B zx{-c|G6Jjt^L&@6(2<6vkOW*uH>?Orl}#GQ6fyeU+XMWT!Q zjdoQHElkttds{Y`Oa)2q(7nU}tDYJt=#>)eccF{}R-q5?@TBX@gMel18YGF=A_s%; z@zcZk!=JzYjBQAVpVBFf%ozD5QF7J2F>V8z!F=d^JGfFe$r4mcvRk4(WlVseu!c|Pr;95XpJ_*F zE@=W}iUW7R0to&9`h;K#No6W)-X>>Y^Pcj8BNwCpp5W5_! z$rO+=>77t5Ap3qW{f#?DizPNR&1yKr6%EwNZF)S(r_H#lv+MvhR{S)7h09 zPwiQH=oLf|xolqF`_7l%N|ArdJ5;>7Kcz!I^v~vZ=DrGjxSmGRGFzgQuxxQ2-jXk9 z_N*7q)3DfOwO9|R2iu{eJccRg&&T96V7QOnZUxrOQTh@)5}wkti|=GmxL&{b4*nR@ zo?BU!NNhOz=iB#xuuJ%bDk<>qxr1+UdFd4%stA|+9Uq9;xZjQb*Iqmp&3}*f z;@PE83Ql9}S|stobMV~nc0KFq2#hLtyK>_mj%_3LM(IWBT`8?~q@oe?2MfPRMzyVZ zPrEW1hYY{rdrb+1CzsJMlo#@fbtjphE3@AuV5?X4B0kcOS7aw_S~id>09+FJ=$ep**jb$W5NE&`Cy>m}Q9ZY6WQO0+Z>n3Q_sFjAc0YQdVO|wVUcl6L0EyrxQO>jrG znPwdl`GL%3Ss^yWOvpl}MX_u_-Alg{ZpA$>7?JaI$g)0@5X+zgup=_Ey2g=m5pa zI3BE;S}St2FpXXm#w_!Vv#nDeY75I2RHF<5Oh1Fg#*L+dV=I8(3t~2dSdc&ScN@!+ z+2RN%G$z>skLn?|KmoxSwi>ukeS5h6%`Hx8@T3lq#+A+;!o5^JlsG;S6g#BMUdKYoR$_s?7@XV5V zjUveUaJ*Wx7XG3!#|QqO(dD*_-a=zIuyhG+&h$kXCyM!3;j>HRgfGv_x<2ys0@_rP z|Du5q$Jlzxdf*7Dme%}{;07h=GHOh*t^K=g?Lv1DGjP>*hgAc%WQ@nsF-Ro$%`oO%%$&ae;NaS0~ z7eHs~ZR*A5m=W*kp}JbA>Brydfx0Ala+se0Bz6f~*2~G7fsm-OI~2+ta%Z z%-uX29ahtD2QSDY<4x9%Y##^l-BUPa?ikGO_2%G7|s;xgqpz=bzsG_~qS4 zCcvk>*S%~jV3pO(ux6|7A2vvd3rrtoT1gyxZDNvoS-qGbHWz(;q#i6m)r)kp{Qzgt ziR&o%(=KS>p}#u6+q`iEr1wV&3@8SGV1_`Td-E-o%ddkv8V@{?7l zS)vXa-m?p{Pb3i_30SNrHywn~Y8IHf7fszcfHZHpvji1cTw>&oNALxds_1PQw9}zy zR0zIaT?#+kM=yke+%!LDa1PqzKT1+!Kd^@?aEqjZh6Z!Fg3nQXO{3u0^afdQgi%OG zCM8^E&3AOsC=3m!s0+_>vhB8MVd|cU2P|nCgz~X)Lc^A=tK^=t!nvymYhik}Yobx* zSLdIh|46Fn_8JU{%AfelFFJ)prH}(gW3$Qyjn&F5YC2`9In(esbCmd$kr4S5x*My7 zX?Rs-

    go&UuRH=zv^gI;gU~&#=qvJQ?It8L9xi$ta2^+;h#^#KcnLdZ6OKIr#R= zmrw8h{PoKN$o<})C!j>$t&#yIlI@K2z-VcwR+WjdV3+;XAMB#>X>u%Z1XG7nS)9n) z)(cDv1fQ<1h6q&;cfl67V_QVCevOM8fRuEK)f5?s9HkA8gFM7_4KnRKV?HsFY4c_Y z0n8h`XdIivtpG+lPoV@-%~gt~K2JF3YPBO1KB6VKEum57Miek)gsT_yxU*{pW&8q< zV|S)HvFIx3$`Mb^f1->K6y&DjjpT>Ws+cG1S-PS(lP_CNAk+4>v_A(C#p+=1XGZV$X^{Us`AiGsLc%P7NkkW z#`E1sU-=ZW8BM(h`xk*M9)VH)E^Y5joZ?Lw5wB^eu5G@rJqJz)Sa)?Xs<)KZHz;Mo z$g)y56^%sh(plb&y6jPe9lp}eEW%m!%hU2|bfF)0c%Si%6kTPqGZ!pU?H~yi9f*~Q zg@WqU-Q0>$+V8R=^Ag#NFNDoUme@H$G-*usT20X8j41neFQ$Xb3%-x)ITa<~xoFyI zZrOMDd2-EmJhI^7<<)%prYIL&9PWX&28O{Z5a4WNt`T6B0|o%V{8Lk*Dvv#4M2>g~ z1wiJr)6E?;chmEkJUNw3?&fyt$BaZ$CYZZhU&yx;KRH$ZG2#KlrJ`SrWsuH`$bCf7 zA5Z{ukxqDkfEge-={KGQ^(tmOC-#G8(gM?zG}27hbD{&(4Mq*IYiRz3dti&nU8vnc zRu}S(d{@?}e2W-k7wgW=?lBB()V(fvSwvS;kn0sYe_S4_cWHlmmYp3Evd$}qkgUB8&U((6Itx*Pv`Jqym0C;;-^ZV1hU8Q6lf zC)T98aq{EH<8cn;<9dB-ii>FIJJPMj)r40ZZ#5RdlPBYdYm|vSU|lCeY@ar7=xxrV zPv~7akw*gDORQyZRs)323;)Z!nCPor)=M1I6{F>)+uJ!B=uk&zi{_*AhTh&`N0O^P zSrI%_NmAr8Hu^WLSIvgQvJe7VS|0;k%ZYVf z%m(U%H=9}pk=l6j{3UWCKnVmbuGEC7E&Nna=;rn6CFd>~h>4#SrfJWzS@#5KVd^f< zf@s0&DxIgdFm<>279yLd>T;_e2$=N*TjJzcoL=qeQeVnNY!0Q}?-J|KNWn1IUa5!6 z&#;@5$8x7CvMZi!sr61U!Pgi8+uXJ*A^sXRN3R_DCnV`6G`S8h^EUZsZ%bOh=P!rNJJ7g1@|CQR;$MAvI36$ zPpJg6$DVHH3ve{9uoyqNhRF5lU)OIxy#4v%?}#R_04}+FUVr@X?#stdc7?TTz=pu; z0?i;)OVkjq>8cBj!Y)vpHALf{vxjiSYd7j+B8TqS6%d0q+XSo_7v7R1Ju_NbQ!?ba zSf%@x<(@j*C9CtC2PqUu^52eCKy`B+w|zFMbhraC7p?HsTZ6zM7e&=h0D0}2p34ms zs{TV{#_P08pL6gO=Vw=~l9ZhTps5fx@_VHq!(X~SDZLwX_u@pLuqXR}eXzX*JFz}13MJnz;G_6%_S@_mKb<)&7V z!Eb$&mdTy>pm6BZ_<05D(*ap0oxaK)?x{mPjfO99oF zi6dyVhBj!U$&IhG2A88wyBht04th~@#zPkQCfltZx|M^eDh78hAzP(U8aLS-9Gtw1 z(1I8eck>Z+!N3dP7?3D2D=p%;Flj7gI(o(&ZQxFrug!jQ*^r~n45k!hT$+Rs4{`#u zqPZa~aQ@qk{1iH^8#}@FCO?64$6&7sSS5GM^~%00mHV~Cn>0|FO>?l1CfKnE1c7d( z(5ea3yeT9mf^Q%m&Q|o>U7qeMN;F-$U5{Of1H`ND$BCUW`LjaH($4+tkAggK0H`5DXU^9}|~M1<7gjOp806XnSzmDPf}s$wb09DXYtr z^CrVW1JGPQv#r$w<@fGE=3^m}L!3@$l6TfOxCs$vm0&*9et8xtaMZ*FGD z1VG*dwIAE7_6^Am(MnA?4UmxUTEMV-V8>EX$djg{I)on+4dlC`EBZiJYF)m4|Cc3r z2No;(^!D#M41{6Gfz*M4pm;IEsHGF`vG8ypZ_6+#DG2%mst?2+7q4GS@w>R0-)`Z# z3#J~nyu}SI^rqWATHf%wb?=K)Pa>KGZ4u;yus!P!cRj`S7L z)c%nOyFA@MWsZL?k=K{HbL5bUqDey?gi~UTy*f&B0_hx)7Xl3Xd*w`o#tlzB{pvpb zR!jAKGZ0iEKBR%`g?6&}=sEaAqFR``S6XOUMKmdl2+-rP1E~RdwOXIv+kDZpgpWbN zE08*>!~-cyfkSfzLc)=Omlv2`?jjJ~_lLuPG`bGh_KB;ryXB_zg$1UUXll)ackC&= zqouXA8K9%s%1;LU7EF&bnJcMibkv)yjc|+5fb#o|7>Zn*gh_QWOi|A_U|LqlL+>H=7{#%Wl_ybR8Afb{)j=CFrRl4DxTJxHkMu1+5A z<>@ld?wb(6~oy@*)RV74xJ^^kDfahtR|heXRzd%zX=0#-0>b5tv} z8BLfp+M|x2?q-yxRgRq3=WobA zEUEhxK16%n%Dd{xV!QpKyYxlp-A*5s;sSwI@aF5_mdIxYYYoX}%C={O!YAXXb5c@? zSSDo1o{8x=>I76$JGRCKW2qmb)Z8t`9fE`-z6XJTE&6wW8lbip6cupNfv)AVDoc)j z{Oj9K#b=>w6BJt7#xoBm$ftZY`AEEYv!riWa|&gMUYgij*Gj|Mc43+|Qtv5f3I8Hr zrhNpK7gJyw(_Q9=;SN3{hCbJeb>(n8y(_Lc*)_s|GrJwVz84a0-fP^hj9ht6XSz=R z7N+kdMW$t8!$8vZ=?%zGhW5Bp{jEp_zVV4c8S0C8g%F?VCgKR(BhPhrgLJLH^Z*lO zU}%Hyflwjq*n2?T(oih787n**)h&B2{(h}GV#TCNw-mYNCLl9R`phY6iRFnn=u)4` zddMs~y8_ydpDq3}(zwNac*1x0755B-#|6*$nY+-;VD(kT4MYO{Xz5iNikVoGwc3{JnR_1ixAWtP zYBecqS8>yYY6O}u3dq0*l|RFdx4_nYlo<*XVCjeD_^@$p?ZWgp$`2GCJYz^|GF=Fy z2cuBLK-uv3aE9KYnjJ{C|0>REr4MBHiy4Y;Nw2WG7j$}X0O1i$mI8<}HN3$#HlfAH zN>4#J1TJSHFul8<{n7;rUh!iOwK9Q=~$%xxQ*PzCSzfx)=|X0GwhWUR+4Ce9h8D+N}+ z-Sk<&oPoy|n7UU@>*h7cSw!7S{1xG=PB2s^1q0xU1oQP8R(JJaK!PcQ3T^R=`mr9< z15i_lxGZsEu2|91h9t8hF@T#%Vg}D=X;-J0M{-^>DWL}oH;YoiqpmwWkBqrsZnio_ z{DnNbSw9_@G#InOmMGp#(K{f`z4kwJ8K_WlU~YEa(8CN-oIr=f98L8QsqpF*T_LT7 zRm?Ev)-@;ODRG9IMf!FPSEHs?hv6b+mw;)A1*VrU2_<7)v#E7dm$(lsDuW5^X$MPG zq|ejF@tDHjf#pj!=Ns&a%|+Mof@7*MACngUaED&j5^f|UwnM{@nC`^tn+wdJzrnCA zT0<6|^uZlSRr&5yVDUV6_~je5UzVfOPcKX~$Ml)cG9%}gw0dPdX^U*MDGem12@BUq z4e3KTOAXAA*2F;cv>*Y~% z+6Hn*ThBV+0`f%ngCL1~;FWVI!scDllw<^HB8tnS=_Pbe$K|oOgdymvR2{`=5Gfng zNYC!pt+N;{P3_s;=B)3+^l?2D06UU|5-@7A*Po%V<;^HaotGyICMviR_cg58^X2#Bqm_Sa_B~E}$R?ry{i%Vm_%=|?M*Exa z)uJN{!q#9(i2Cr+%}Ii`aQ@x?C*{xWm+fEO*~&FGZi5gX4u*!KSCy?BKpcdd^)M%RbO|GL)z&BY?zc5M)ub6gn*Eq;lYH9n13@XxAF8X`p=yJIyw)Algr5+%cbrvSm~CxW^=6G9Q4{I? zkn0q=N|1{PO5OH?K2)=u?7Uu#D_>DR21F^d9b^eg9rzv~+tr`&?}`bLc?pYDgPfF7 zVSi$VyLws6(`28Yp_r}Qp!uG(wRUvU14Pa|*^rCL(b8x;u~*S8-& zJiJGJ%ssMw-c02TaJBYw&F0xT>2!^);(6%Ts$7p1H3p7H{1HDgjI|A+fMq!P# z+hgPR?RTAfKbf2*j+Wp?GQk%r1fcgW>e>rXFXQf{s`WYE%4+C2Sw|OENB0d6CWwZ# z@|pm&yf}pw;s$m|Gz^om&wxGwx}g_~UNPYwxO@u85}cCFMbLk1 zUMv;dE*_P#LIZmuA5T1Bd4JcL#0=4E>k6)3bvw5(btg`ecuo&WGNx8hB4dO}Lkc=F z;{Vk}P<&B%Rf3wBOuuwrkxAD`}^b&_E5?Wl|U7sO;vwE7u>W$dVVh@6rj78TUej)8NUd5-Ak>dxme*RkHY+ zz9{zNw!qTV2ibj=#Gz|*Y+;&SJ^U}Myf0P zcA>h(^l!+lDSHtDieH?r;K+n{Ukjfp{`=Iq;nW#8F+G2lP9zU{ouwpvF5RXp`anZS z*U#ESla}bRuT*y$TUeb&-z*+6A1%Gb$j*ExH_DaiKy3)IF-Ll7wDe5!jVPSsUO(J` zJqJ|6%J^yt78_w|*O@S4m(QeTLf)kWl5s^n5)vrL{({^D~M)@o*=IbRVoajkO;8+ z{^aiRh0l}>DGigRb&?wcPSFSjcPIHqF-y(`vrzKfLWhKa&(+1Pq>&6^j@tkZI{>1X zgILO6cRt85boLq^+xSe&6Pd(n(@eo>AtJdjX|}y!@O~uBiOV<81NVZ%&@9#@l*m5i z(`e@d6D`t(X5Wv9($>QB4EGAuAeG0Kd$Y*}9oZ{wcMYF=1*Wx4_}5jyHy}p@{{lMT z)AN4+^?3R0@am4Q)g^ zB}MsCjOqOxc&U#*Zm%;u2Du&fG@l{9+#dp|$l>(Wm~oxp3y^h^e8Kmqdbr!)g36OM zkbX`{0U4EYyV3zhkwh-T#g2aa{?DlQL=zwtBx8%9T*$*sOK@9G*n3Sh!KlHkkzC28 z?grX~T6F^+Z-xZ2;|$DE0s}*8ZJ8k`zj+yzr;r6Pif~oJo6uuV9v?0#328cvL^_ zhA+I`Vr>0x1!}BDanBA%d=R9bwozc~+~-RBJzv)c8bCu^VTf%<(1n)ef=eF+P~xNH zf)3Yg#43;wU@8`Yb9{7$vr6m)W%w3#ZY6BsxYGS+wVitQ7$CrF_d_uJar94MqK zo;5(S$7S{gWc2_{-^FiE3=bTjDqOV zrPo}c1k?(N*w6-YNG)j=k_Kv`0P~F@lB3OPqXjPz{Q~z`vgv2Wi4rfK;fHCkL?o9xQ|h*6MoeUYNe5Nud%3bgUa~o9=z4mX@DSkp4^~ zz`wBMH+qr*u%=_z-`Vp~)6!?T$O?a@;>u5G#CJ8Y`Zc2%O^7eAD{F+D((GIQ@Xt}x zZes0lxB6w1oRZHyUyykYbrX;abB}Df`wQh!IC5U=>6Bh@NhD&r6yF1E0VhnU@?ul& zU$O3Gn8r|$4nu+{O!@>I`S!qiDc6-p4Fgtn+fA?L+f+d{Keh{O`ya*Yqoob;Lj&6K zeGP;6^=n}Ib+Aov8$*WmQY7XIe^x%!3k*YorhiQlpw-aN>F}N}CRVo4&`oKM!)BE< zCP56+BYns;z;O3P!1C_ms2izxL^l`VJZ_(1PPAVEJ7Bd@N#$|;A-9*>faeQdivXJL z^D}pV={`rkPC3SOpGUgQ?(>ra{hvVPO^m=yAHV`*%^nT>y*CwMJ)YxqJn5ssqsjl> zNwF&yfw5^!O0$Rk@imULbh{PePanyIQ~3urfx8uVJOnc52t>iHp}a;`Pafa9?PMe+ zaPP5pOSZ&0*bIcYLk(ybhMY~GEJfwg-fRHcVrYvI*OVnzj?}`jQRI#ikA&I%G8{|yBMt`(F#Yh;PhSwPiEMt;pWl5ZCKv=@@c1rH|BzO? z0||N!W)DWQ6GM5CjZ|k0U!#kjobQW^@R#@QBuq7mu%_kHQ!2gGF8TG$Ybx2<#_l@R zJkk*oUR1yiOX+czU=10+qsn?%Q3*i8G@`Keub@zw!d7VgOH1EUQ;&2MWtB@=iFDNO zgJ3YNpY3PKCf$JaQK2bWhr0JOL)2CHNPYvmSF`gM*NqQXJn}o$=ASby!u%CoTp>Lo zAxj5OjFJ~gA8KdUxQigV(bDf}WoSxOC^0hEG^~0Ts>w*!e|C@$#X@y}7<$LP}vB% z^$z)-Sf?WfQ8x?R&Z@813K%@2POQL-L=pq7$ZZO&hU7i-svSG$1hx3)@qzTAOv zyFmSA;vmT8^pmc(Q(*+t%yy4k1M+3xq8go7y6r?P;^Tdw5l2L@Bm47m$LR6SsLfQG z;rgM*qeiFj?IdtHMFZmGIZn^t~k2J|}5Sz=QO)OZ;J;~?FLwfh313n)k~cf|63OX zlbR#i|3Iu}59V2+lqM2*71`>b`IN#w9URLd8DQH!_j`c;A37ze4P0b}-B=9LpsRU- z=_9;Evjr;fjH?XDq~*f3Lx717mmbo}R&Lrnj@Or2*We<<^-H=@W+Ze$(i@I&jG3k; z^)NHNh|3T)BWqh<;SNjZvx_vq(xjN;@R?}`G16G3xJHBbt^zguD7X6%qmIGT|AuU2 zR^UG}?xOK*^PJtg&GPaRC$c3)O-~0k$+uG?G3p_~WTS-I(JyCi|F<1rnlXoJ2I;z+ zDi4Z|CVH$s)nZnDi+|B)o{!T;4|J$I?Z+&XDb$iDO{Z6GIWqDJiIc8)O6qK4XMW=6 zgG2~g97?Bt+KWZrRZ8w394);^jh}mN$~Z&i>ea@WYX%|AZ<>gNGou2|P89bfMHiWX zp=0cEZH)$whYa?3@HUVEW2K%t?QVg7pvX#zxMo*Jpu~9o^8EQ6-h^U=!xK{DQ$C~> zO5_^JuT4#PJ*5;+Z3&ZPiyiYvCfNtXrfS4G1ryi=Z3U7pO^;30j z4WgG0L_Z7Tx9iZ0+!~aMKa|1sNV%Zr5#AOx2Vy5B!NtW0EB|7JH0Bp(j-eym4RvQM z8n@rP+%q)hMM`xLvAZUe`lP&}NpU1H5#ONfM|<=ekVfc99z5+^YS}WQnkF=8H}0Ge zE&Yt$OF2d$Ko^G9Z1l1xWjG5r&J2yG!fZgH{8TWFWI6sNcCNHcJ*pmND}s^EHfg4`iRIP%V|@@98E~@V?b;^2`9%<7iva z7|ldTfamzZT!gnp@4OTTdPoQL-D&~)jsGrSXDmBi)Zi4^I$i3ZERx3u|&jKRn@AJ7QKy%+vH$!oQWsL;S7h29h8BdhFVj2Eon2l(pw*{Y4Y1u z5km1MDfP4n5O{L zckFs-3 z9v!f!!e@N?71GH26S#IjQ@bC13*84__^S4J%y)BcXw2a{gd7!wDr{7B5P2TRK!#Kv z5^NUM3cdrpg*X&$16WQci$>lX z-Ggbw_Vk{Kc)27uU5%3H1}iSPWK9H2tDWsp+fjl&Hq9?8@Wc5Fc>;=aPE)N%3$2EyshywFp zy{4mGCnkh*@n{YBj5aOZM@JWdD~}7VB$8A2u;5M_T-gC>1pJm{8#r+(Wml-Un29#A zQl>6vdEshwk7pW`X6J&4Ynq}ZIJdM$ohqY3+|L%|3uBUY_@dKoivMGfvb&?3{v;}t zN2`v-^((HOjg~DSwiv;p5M=BRJC&p~aq#HPx_;WMUI(OMYSQKsJE(OHQ0Xk?)?zs~ ztp;ip?}m^<<_OsDa?9A^{-x6~g}!FPy6Mf0+wZ@p zyWb)EL>~y$j%_n0GwZcMJOc#`!i^7*@i8(=dP7svQ7|gnhDbDM&RGR%`&ftbyYmZ} zg0YPxBrpYoor-ekD#Lj+fot@|<<0a?9ODJ@IWBKbW#){XcIwdd8rR|LNptJb89@a(Z$+IXN3Y z9p8U*@?;_B94;ORIhbLTP&HZ%QVd=vSrc|J?;Ekl(nR`Xyg149DxJPA$VizvEhY{{ z_{cH@jLp#@<5M6KW-=2t7dJD#0aLa@;!?Y8`S&`Yh8M?iqw+x`S8#w_J>VyEz#fSH z9iZYE&X*eyOnP`A&xLe$fv14fE7R2PrqdJ#eR!gEPJM=`tC6R)rB2U?+#CAmR+ zgP&A)$T-+CPXitFW5~jVazM=bdHWpoNbu+R$Xq45k0rujV=r>SYy*gp&-TX-Q1h=5AKzCIR|&Pt?`k!UkDYlU(;?2wox`DNBF_ zwNpcOn%5ehqHVS=p-fnfELIs2nVa)Vpih(!m@l9$qps{0+BIlDp+w_OPp1PO(O-K$b$Lc7Kk4EcZJMgm z%brITc9ga?U+6>d@RdFU51;8na8^ULU+9eu?%990W5cxnZpVft|GOO06$M)p! zVQfwk;C@1yFmY2}X;!>#1_HMzd!s_#O65Kg(W-FQY`EYVtpbl+3L|34Xb1|k(DGmB zk@~ptYtEXXq=XfswGj+TLID!)WL_FDY6o%;_F!N?QO=DVi~xx0ygiUHmEmyYS%pedOGDn)QpF-D(}_9RrAki4edoD>mj3C(=zoK` z%sP|LKmGji{>OhFQO0BTBoITTh9Wie8g@<^?Smk;hs)Sm&x5Z$RLV{}m;5}E5Y&Kt z=OX>e=qaWwJKR2($*I!cduopBx2 zhVD`YNK565rwg79e4IB#s8FZ5Y)duTR|L_yh+v*5@=VBiI4Ga=V15D<`>JyTb<{1R zqHzclsL$DY=LdM(;T|046kLgn)-UE8x^Bxz(tQY<9a0?1W^#ue9Q9vA{`!lNYnxo- zgWyzZ3ZkVONIkNNMDWyJp5M;5TiXoZx*>So5sL;27yoGK!?=MMIhoR0zmF{|U%=s0A$6DRe8bR!#(HKWvl1_x2y~s$ ztS!kOui|uDp=B3?D1q|WQ_BTyf#qyIf{O`N_dqbrMs2^?&Dh!n8Sb_Xg`hKdJtcwZ zG8X)hDt35Gt}d?8+G8iJ(b6%=akSIt>s4_CjPsYma1E|S)$OCm8ddDz<5t}NUCbEn zqt}hTSj+_-1r>S)_mb%q>Pj(GqkU*Q;ai?eagv!m>w5D1(&HrTKQohcexkXr@8ADv z`@-rrxSH7V7C~_=Lka#Z5A=ps(-EWRyph}3>V+9{_bVU`R+-o#ivTbC5TLJ&2!*`) zobn8#{$KIQ?VHID^yoX;`nd`Hiv&yXMy;Fe1DDs0vxdACb$hTXG{-d1J^ifkDowTF3TGWoM7t9+l5L(aG9Fk!9vbJAR}NX$9V|!Xj%)n%o$$vf;Gjc zUKEyj=BEF)*pRnSX$VM+99jxxFy0InEMCZOzNM2!;k{UpMfX&$8&RkT^C~@1=D7Lz zKc~;&o5A?~U;pR7y?uB87~U&DbjELkk1{kC^%(}8(<)Fa<`fbZ!|#yee^sxcHvdO%DB{OLW+z?=MoVW=m)nrgbRXlh!h4CvPF@%z=44$B<&E zfYh04mq;@anfIx`3%4c>2f1rt6=en+m3u6I(n$nctd$6#awC5H1V0TE1fn>XUB9sg zq;VK|sA}A2Jzc%>0oZSuY8)k|@G3Gq8KR^u$IuIzX$#wh)AW=)lp{@Q{?rB12pni| z+#mm^y@KZc>UuGKeGc{-eD!tZbQB^go=1NbJmOl*f-gJ$G%M~7mW@g9jK&v>0a$?8 zI@oBsZUGHQUt;iq1p;*POdTT!?Z!xAxBwqGP)yJvrwwRlizk2rQn3b?F~nJN3g`h{ z@;HUD#Y@KIqibSG0&3*dFj9hCwQVKc4>K}C;0y}N?3T2YnF|{%GuP*@!_q?Afz6eN zk(q28 zVh8Df0Bh_KFdcCHJf@^iS2kVE%BQmo5KQ+d;kB^iZxZ?fUNtDl1+uqAuAbxsO;$D@ zR$pjcYYX94$Ts7^tiE@65*$HuDk8d-!^XuqydUMx1}=bZ2O5@qgi5-rNVijO@pyv$ z;M}{luY3_WxFIm!;u-}wv&p=}cwY1ggH^;}!NNTjmLbiYBeA~DT&cF})@%3Rk5-`= zw9{YD`*oX$=_*Xytd(@Jpr$M_3s(zMcYa}Gbt4eq5{HVO4)#h1ZtwJ2fGdQ^1P=iF zET=kV>Tb`|EqV6Iu;Yx9A0*HtCVlmb4G+YJ^8F^T1{TIRa4|K*j9-uzrtS=8qQ86M zW{2&&{T^ARfqW2fq6B8GWsRibFxs$%B^YID2Dys@({R!!pa*exHgijrlsNj`yWjb` z;F}(I&_tLU!b?DXSHc7GEp4`4vX>$1YLwGNu&ODgFO?{FB|>cpj!_{x?Q@-9LvCiH zMor4OBB;6#on{-uGAvRCE9NpK0@qpG@NPbm1Y6wCEC@WQOLgdj6!~*Gbwbq%UEX0; zXAjtj+%D*;+M|R4XY{*4qAg6TY^W+_4aAh(v0p`oY!}K};2q#NO7?ks29w5mkY!L+ zU^B*W(1#zqe^}9_B+#mmXq|P47A$BDFWIn?VL2l*EL8=}g9bZ#=~$F1l>sP_D8vlQ z@JZHf#Nfee^So7PEJ&oMBC`CGQhRiRW(_1<8VTE?=sl1mvgZhi<Gn^!hT!2c+{~RtDG^`&?i(m59A$`$B}=! z$C;dkeO4Ir?>uAGaONxcvJYm&dWvnaRiywe#~wu8%jZf%PMibU#&tl**IcD`-}j10DZJo01<0sX(F~Hl2+Mq_vxs z`${Y_BuVow8%)br2%jQ)Lry%l|0RYn1b-qQTL^foOY_{-1B=X8h#_IH<1-{`?-PeYFPYiZhKhFliKLuY8%67Mp6MH+7*>~k^AgNq2uHlU3?f5(7mCbI zm#e$2&O>Mb66_8zsenTEwnHAp-h+Q24bt*iID{MA#Gh0;$*`+EMz7ip9y>@*++I}} z_^Z`(Q<0UHCgNH(D}&nDaT(lY($0zty-o@K_tZ)d909 zlV}@vGI4K%XzAy2kV5Qny*XeM#?Q+k4&bT-tM(+6*Hn-=#7sT+!U3fwukjsi{axf!$p_3yxme+_n!J0Fyb*DlvJIv0O+d*kIWt`4_==8W$J_l+&xG&kMv(*GP89No{=y`p$WZl*bGZ4D zzCztY(2LWCdRP(^%gRiT8ybUOE@!~k`_VC#RYCUjV=c){WN)w*-s-Ht{M?+u?jo2*T z&S88v&;#!Zr$a}6z|qM>s|H$Pv2z}jIZ6+7Goefzshb`Ju^Pf+(b9>~lkli-SEvDL zdGy3^@*sf-kUI0k=6I^p$IWOG?FRg;i>;sNr?_fU7tEJX9;R!vuOQXTp=RUlD0X@mOU{Bp%i#6?Rpm6 zAu+rlN>e?O4#|tTo3hDvvfgSqDqKNM%=Wk*unu2FRo8%ae33>HmmcV#VG%bGwcWfy z(#ntf?fw7!a{vDG+c)p_oBJQ`-y)sF(()y>of7mB_qfJj4krn=_)O{Bobj~uhe(Gp zaEJ;_6D=HGKX%m#jioHtp}_eQ7uG!i9iTqEyggR}9p!{#2izk5Z92)Ye_2*rkB)JM z)Wxy@>1%rC9wZ)c8LjpJK&|e+2d-|M7^~%OCXv*(H1#$YL76Too8k8?1CeHBL^Mua zwDcC?H(=slKEGSqTPf;XoKL7g$$hc+W^n}F*kW}vv@r>&DU-AT6Tk$thkqkvzHv>4 zGcmtLd+>YTsAF;js3E9vJ3kVJ?$Wf8)7pv@5U@xnp&&gY^8;XiN`yVOZdA$bAiS?c zfI9i2vL!~_g8IYR6pVofL%ND%pobPibFu)%6nR;>CZIB*P1jcnA0Vy``i0GjxtT;u z3xIiipEB@NsVuaYFW*Z@hZN(#G2BICqhPNnm+9ov=2}ErS2rJE8J*x&mJvk+Ye8Eb zdACzVjB%>-X4@Ra;0ArnDp2DLA(}uJhCVUw>!jK}L1Y zF3#J6yWD{QXmmziJ$s*wFEy7RPF(+-La8t_oX(>|0f7JVsg|Z-NmxTD2UkDJu_F8# z-Ov9yUt{LUaHWryzGUP^=}4%w9?qng!J3aJxJxz$qqXN|S&v zF9(SU#d`dLNe!YkEC2%M9WN)|30QQH#uSVRLNr+&BaMHq?Z2A(&2r1i{GMca& z>=F*R*eY&IAzwY9meXat2kE@n-+m7v6Wcdz-V>qN+SHLCPa86QSHx&x8cb!Vi6bC( z(uF5GD-CwgtGvn7q?898Xr3c8>An3?#QQT93aOPo8}B z=sTo(nOCQZ}i3Que54gC;P6!V6|pWf-C1z=6GomZc*=l%(A z=o5Adv9tOkg+%!AG;b?j%$mTYNrljYv|7^}D9mQb@hTovrz?^;>N)l=-~8qN%g;^4 z0X|1@j}`(nZ#9IgeQ*3v<7bnjXOpvMPo5k-J;T|$|K{mJs;gXI;bMXM3e?2GCYS0f zM9mje9AqKKp`tHNwUv~_5miJYw;-D}_HW^AX_EybZNPYt{j>c5Oy7wLlS(HECi3nU=TOZ{ML+8d$4SD;2{6jxZokO}b0 z-x`3Vt{suT6Ivg&R3W%n=)KKW*}b;+pBbF+_Wh4=?{d;#2|qUaVe@@tt=*0{^o$yw zZ3Sw!*y`h7lMlg;P(Ix6FSdv`1YJTX7Gk+wCx3I!vQ4pvCiXO-ysEfqvnA5SqDbA< zIcm~hOMTovY7GvoPtaUR6ZHn`6IiC(WHI)3x*TISFemhzx@FjaftG8F+`u{)tt=u!Nm+z<|fQWUHgGiBd0OGYsi z4L_&p7$)G&_wOsYc+wX>CSWra(qDxScZ(XlA_W#_Cc@dCwgOc`99gJv^-nGv&xN3e zD~K38Tzmc#J+OWld>9A_gdbE@P44>jnF=q;X%?K-sn0fdw-QU-pkhTF-JTM*4)P#c6ta@RTwX#w?Wz4oc30Rf z=X39Kqw#`YmWFrr!&$y>%&Ymaan>Bb1MI8LejunoDWORr0V*)C8OJCdg-!EL{*UR3UF+foUXm=y=Hn>_W7|0VEG_bGnmD6nhuW zRIeqkJD0Kzje0|9RHzB0>KgT@z?x4~?QM_3%~X_kpKte19##Cx7pQ@@yMP$3f{|N@ ztB0CYR7Z{slJVjQHwQ0H4m;`$Ky|-sNWejaX%Pb^^^s&7TiMTcNl6OAGyYGTa@G8%n>+S z4&~6($^uCL=&C!&j?R>n8nIi}rR3@S<+9d0MMJCVn8K_sHVYo6@)*HLCyhMb zLi7s-+c0vet?kwUse7eV+O{A%u!&VjreU?iqv?XWEvC`XVvK0P$PeUs2m3z403euX zPtt6xwn8z&3>99``883Uvg??N()dHCGaBWoR#At|Gl+JT9xY5OV0hS7da;`s%euwa znHaj-ND^db;{5`up*yM3%?+_YQGG?#ch+pd8AVlX@m!?kD!cjK+j{Z5^?gVOZHQec!ap$mT={)FQm&o`- zI42PC7;gxRJDWBSP(h*s#blfRzJ>fzTsN0185j#pFuB1_;*Je69SdC46|G zhl%T!MHLF2{&p-1tS*?zNa39qEiITiG~wQYS?_$U0o9LzZ;?^DySa9^3Q#Z5U%bte z?M+a^7mM{C|A*``6{oM2O(MGs6m)N(It-s?rZ75QPB6x!rlq<1Ca&Og3TH7OGbW0~ z2G$2Sbr~m=yGz5|Z{@?nk<>5~O^cy|}N%GLA z1o};%IygZ{^|%p-9W-{dG5z!woco}MMgrsLY>{=ylW=P%_9Ir^&B(nm#JS%6X%0+D zH;p`30~0Qsui+Hqv3?>z`GJm;{hpmeFdPF{5weH-Z|K~rYOv&RT-@_lEPmK|g!8A% zz}O|)!yw|jdi{*r^~boUP)b6^oy}h{oel(ZSFr0~$wg{A{gAHANL z&0)bc6cBrX>=s%aePmF6E-IbXpup^ zf;ez~+kwbymuMephLBgtvsFStb1J_8G0wvtmR%6;Bd;~(LArykZaonc0xd3AFvUqy z9E9LaOD#NI!c7=7mAS;8`S%+Ah-*{4sN%43k9$98+^e!OFNKvma(bI3W#(S%$4Vn~ z;!?5Fz&gxFbcaZ3Ty|0|ZK!8-cbCd&X*=q=AO;Ot=!!kTbg1pKN5n#|K|-nLD>^`u zLrbE(;iq;N6hZKu5Q+K6qBW;T={^y#&IJ=m0g+*{CjSA6U7` z?P}r7WOzzOS!B}``asiKLE%h=8+6@8*X(WbQTQ?!ifY5@Zrc;*yHMc`-zcKuZoxyl zaDxh$0M$=~e~;bOXxU}O(Fjx6*u=JM6sjP7ZF`Q)(}=*>qIUh4Py6{#KY#xBQF(|0 zmi49mC@cxvK{?0x2hJ&=gbvKHlENY1uBT33}=(g!BpIC5v*4)J?x)nrO2{< z&qOGzvlBcqUzB^GNdjy_D0kr{f2S|;?4E`Y$3I5=e($LUOA&l4k*~!2J2A)*tsIaK zBuwBfikaD3-2l|psXpA)26O1?q%=TRLrE#^s1^3GsMgqhtdZklY@m)PY`o#Ad^HBZ z5~gjFS$7;RGV{&tIkKfos2%_)Qqg1iI0(e!J0T_5OyMvN$AV09YHo}Wq zte)l`d4Kzm$oSibM6TZ!f(wbPul?{*j_e6|kqZdT7jHk`e);K-(2S{7ZN9)nNc|JC z^>l@>u&J~ONHB#nv6`X~A=jGvSw9ur>kRen2JME>oHa;kBl;X3i8n3cAa>7U@eX*ycy)Mn_h4F{@CjRQupv&MA8|_zmBBk2O(Ab<`vP`70PyW zwq~%4zS(TrO*4cJNZoDbZa)i+c{H^}F5j7MsYvldx+Rz4naS#Ud&fjp{*NCkN&X?O zKMircJ#)lf^K}8%F}hyflT$=XBNR@8#%y}LTu>Eh$)3;bSsH-hd7(CicWkXS&P&yn9K&H|snrCY=UTdMe#45u5I{ zB%8n`lRO7(Lnl4c&`BF};J<=fqdR8$u0eHGfHYFO8CM%l0X5{N@8J2k{&@fChd1wv zLC2x6ATXM*1oOoxDNw<&ZT+ewI(lZyVp452W{D4tBmmj)b=I5Q*&~_Sil1=crPv|b z;R-NKgcyUzR!5;H?|6V7Qzft?SbipDVSkr)LZ*Ym(E_$}x}VSnursE-^H3~bC`hQ1 z5x18gbZ`&WID0HZ4*LyRvKdid(p@W=3_pi)mn@7dOA!tOVF*3^(nA@trE~CDh6rXU zO-;)2xX8C>4L8qyQ_tc;Qj|T!m-Jxh&!y+45J8*A^xj;iDXuD^n>$-JbENj+YrZBm z#P;QuXj6kTHaZI|1iD56*_B^X@^e7~^92q@#llrTx+| z&KNjc3I>^b?*aWBLneY{?GQ`X1DX&GwXCuyWl_#e2 zqWp1wv2wXKf{na9yUiC=jqEv>pWd4rcyDHA1N1I~G+PhKhO=7j8l)k?)VI-u1&c=O zsL(GMXHc{0$u>UZOi>5uYs}NuX0*Z3#yD!Y>~gs=AnEwCBm%` z18Mk|GG#r>kP*WLi>J6>&x}lg3eck`bS0{2=2)v+j|ge}v;f(xbBf=RUol*n%&&Mn zQCc4908tcfi8@bEj6KHx^A_nJ7Hh>H@8#gC>S7pkQb4*C2+q5(*-!E*&oZGpX-T=W z3)kd5pjnvs#Sr?1CYJaY+NL>DA@?8Yvhu^b*$#`myWGXzCT^p`G!6>SimbW4oGQjU z8v0o417my43RhX5mrI&qQ;TWWifQAey|9A5}b_Dr&;<5be<*Z{i zAO;!<+tmlnZLX&%bsS*`y`MiS-hujwkV{v0sZA1_*8|K83-?@YLYO5 zem~+h(J1KgE=h->cl={|_4HJ6TIPw0^{dYfN0^)Sa8`^0)41wgTTM@H`Ye*}s6grt z)^!U>1~Xf&dqPzQs2Ai-QCwmCqBL1B&QVvIYF8*H0&MA17)=7j!v;|f?o&<_W?Q4f zZ`0T1KE`ED&yYrDw>-bL44jI_#r`tNb}+AT1rL#BcnyT5s~{6PKu=7+!B{|P7L z&F9Y_-~RE-=llJhGJ!pZVZ=X@&tcLDG$+<5j!8l|5*IkS!8O_SZ9rPjDp450Yx{Sh zz6GF>Ap3*rr7p+}G9E))iKd@xji&G67A$ua)+m4!SEahOYSSetyXk9o9iq2F6>3fJctL4-a) znvXDxq2FZB^sT=;l#84Iz5dVvjrd|KzfDhT@>+DluKAkPv4ajC4kp^jD6;zmyetN@3Q$@QrxOkBi`a|x z-ExNd3DB-XIA%%`zryk1;ZFLx9VgtnC+=;9Kj9-Q2cnyEXd)$~z)A|9RssqP$DQZG zejRracvFPMMeg)b<9_||?T3$VVN9xJ@8gj>J%=KU`5S-fPNdb9Sr<)1T;3WOc{BF# zes5@zf;t{sqy^rvgbq}=CgW96QHn1p9#%y$6U*5JYXr!xb9+~UXygifMZ9n=Q|w;q z@L{EwZ2>NoQ6LGn*l&<|J8Zm~3YV9Ies*b=S_*k8AdhTE4|P$G#+d*vch|rZE#ag{ z9o`1s!RJPPRQK=x^ZA$0$bInc!yEEKCl#zHpEUk zNjKPX1ZqNw3SSaxk734(WI*nsTlj&*Vk0X7nf*z_4^a2*qI=n45n%8l$bD?lD1wOQ z3CXzg{h(^Jz_bPl69lVnCTy74z^uYFCe>7CXMKG%h67!2(YS)e55jdIP2a+DMpq#WWPP{W>MjVqZeZm>hV6o=Tv?c58kU_D<}!QF z|CIj5CU>BE!+h`$aR68q$hC3AJ zMup+vF>1l!EaE{4lsFm)lwcGpGP;f@*T{I#N%Pt~)a)8Yt?QB80cvE5Pr(XIp)k^z zcs~r);3@bs1bRbicU%-)tP~^}u5S_fmzXAem|1Sy7l(T2RlkvO;uErgNi&|tJs5PB zu=~;Xd%*KS7YaNdbfCcVLH`LnN5$H~??05Tn==+wSg$tBNMI%dcOb3AS=}r9~*jU&w?2o$1bji8cuXglpMe2Q87^-$E zk@E+7xpHC*dW_0JJkdNo)epxJeEL{;=s3jgk!3m@yVX8gI?v@K!toEsP`^=q=|rK! zo6|k+6nN6H(lw#iu1m<-e7H6{h#ZJW*h5dJf@ODWtD|=giN;_RV4uHP$cONs*SrEr3s|%1}u)ZVP)M)Cb;95D~yqM2UaC$h9tFE>*ouNUv8J&v}0*9h! zm3U&O&3Ocm(Gz~&2UcvQxMP>a7LNI#~s~N0~c|cV6 zt8Cc@QEYRKlL4#IVdcYt9yUXFmUIR$S{ivshx#})Po1{+aqdsPhf)jaFGuD5c)LzN zO;%^eQW;E&@Sj=e0;}D#(_~khTwv<%90hPI4+9Ti3RR>@3uxDBE&=Cu9Etgaww(q3 z2tBrmSdoi0T3U^CHY_jNgrxymvNqgDBc;USNkDWZx7X({=KE_1vRM5t&>q_+x_gx? zn`OY%4J}NNrw37CGOo6H%te1QnS#AZi80{3$AZvp;=~g;=g{*_Cqc;>OgNkQ*+`EX zgwf@CG&n~e?qbth7Tme>pjvded-Qy>e?EV`pS?UENg85#QCX8y<&BZ zfg**Km0fA|^q5Gh+_qCDj(A9OtD|bl@~H0;Eu8?t&7d^t&bozZ$31NbeWu&gSq(s4 zgZV-d_^$6>1G4Wz^!4I%#aqcQl%z4x0JsRsVh-U+x_2mBx5&ET*>NM0%!cuUjb&JL zh>GTuRq~BPqt4$0`-&?~zRCrrac-yYse^;!0AepF&<%prNeTdD4kW|xP~o-KunvCj z!5`euR?(@9QXbM1e>0XxOt?HIrp*BgxGEwI|%ehdXgwKz)dz|YV|yn~uO{jGCVZm3K()o7!) z$w=y0(!T?2Q?@ka=lXSN74a(w=U$j<*BkZx78d{;8}*EqtMTX|GRs})cW{0N1G6mh zJPLHjDe5NvvD~G6f&SpZX&)r7{pI=U5jZ+}lfk%wU@9DuIg;wo9}LeWygC4nRGpIS zRmdLXEa6^3pUlv;%6~2?TTcd*tq1y;wpFLaLtF6u_N;e++A-rhE_c*iZ>O!XuLD#6 zg5+Uz)DB8a6&n_rL6~B{{g7$U8@T_tGdRGHUD6Plam*W4LpQT8{LPw{_EJQTPKMCL zH`P69a&a3ubRkp|M1D_i>2*7Sr&&dp@E{Lg1EbarjGKl19peXu9;}&6I!!MT`xuGo zB(meDmZ%9#?{l&ZSPQ6yaI8PH*#WAZoqYrE#LH47IHRhA2PQ!E8=g4N7cyE}NZME< z-QrnOLP1!u$Doh#?)dYnzJ2HqVxl())e~-KzNr+=HHIHL z+{|cpDaMG7d9HxEC?03p3WB5YW|^8?BrlNvrWC`28*5XHqQ8c=M*Q}Ey6KxhRP z{b9XT&PSDEO>*oLMs(-L>Zk517_L*{ou1Nr7c9yOIgRY^5U?nx+pYv*w!=x*M>ls1 zF@PBs-KVfLH8wJYv&{)~&XwNsT#*Ncifnq~<`hM?+Nwf7cY&~o+|Z}6hjOP_?|9K8 z$wtow>2N2W3SxMw;zAdkl)_yNF^xz=np!-cK;Q>?EV1)XV_%2Ec#e+FBpYMmXD~=3 zS{Z)E^ij11G!;gyU$n~B3TL2Pyb4}oB%^44rNCihf&~f9XSn~Vq=8IPRvgd z2?CXdtp({0SCWYZ>O}ixCCs6;XMD?)Fh-Gb=taLex7V^LDn2M{9ql)d%JMH8inmAgv zg}vG{r)D*sS446uHysDy*b%!67Vnd+6T&G@Jo zTM=S^2Nf9o$yJE`Z@J1iA%j<$7ZS&L^}_BEe#rI53W(`Hw);9Z6M<)ch?eGx56aaJ zRS>HNgbm+#4#b$k1LfF;J0z}BQjOHE;r;NN_{x5mjeYP}ILilLdx*ERvkpg+b4I?H z@VB}{0mae4vwE!MCRx2MCAG(?DaX3gNe9T-C}>NpR-%(CIuw-Gz`JVrWAS~kg*}{=! zg;;@UYETe8Uw4DQ66ZAlwexBSZ0zo>V=MNKgEp~a6xN-JmU^&AmcO4V`5;rd)tVmj zHCTt)ZgokXX@uL~AyM$(lR=3M?k)rUk$$&7}MK5E)prVAA3kdtt z3We9E1}DVk=~=sSY75f`bu>I#c&OsZaB(?HByl$mr30)V0*aD{LB&|s)X0V$1MJ$E z`kSr|Ti0!)IJy{_iUG^jzvwn9|v1Q zcC;i!-@(sGyr@oqw!tsPfi9Y?6lY)!!P20-Axb!mdQUX$=A?J3^ZktshZi>&lj@1_ zn)Fl@QNcIC*ld!i{f*;)zS*3=jyx};rj^8178H6iqF%;RM6jL4&f`lXW3T9DeuQ5` zjbLQxuS$r7F1jG!6=wnl@lm+rNHZJm9W=%6-|N4AT|%hD-XZ=a!L>;`?Ji*t-h={E z_dJIKG_%emcX(uvk}>bptrbk+a1h{^)BkLRlA)@NVV<9gK9gLIY^ewwCe*< zn~bYp20cd$Oq1c!*0r2Y7k0R#g%B)k`1!jZKWy*c-T(0U?T7b>*gBs)IfaRmkn778 zxJ2X}CHH2KM{=}g%@ukjy;w%&V?I6u z>b1IiSkZ_<>yh*%tAp0K0;}C!1wH8!9viJ`qyf|mT=r^f{Ar#VftJp zLON^JXR4tAJ2|eM#h!~UPtvX0kTbkagJIDgl zAd5VKkE8%>-U7;w3r>o>$ap*q={Pxpvd+bJIgjx2)= z*mf%!ltK?>N>L?exgYqkleu08kbi-78GNqsdQzz@m-TsK@je4xJOm?^;DAL1O2b_5 z*j;>JS#pmCt{K!fV-q{gVJ)>aDsr2iC;*OkXA-Tee*z!rGLY-sUO&fX^P{CzKA~5r zk#3y``1J&;2i%=jvYsD2dr9(c>NY0ywDUUvdDL-8$8zA}(l_q>dSe9#@COITg=z~9 zG(F1cAg9BeBzRy!D8c;06D;Q`NssmJ`s(%m0?BC_lUmoH260c{RRR-}A&y}&cR`1L z`XS+MO9g0-eysqFa}Z?u=Qq!cg)j-=8Tk0Q#Gk9_p^8MhR;JVqZ<1)0y=4|EhW`Ow z0WZXgIt6oSC3n!G*zLs8>ji!o#4@BRL^K=Adq90m_`&#kXOg_3F($#ry^QEPLgdP9 z`&5u?<#{~Bs3U~qR?qS8B~!_`_{B34OyyuljpfDadUt*~he7)m{~fz~VCSh55JO&2 z{AKKA5xmyJWoGXXEzOGOU^YeJc`tiMKS{Y@H4i_2_*rLuy@9qF|EW_YITpusc^!n1 zS&Kr+E}9RK$wuZa{jicD98X^1VlLGES$5wUbG)Lpp zCOvkNpHwLln))c&nL_Rb!?h$5>2=*V8@|K%MFcI`J$}gV9!2+ zZ)6CBL?|tgwR)i4TwVBbr}uo*O#} zIgUeapbpddtm_N`;c8pF(zAS+gd*OLt^<4SiZzl`6=){r0B?`qx^H~T_D!DIG{@LV znu;e7e6+Nd928S)s;Ec#!%^bXf)9tgX%(`}QtDnGvQUv>arQdyXn4}swgyJR0(FLE zrgqxOKm@TAiW_7OgN4;B0olhUpKn)Ay{UXmegicbOG+?f{x;d~`5;SWUehsK`8Do3 z*)$W0>WbbC$PW%@ae>-mcd`W_nI7*&Ix9U`Y@}3b-Cq!TaEqP`_xe%SaX8J4mX_D> zzM-0~ex!x@h>0x^1zq%D;5?iWmbZ0Vg;{yD>Ch!l7X6qxExCcn8ycpjkt}8jPunP+ z#AfxL02Y_wU-X8)DD=)SOmYS_j|r`s;#A>5u-#yDE-EWr9+|SH3=vm1_tY^gI*T&)7~^$t`}SYdbJULa$?c?HEk zH;J)7zDtQM?Di->Bsb*}Q(am*a=^<@Md4F`H;OCn-8PlBhl*S2hCE?gWC<_1ZtO*3 zwt`S#k+u_P?C_I@&!7WASzTd6HW-yYH}qhHVAzq{kY+a8~HTjN^%x;Grs-P?_Wv)FN!lH1^mhP~XjS@($0) z&O{#n0;tbgZ35CcJXG&f;Bpkq;50pnRBiI8Nu<`IPOuAY=!E8H6e?oaqgChcF>!p5 zkfUA=kj5d@7%8|U=k*-V(^DZQYAh(VRQ-io`fXektIH-=Osmj_A^54~`Jw8}kB_0_ z_ViF&#%#1YYMv{{m1m>>gZU&O5b?@z+*+#Q91pSu!xz$G?U^+%!TfQ`mW6F3ONeOl zct?$K&YG3_AObpS-7a@G$lVOK{`DPI48)7^F+OU*F>2N_LfNh~+_D59`;K<$l&~!;3KxHY2TC3Z|lKGg?0_wG- zpZopSdH^*ZIR>m3-3DPMH^fJN$Gm^V`QXj3$tkp7fa6NZM3WNH@PcpwXr@&uby?C& zD{ruGRCqRp{}_4pGEiov5l@UP&kX*x+5q!MP8pVvyn%5x^A~V-+&?9DFmE@ee;({p z53=dAoX0WRr3tkcIxYDC)K|L@C>%}rCOkyK*u&IKP+rs=MJ;L*FWSKCu-(&Zh|xjT zXz?^|1K~DoEfLuhsf$X+|c~`+sRHTnsju{1bc$ARd_3q|K%6_|9)?q&Cb$AuYrY+JrRY2_oJ;Nf&A2yevqCTGfI=$i5CR$t)ur3p&>)4jAWW&4<#Pyj9tn;A zl|}{&fHS0sNx(3`37xkAWEr3zvJF|)9QDB9o)My9q06HNy(ft>Mu_)N(c*=YTQ zUt+X_qYn}d&`}D`f1|rQ^}<8$?sz_!_yo_7!GfS}9~J_sT$nGozMt)3-b z5^@EWgNNFkN2dA7<~W2QB6SSdYQ)7(Cc72Vos+-7{}?Dyby>bE$zfDm!(RNKn^rsk z&-Eb6*ub3$>!M>1&xesAWt5AFp}j%cUtr}d;VdA;1=NHGD;heZQqb+jtAnhzs8p365+@$ce?1`fJ7-xCeqa(s)TW zpzXV4fa}ZEX2vNaPaYSgxKMWWwH=_wq?6$3*NFA68ZcDXUTIvO>~BzkTwt1>x*I0qb{RHfck{IR;yV-K34fwh4~RQSrDEBE5wOl{CT1M*@6NLzGcvAQHNlwgfc4!w)YWz=p`;Zf-v_H1 zIb7|Ar!ETawrCbrqXMZoY}8({;#f{>q!*$8s){dMZz{fU>UGz0Qpc88>VY-b5FBnG zILH~5QUn_sYSJya83%$SR5Ch;ot-QwslfHwG<#PW;+PfPM8Bdy?xYXsD4KJKN4l7E2-Bdl z3VEYcNUT&3hW@HJOBU$#WG`-cKYI7!{g3vaFYiCS{gLUPSWnk<$Vhb^4lew&o;-IH zAHMPCi{LpRv^6f!xQ-}V>2roxf?ttJviN)6+#zM6();Ty`j!uXwOqm<7D5j5$<_6& zF-!EJdI`KddGsde)Sp#_k87xJ;3@4@9w!#6)&TUq<~(|cVjNy`3|5cg(pfw)Te;Bn zE)t&HXy8}-X>+xoVrx69N!%d}^4C<7ylJM9?5iRREEJ!-<%v2)Dpe?`B>G#p>=zs! znypcMbyI-=vr4CM?38HZ-}$!dPw~-+A{pgJ_OYzn=1ONV_%A zuQFcXL8&ZhE{qU9xv~Iin#7A#0nArZDC8g4CKB(b2r9ALmDwH+I_z}P_w6|Iw=o&3 zXXc2x@qQU}dgUAPdPNS+QifP6610thj>oPp1A{tN*6{EJs}J(#$Z+o*oH?_Mh5wW{ zhO1GM!;>*$$P4QvBF84Q_kaBN&-Xuk_<~|>PEY-!AL^x5fLulqFLVUE&FjaAC)>QH z-7Ee=dA`y|!2QbwO1dj=q<0?b!g}n+X{q=lQ~^0pU<>gbf%at$UAdDD(g+v98`W;e z<;_E_q7lLx6zYxuWB@9o%e*FP5kI23Iau-e7cYQFkr`TM_>4I35N{fBi~?Oo9mnSN z3TrdBZP*v6z%)Z$HM7+Y`ndI3K6%+|Y)lDUYa!qam$%e)PnhlVV6W}n z#hAUu%<=h9uL*mdjUMW?nPQU-ff#u$!l0AT7G_7zb$duw8)`n!RjXYo0=bc&($of1 zCQ^>6`PxoN-!1e6HarLF=XCs;XJhyA?T^d%+Sju?DkOOKsmj9|@E^HLaB-u7L(MLw z2D=~mgB?OOaj-)qVLjLZ*^qUs4tBtvS#co~gP~~z!T~CAc~TU=I4ibnbqlM<(JZXT z?p+!!t+uEx%LY|lS!VvMq)>%DA_kNROlbjOKwvEcgucCoX+zrL3iPLTc1m(Wj0%Dy z%`aSdpnPrxOl_e9lfIpgVMpY{6s4w8vh9pXBrRku>dY3!urBN%XXz34&RGU+lvI?p zK^YLXYA5kdG_8l-|6{`@1rHhia9dXd1kcyUMm(7QLMtKBnz8T74!(W)9SshRm$?vL z1J%YhwCybWQ)b#G6|NkAwA#UJfViE3AHhLOa)nD(n8*WiMed|=7>5s*TWtN1DL^pw z<$5vS?#q}~z+fJW|al@kvJn>8;9&Z}|gLvXz)S7``C5LWk)Dy?|j<8O|So+dU%&QHJQ z0mtRJzIZ;QJ};p9lQ5p3@HMps`_b_~og7WhCdVhIr^jbcCTC}-_rE_rTiEsUbS*ZU zV$0SV2S{Jl6L&a~ykJ?cc+J+E2%W1Dx5$*Nd)P^Zn9tv9~k^t^&~_CXIXi!@ztk?Zh&R+pzE98fJPCI8z8<1 zrhs63z=%q+ppPk4c-q02Z~k(B_p><%yPWnCZVzr0pxzN_fsjmZIbbb;CK%vrzkDM}W@^&>HxD*AVv5F2wDKgxO#*L=~^nDJKmFm5R zkIkTq){v8p-s<>hd2G#z*&%WBu}PYp%RL?<87*H%jzh)}ghI6NuEP~srZx}Xoc z61xe^wrwc>0&*!BlBk*o)X0>K4y(eU45!?m=xjxbMj$p$Uq-lR)D@@$ez|XMkse?oOns@=(Cn9y zaWPuH7!f#GYAL08RApW3ENA@Oh6$>=j7$U4h(*srL7#Ncbh4y|2(fMuvYVEMMsy=f z%~M#e_Xli^nqMFs{2WQ5t4wG=LIN`2c>PDi>HeNM6YmoPjMJ@23QzVhI?`3DtUMGMclW<+2y+$%0u_ zUV#aj&R-y1xBK}OqCe0<1N9|wWnsbEgQ`T2E0wNVPDEiXdmuG&>Z0Ex4v}K+3Kj*PYfsSs(@K65pqoT$B{gGYnv3s6|_AHuyy@P&% z4QP^|W@h{_D{^YgxKaKP5qKNPu)2D<2Q0@6Mh-V-7tuTzFrMNJ);nuiZc*Z~k zaot{qMfW<`kW7Y&P{(L#db)sihur2(7EVE|W+XU(EP$f=a4o0BOG1(>fADmPM-rWP z+qomMQsjcT4^HtM6fv1&N%N3*kd{pYP7V-OU_CLA6FGT+DyOi<@aPAJxF+1AdCWHy`j9!LF%Prwh1cf# z)^4BFX z&a$Y~g>!h3K}*Xhuj~0MT?B*!PKBkxR@<+ze+zb>gFp zV!yLK*u8UpWnWD2XoS!_n&@x`ek4ZcnsHZndiF44e9H2?xU|LU~~k`WrGz>*xsSEGunrBrR9m}f|VoKxc3ehVg-@1Y}d z^F!pv9>n7hyz&qh*J8!22hm^!YE44TxP1w6wHS8Q5+czDT{bDMNRItmm_8?@ z#=|@fEwynl9nKv7m7UWuMM>`2{U5*l2;X%^LhP7V*7!1*!9YD37g=U20j{PXZeW^3 zJ#4&pv;T*u4F(5aXXS>z2 zSU4q}VvaOm$;IrBJR^*yH@-%Q>yy0=W<{s^?#Jdfwh0x^hJhwnVC_7on*^sWRJ$%L zqkUES_A;2G$(NM95UbsD1*b+z2@jB`gHU~rxMQ;b>$bRACnY;~B`Odcx6wE)NFRwk zM7(TIVcNpfoy-d=FPeld=CQQuhC@Foj|cZoFU{J+T`;l|TGva9gKeyS+~cE(Cotft zjXVe}K3Nl11**U!{e;f<^OH01IaO!2JzuU(Z+1Ndk_Lo!RA}#)FqFC)$SkWz8PS`7 z3m$u*zA2y9S#HPJ8^&vmgyu`L_HfMJM08V^`Jt?s8oo!1JGu*O)Mbkik?~U67$1?D6!uD@k~#J(r|08-31G=%fMaGnUC~ zx9%I@E2NzE1&kn+l#tN9y>43H3QR9lB^PcdDRy%^;w#R4wLpD^7kP`1K%wdSFnk2j z>UY=hFkIe#hm5`m{kq(&kX??i4}+W^Bc6RRLuorZLrh8+M;+yc5KQhxdqzf4yWNet z*Ee8t2#-Y&ap+b}Y##_FlsM1lIuKP0%XdIOpj{sfK(yz2M~ueA_Rn-u{Vk^0JkUeQ z0E^kLvvaKxP)n|`g=151^;9xg;|2s~g|hrH=Kp}GpTPPFU5Pa)V9%JDA?lifAZF(; z+!32mS;(1$wic&|bWjA)Zdo0K$8hw4*`zqA=%AYB6;&SN_?b&j3)7FA)}BFt3O2;2 z6#W;+{Q*Z%=OSIz<=9NbqstDrF#W6$sN#I-n%a)Cg{ga{vd18^$4+MzgV)dlPUraN~^t9o&M`yBT9TSdp69Wk#Q(12l6H?{^k zElvAZ!-LcKaBpfbzj0uW-|0SC|U8*FY}|L6H85O z@p>M=do<|zHeqP5n<6N|bWa0n*3w>zH0^lm8NC@DGLKe_Lw!DyO zIQ3ksK!>_5(CBvlVs#4-ELVm5vh|^QNf*(55pq>l3As&lq#1k?##HFj&B-ceFs#}t*J*Q?tB(4 zZF5;@p5IZ^61*HwIg&o4V>QWTiY=akWm5G6XB=RQl~gkX^OGp%Z4zh$PKmDC~whW3rPW& zR^zgBh7(W&snX)b9fcS?grH1z6^a{<8@wH$1%SqxwM z7425vDi-fNq})mzl1Um0Pi}GPa338<-go4C5OqZBj>xvbw9G-pf zwX3-jtgSv6%-Q}9!8ssENVV8x9~7WIa(v@)^j!{F>*3PnL}&mG6XDyofFGyp{&>7V z=5btPpg15+_h61q%>XdHQGjAHJV$p0n**=>K8{wG4fd+I`0CQJ2s` z+Fsy+*IR~mR2tov(sW9CK0O{9MTKb?>9#V}>iVKH@IG9x z3H9>6)7j5eXk^{Lq+7~9s7c#+tB{o~#%5}aQg+0oKtgWKnjTRb?yCejA$cfG>OpsJ(5v?SnWs%F%6x#a;1-6Len zGRcfjcPj`rp*}A8VIr1D?g$-X#b8}3T~L!)zb0pdEnM~&^PBaqvuPb*-RLltgH=_& z$Q+!ho$hw9nGqA24_Z^xxzKVDyH`7Sz*S}`p4bL~sfS-3FwaX+CZ?(66}=-Xx%K7@@vI=LaiDC~>TWeLyH9@gpWD(*cJ0d#f5D8ycIc zA(8c+=EIK7zjOjCOICfV-`u~PUO^$YLlPvRZ8~wm*X{1c?Ga{s4JvA`j($HIZBjN} zsnS_90~98qjkuyutx!Jmgw zY`lMY{=B>X9iSH9)A|FguGn!%xQyNGD; zvG9xKQ=MW6tq~G(KQ46BDrErjt7MOlYyX7e}^2OubXX1TiSLxjE4ACd3ubZu~ z2>4?<#$UFZ6dXw*(Vr|H1;X>?SR~ROHC8dEMJBd+>c|Me)7=N<{z57cD=>JJ3ru4( z{TfL^6Dd+3*F`YuKMcTlD5xUwB`<9D)v z^%BpHVz^R)1s$mF!@9T;3akY0>^%5@kEc;Jou*M{%H9lVq-d386ZMrw+P?;yM>RcFX#Jom1*^|8FTYiNRW1ajR#q0w%+7PQD?}eN zCK|TEDN>N*iFufi$eUyRhxdPe`(s;8Y--O~Ol-g3+@jd&pl!MX5iZk7dqS@2DAJXN z<0nm0oqv$^4*j-~2btMcBN@Y7y(3x9=~${CWGo zv^n4kd5g`n17)0ZL!;q)O9YHxz=`;1f4-wL_iIB{Sl!3~1T4IRe%;Sn9JLO#u8ild z8?=fRn7SKzn!pKVy??%h0k8W&gLG~Yh4_GYZ7F4r53;ipKp+1L!X2%ovv*-Az6ech03F``ygqX z>EJCP-BTgAsClr9e%1UMzzU?&caTOxCLHDP(t-%ejoadC0;^E{}O4h*~8T$|qL zaY^+a1)K(Ta~0^52NF3xK)t#kX`8&9&7_pGAwMrx{|ZT33%7r@k&~LD_R>R61EV)% zE04smnbpo+aCpdiw~e~xMb^p>%NMuIDLnj1;U(i&hAYDtm==Z?MI?riDD4?)K?&JpIjf3^G znv%Pbk8(plst2z336+QBBhP5-s*PGw7tc+-pd>xW*8$9P1Di2?rgtz_o}He;Ux<1v ziEk(~2##P*qY3^$RR92uHJ0>zGrck-;fjDk;#pvtQsPmoV@y{RIM7KSpxZ3i#_NM_ zv%r;&XT05DIIzsJ09Y_d-U=P3d!dy{{h1fys>AL95(F%22+(Vm} zx9*U!J}{>Z>`;MeA*f!4FFW-&GwG)+1{F$QUbWTq)n>i`(>0eHCB#eAfqGmS6r_W! z4H&EO&S3Nqo<|nDZvQZQcb^YN6yZCA0Y!Mucp@SsrAcyq?5O)dD^!dh%c3M;kbPh) zq=oZ^AQ`I`OpmckHcWq_j~Ws|3|bS9EIru)CzKuxM<G~WW(bVwZ?`J*3*zw_rF&k?uYqEZ%|Xde*+3gouy6z z;((@QrHrOzU)j(C=?)gpvHrK<*Dsa4gbWLrg#Ka|>IAtmGhUTzqX9LoQ6f_7Tl;w$Z zPjK%#K=YN6Pc+yR+eQ+`Y-(jLWfYk0KhpT5D21B~6nOByLhY2Iqx8^ABBAw*8=cwk zVh{Uxv%S1J4|fc|_ckf-8RZb3Ak%8On!oL%)p5=Y_8mKxN57Cyw6_vWeeEvjHa3Q^ zb_-9;eJt(yiKvE0dm7!lFmQNVge zp%jGX<$y0Kj%gn*E7tak=oE$;nX709=8*+ODU_!ZgB>W=cll5^9~iIzR4a#W&j8e< z=1>QQQ=t3wm}*3ql%6Xvh$yXNi8GskVaA0KCA?@8SEtAIGf+Guh41W2`VaX1?DR2Jk7%8YuTJ)` ze_~uW18&utw&ywq82(v}y z%{Z)vkrF^1`Lv+Kg2CZkD(sk`wLm^D1EHc%}_VY>80mt*_y zpLTD5_={)9Q%QxuU-k*aRP5m{J-?lLYIv@lLF!e z`^CG_P%bcWbn-QVFQvupPv4^z`jyH#*NMXN&}K5fCpvUSmEV122KfdIr|g)Ql_tLM;G3-gYdQA>>eHOJmem&8F_%5+ubKjyOsIc?IxrK9&|wz5QpR0p27yC)fRFGtHtQp zocu07F9&vx6AWJ*!;s2BURRTJ3TmTj_vGcl?|t)a*v9+m)Dand4!#>Y3!#IV@^8*A zNGW8f^}#y|8}6gQRsK*Egz9^6i%p&H&Px0(Z|Kv$WVr0iOVG4*p6r%LlNyBr>^d1w zW0H!as0Lrvx83%gO?3L5RQClDAN@!ALZL<5n{AUttN~~$7Ds?I3&ybzXe79aJ-BfV zDSjokC6Sg|FU)g4nKwA&zt2kD;p2&|hErx&+eIs{2l28eEiyL)GyP!TRCOG*8MbOT zbS;T)2K8~d!=M5#cNo;fv+Z@|xvOx5@!9Blg4L?QF!M>pDRPoP%hv!5`@9%6m*6Q7ObnJ z-j$;O5(W1$q*Z9Vzg8A~Z=;As+Z$39bV-7u)T{iXV=JSqDH|_-h z14L80B0bj1(ihwC3iMOMD>B@{CTp&aT{DQL8X!&7cR^Z&L4P#MCT7uKwvf=lV8fxG z(FH3lA2kF*u&hNUO}MxNv2mJe%3|Gs&x^{+oZKQMOO5#8Bx=52NGxFjl4yO zft=QwGLi#utxRAvnOAUISv9NRwEVCPN~!&J(;KZzGzt{H{9NS-uaB1Cr0d}-fq%EV zw&v^r*e{IEDJ*-L;vi$G5eGBtbb;Af;k3tM0DwFzX>Kxd`jwmAj2~1fG zOZ_foUu)rloFk%4NeLkAXE0pYzZo7>8QSH`*(K5)jCxNrF&E$Ujx8VTHb9(UAzrZq zF^^OG9$3F=E2C5u@|i6*v&*$tk@Hpq+~$i$BOU>B|E5Eg3-ISHxM z6f&Y9Ii(DKsn{YJ*Y1K1_BnmqnFIKiRUedirZsR1fn~XwK3~}agOEg9eT=td0jnEU zDam%M4oFjz`?QgA6P+8E0WC>eJ2QIk~YG#N)kivmn50 zu>5{a&SSxJ6>HN!(-f}oK1DLl>G@_x6nnQlGPkbYV>>CZj=>*`+=)%e^@oW`8ScOu z1dukY>^;&4jF1HN$(JQ3*#FL54~V z<70E|p5Xd57KYqy$IWK){Ks?cWZX6#ul8g&AaxdT)Aiz#kyv@6wFL0n8(buLv5hyuwkx9pk%2M&2okljl^QmN6`3T z2jcC!&-Wiy$9yEryu4-(GCk0Di6CD5=}&JzOm05BfBX5v$D|ZBVe91vn#x06q}*Wm z+pcKDNF-a07|;R6r1NYZam_h{Yji$mwyhFH;(AQiD`cW{j}bO>+`uZpkBp2S`GPZK z6Ge`f)s3@@EEm|S8u}RbdAXYAOZ1GM$Lm)s40-Oy9S>Azo~oI<~WigOO!vQ?ylJwD0Ppa3J;R2 zxw8h;1E_91id6-YtuJL%H`GlNMYi!FQL~!;?f0DH?hziDSrD~rwzjuT0xQxZGb1BB zJpAp*K<=FjADuwzsueL$)JdkGWJ;l^IbSZsf!a^afbK9aBhR-*2A}k(7^Ty79aIjhy8pmZ~4#)XBW5I zrSj}`3>v_B9_l>C=B5)?}{vNQRjUT)v)Ky5WEpMC>b$6ya zHx{Y3H9sVns`A@ONdX!{nafWHB5ZA%Dj~`|O(dn2s!uqD=t5RYA0TZhZSNN^-x-t3 zY$ztFU`xY47@jh1)5gU}Vb&96atQETHu!Wwy@K{xqDGL4?gjPoZG_wna31!(=(MK+ zl}QaYD!UbM$HjGZ)ZxzrJd4d8{N8cR!mW)s6*=AC7inw7$QPgSEq*hgAv zMY2r#;Z}sKV=%s_)kA_``O;?c7=UZyO>p3oK|(>d>l|eF6|ga$QA-Yfaz{AEls{_)5i~`||V72I$JU1Y9hI0Tf7Ngv#Uhop8k^yAkVjeE0 zm|h~S1qTOJr|)$Nmva0&u&?kkZGZO`cH!MB8qV=WlbI0WH>LUQD{oOBYRn-S09c0i z8gP0r5eU%Ai=7>0&Qm-^eUyWP^BFcF2aFfbU(r_p3=-6BoCd+{9)2Nr^k%2J<8Ikw z-IvuGtSoBZ9K;Wr^y}|`11*$MIGx$@`UgI2!SQnDn9GkRm!$B`%kQY94Oi37lI`!O z^&^pVlie22n_u6qe@MhQqBN@X;fj!wD3g(loT}JJG_Ew>Hw=i{V#>Cg$Yo|DbXI); ztbu9&xLtD4Q@g;_owE-$2FR{wdAb3+aut~}aXjgKT0j_dcb2{$q7M`v0JXKYv@Qde z-$|sMZm+P>mYdmp@shGP7X=<3eQNixB;+(oo%9*?6p?Gk9w*2>WvqD%_-tUExJb-7 zgQyQ75F6GY99-&w>nS!vDyMV`=F*Ne^FASqcWnG_6fEe2HQeCLnO~?&09%;4&tJkT zqw1HfS@p|Yayo{x2yq9C8&GGa=yxGHrVP&U4Mc&(o9EjX`3V^ z?wBPldSJun7i-HdE;?;W74008MVnXy*!7_eLWWq297n+Y)8TkBlof}*kr9cecXwUK zKtP%C!g7y)SDoZ#z~P3RohuEo66PZ4|872FkXmzWx}4;PsL4tC0AuJ-@&>C7-7K|! zVpvQEm$^CcL6{&{`mmuyf|sw~{lv714HQZuzm9p=>~_Kdow{-GLtsgT#^&E%mqZm5 zUwKmDfYA`c<`TY2@HrY0PVXf2$=*q+i%pBCo^<(I+AliT9@gA+MBR(%pVZtl}y`-|S!PLxTPkO>_NOv56PV5UN)D@=+VEx-Al zbf40I^bpZ3GxLwzA{`CH=V7_Qfwp_G+$>>iA5D;(Cx{l5_jfC_zGlV14@ zkw6GPrC#}QAUHbsWvJu|>wsIGt2G`N+OL)Y)LayphKBPrWu74aXH+3w)HzD$AmJBQ z?@7V0YIC7{Gd^VbdU9^aW}@7@%@uB1+I#2>jwnJYkanXclq4C1s=N5pytkk$#<)RJ zC<$_=OVv0jPD+bkp6{Eu8NKXK!i5M+Fq-&(2&H&z(c&zj#(^r$-dL`7bUR2>jC&l- z#6JxR`fh{PYh1eBg0phwRL339Tq)t9nRP3PG}o4KYIm!mKV*i0KA-K4rj$nJ8cm9f zAT<w;#rYfK)6F2>RYq%80wjDZe8n6* zhjh_Y8^Y{h9Eg3DyI^-kUPoWevAfnNw*sWk8g3F>1T;~id;$qyC}lsK8Zw|7uN~qT zVu-z5Z0v!eU7RfT>J|agGe{j1$I^&!U6^jrhnl;V3#@b}Rosgb09w6(CIetxN(<$| zLW8sDBtNP|(+E*=8{FKkug|hhr^hG*wRykrW!04Ho~d>hrc~k`KWXlkbv;% z(EV^hSA!w=Wj!TzbkyYP@7D*YLGm2iF)~J!OCRS`aVWMQ(L1D zYSUUz%06jGM+a0Mslq$3lMNBq3R8DbJSi2oulk9ETbQ~hq=U@}tVGH3=q_pl9dsiJ zUc zTVy>wek$#NT9=#UvGW?Po$x@}Xldv{`zOq~W|qX($KO(kGB5e!6AQupdXJ)MreGkm zg_(Qxb>-*Lbuf+#*Z)tXkCM{BZ0}&{F5$K+!O|ma`cTa-XWYvB!YnX^unDLegb8lT zF4*ULvW2NTIX<4?k-k|>U%sFZ%tj;|lq}p$F@~S(ivKT4h8f2yW|a4AkoM%n_W6&S8O2 zbCE=2Ote2DXMzWdlcmr52HL=Z$ApuO7*FX*;h6rFkw|o5caa;i95cpaBEiv95El)E zb0f;rUfsSNrKYNW;F_4YjR{_pHgjqcye9U6!k|b1F&VW@p-S-FD|w@Ewp_EB02M8a zCmR&20;JALm3TCHh3o|gRh^TgQkGIptf!oFp52ti*ftCI&mZJx3d|ob);3wGx?FDp zLF^)%=1y-Q9>)(k#Sxx(Gc-@8m-NrEKx!>i-#q8IQ)_UT{%6ovCP4lrHSyaX2g%_M zNl1g~JnBLSQ=NJgd2N|G=%tP)@SJ@PIaHnjp($-axi|g!>-iGrBh5U9i;_zdV+i8? z)DX^tzMoOYu$7|!!M%*4ug2{9qv<3O1ZpQEN@_26RqTUECEwB z3$17r+6O2qHQWeg?d9g~itO+Me#*ocs&x@`I^5Ur-jyI(tJ`selCmp1Mu8B?gCPuq zu+7buch^JO9-KUIa>{#Xm~7hq5+a(b!3Hb}1Hl)1dui!d6LJ{g@$?Gb5Hzv%m1ilL zf}DQt>7=cZU?#1)_N)ZagFg_T(e<{q&n!Sa%+tld2yk|@xn6EIGP9mR^=78bQjr^a za_)Vwb9=YGV0tPvjVw`jy}TJ6d>aiooqs!u4Dy>XSoF=*mz8>*u-G7!eY=5rrPJ2j zaT~&Jvjf_+d{F{u0Bl!dgKc$+YjAEg7o$f_LZyV{pxQ7IBcG}V#N%aZ=EZBs7)5+>cBKL7A*L*b_PKbO!mZYOCz$#gAE~*e)xk{guvd&KAREUDJj|4| zXd|c&h;%Hv)mgOalil{xyCI-&F6rNhN^oQMaO6*;nh zk2JC7xCBElHy;o0>gs?mv#~p+Y$19E(Um3>vH>_Nzzzt5+e<=omX4qw{|1$5KY!ef zpMQS+fxiBq-@a8@3BeSV0~nd8`5NnURSpb_sm=Q946ixCG=6gIzTZfelTuj|t0YSb z0{7(ePv$TlgJSS~Pty@yWvjagV)1k;Q$!v4ojt3_Oj$kc1B_u@X?9p<@j>2H=Wk z<$}AM(Le{g(E`w+*SwvT#S3Y)ftBg1uDPvJr!Ag}s-M>zY!c2M4t%4x;=xQT7oWnj zUtYUl*b^)+>XP*5-dne}jHk3Fu)zeiFyW^Z4I?55Z=CoDGa7@euqgCnIr|`kdOfPw z3kSam|-GrrE!wG7N4&7vJDt&&)^nAZDQ*{pI!B-&wLg{6Z`Z zC5iR?)#U*L3vWlI-)|oO3m<_@!~Zh+p9g%Dhg6PQP`C>Z`DWjp zDzFR|tlW4IJiDDeN%*qWq56pSBC7Jtvx(Q4%5t~+MrLlXs&^JzSp2&bvr8FozfKJfOV-WByrf|+|Kg5~bguRWbK>XkeW zs+XU)fyVGmI+wUUMXIm$`~`(G6&KZqdc4)(hZdOLpl_o~wh}}@G&uo#Z-EGhhl_A9 z3nCIFYFr;Llcf_tJ_t6OME3TUQ;IB@ZIagA`34a&r3SRpoWcF9!5a`2o;rLNPJ=G= z(Z^rjfB2O2rNCA`0Cd)mvmm7|5SP@DE^8P$rD+aYK4y!>6dAi|rzf%R=Bzrx!lleG z*_=V%C#KlLOv+nuDKO)x#owwjKkh84Ed9XGcm@Z0HSU<&HB zDW^vdkPwSwZpt@)og=Ax@Y;ZEjqw3mRH+BKsyg!}E;eUA2`Dlx@jrLyJy)86^M2Cg zy7#XI)g+jG7jw3`E>X7lEu@e;@^k^c>CveE-W?g{axJL5;=dSdF^%tYO;8`b(~$I- ztP*AmxT-G=X`_}jE!<|vmYkprE>F|sbUY!CsP{%3ZkyV#)5)J;F1O0W#u|{hshI#H zg3@`*iyK&&=#2(O;w9Yq=LfHU`su?rU;%I(D?uL*WmMe${Ntz5w&^+g&13c8zr5)& z4(z|+NXC7*n;VC?1EFrvC#eSud7VM>Z3+UH)(xP~)25MAAZ!bYA_g)+XL^AE21ss` z&(6*n;w8ma+JWmxAt+@5w62%Cv$sFLFO}4G*RvCF)VzFkaf?AA?1Kt9Tvk>J@d1(I zgzUn(@Ws57$ThJoeqA4{J!E7bLD#qh;ULuSQf?u6 zP&rFBFU!LtAv-T5g9+bTKzadC;Sy1+w6@ZjS}2JMHmVcmb4Nm`ahUMtDMh`ZHwx<3 z&`7jZn(Beq5DkwdMmsm2P8CYf4NO82jRLe1aKxrMbSnWb0L6F)n@sQmIdix^o4a%J ziBrt3WQBCyzrmf#2kp59rkRO-15dfab=9=m#_@(jWwg?4n5KGI$A)vAOpobmy779K zw^y?-zSLo4q(dZCbvo*Ay0EUlsC59w>Lhi*1}R2*K`P8KZ+ET3I= zxP|E{h6ehy;WX~99&l#Qx|i6v7E?PwJ->1x&S9ib=zKC+Y{|dm5Jh?I@-F-Uc_KGM zPJo$S=E&f3h76~ewjV&fB}iA8Uj?=iM^V5Bg1tK~ggvjl=7GozDZ>B#qe8?p>TP;F z@1ZZNxCVCH)}E?vW5%96$c%NMt`#0*m`oIg)5wS5N>n?n5?JpqB!r%6nbT+h>gvW} z?26}42F=C>QD0G9b7XMSPr4%B%r5(&%^Ov1Mn%2bOB$~5-&op-2be@l z@a8b{gk{EE($yK$7bIJXD?d79xrJK>lllhDKg8r)$x(O&vfTXzN_)~mgN(Z8$iT8; zX&ytw2Wp|>o$07Ye~u3Xs)i7c>hA5q6g0d6;Xo-lx8v!zzN4U^*+H%3lor-6xc8&< zAG~ys0k!>R^H;$O@Odqt0G~$xPM&oT0Em>Rae$&S82abEj^3-YG*=ZMdL9S&kS>g2U#TIT>O{YWTU@JMmgF5<#e3)Cj zVm{295HHL-1Q=-3sep4Gp|_Yv&4e4Xe@k5lQO7iOGJ%VVh9mM(6O+&Zm6?OFRhs?I zmbP=%LF%j(_k@v|snT_4>D}ZTEiJd;uFMDyylky&oZO4^>+zrkr2;hooNV0V7E&BZ z4V#Oml+~#O;!3mfvnowExqW78jfgw|q1VF7QL(DiBY^w6?b(I1_nirPxUU9W2swgJ z+8nS5`>psw+fbvP%ILC>_rp!b`q@Ub8Bd1Ic9ThkK6+y0#)6i*`W!tcKpMU<#x*=C zU8FLkdGr#0pMu$*+)hzM7uoeKNm_cY+ZQuD|i|F+~+S&pN>jrocCuta8q#8{6}|%s1EsKels4qd~U6Zzcw++#G2Sf zQ0O6dL-LIP=_|;8(=)($L_0f={Hq&Sop_e#d*-yAhLOi0WXhbRg)+T1Qk4!I#092@ zsk`Y8s;8qd8VyLD4Jnm(ZZ;DMP(?7w5V(poHS>3`|M2!6DdzwMwMT?4jN$87vsGs# z4M@-a^~0O@AKrZW+s_}~fBsc_v^oN6m)54{UAqT-i)!<9p5DUrcwVB~6T3oAdZ#?q z+SwWGQYXoS83qGr3QXPkaaG}GoO-??PH~{10%=u^ivg!@YS_8MP8vg2D8z%nx zXuP2(3E4ajsi|I?cG9!G8%gvh?3&z2&VY59&@kBBw$r1FURkWErC;Id%vVob#R;wf z(;4BX)%D+$r`Wfl7RuXbVPygNmq%ng10L&2b z1GI=t^+o|1Ce&nNbHNTPiuRg=_7%bV|nJM}WINdH7r@uZrHO$vj@afm4< zqfi#Zf5+n~T z=WG{xid}b3*BhD{LQCkL5Vo`meBqutbz~q2<{EJ}eNHxTl&UpDjDV%^4vHQ+QDGPP zvD04H!+CN;z0b|LC*)!fo^3@DEePM^WK6DC%STv_zrwP6-adYQKs1f9kr-5WOlPKj z9%BOPmYgH?c(T1cW*pQZ`5ye|Mp9QchkI#h`ZQeJ+%eI@e0nDf2MxiDnz%W;o{#>^ z-FETq)Bj>R5qi(huRT!F3zL-157qJX__}O;Yw8V&&~*Kv8<4&Ss(U#6CQZ_)vi%(h z$!iH13z4JvVGeapYg^gnP^V$haufjKK^3qkv1lKNnI}<`KHOvZT8mCVatxpMFk#ZO zO?Xgyv^1Kt6;3_3HMrfvFKKQ?QC$C%m72OfHg2Y1dNlQ5>tTkM(5S{GyC$z4`*2r)k~FQPzQL7!C{Q%pB7A|)8=_q zeA|wXdOjHbm)#RG$WJ|K)BwC9Ay{+mG23v_s;FisfMwdc1<&@ zykcN+&*1BFHv7RNWQcBf4#+YMrVPomgmU`uWE^dw`gH7*Il{5vC-L#kf84{}5-0>! z(q?@IrguN@u&)aZ9XQnw$n#c`&x=m#vC-&DsCXSAZ}BXYzOov5J%|2&8*l2MFOid0 zn`nqjUHwlCQ&YR(GP8AWuM37I{v{xKgKbWDbRx2Ub+HnQ+g{t`!zk&3IS_c=;J|!^ zaw3k8M>LvN#Y=_jWuYjC7an{=Twt2A+7Ox=xxG5dh8Efr&+LNr)Gheo+580uadtCB zzBl{=01<+g{)I75=NDpg?5EyT_)M?aQ0TGZeLCz#&#fwJT&rtZ{*lP>vz%uekEwbSx`RBVax(C)r<>4m{?d&DOKDS630#R*? zXlHV%TARB^Z{NTBd89uq#jZ@Ly}-ww`hcr89QSBlA5lA&1+VlQ(mE9)@cFWQtr9g- zyKEh=E|(OcW=d_GT}GA3#f-q0JgE$fVPa8BmZI`{t8fu#(pIg01=Y#3Qvgb=0n%Pz z>TYi)Zn?Qj<*>jEZf>t65J;Td1JiCs_AKDV_F}8`FD=c0ed~j~B`TCOoTtee9xdJ# zJ;e|dm_C3gbPi&V9J;U}dg4^oY|$|Fj{CM)OlgY{9lcT36Pw@}3fyQLe#RJ#r;K4aXa-Ipj<*UG-EEg4+aKojNGl zh>J-A*&r`IznC*!XaAB`iTYPKjMEjMny{sm4gYWqjFZB1f%*5Lv|irg-Smkcwb$?B zy34gGh^V(Ia`;jC^zCv2+VN`r+=xfC%0Nki89fMos^@?f)`o(ArIA+g=QN2zrqC0eVSM8f z*;rdtZ$RBCsm?Q52D1q=R>5E1 zrl_0u@0cvA^Fd_F7M4mXI_Q-`TCk?8+cj)gU7ddys#}0Z2q!;=(J0~M3RiW!pew_FoV!bGx$+@GQ_ieiW`s~Z8!*Xig6G27`n08@nJeB`hgw~38WdU z$MI9$eh@`?k|1ilwZ>g7c{LJ_f&PDbkcAPCs1Sp z0z?VWji#1agf|RCU8Qvgs7Ja&^rohl0v|O{b1|z7Cn`G5%nCD4QHx)Cy*-V4?8OY* z371XZC4m~3S^VbBM|Ud#{1GLi#odjCC|uoqk0aBn&OCEfk2|(I?-?z;wC>^1GnVB=@L#UGZx2&_KGW;lPZ%4~e4(B;2E!fHG zjN83rG|`*}8<#Wq>Ptb-g#3Coo>Y_b8;XPhHlNRSx=$WB`2`a$aMm_hZHB&b#K~!* z0jYD9_*RTcg%4-%ioUvvlbjzDIQ4hp2asGP5uGNZZ;4N1%O=Czlw65VhZ1|w*%oSR z{E_-v7Q;hV4-CLHVi?)rhW3#9au9B#FxIC_6t(05@|Vy?MC7NI0=o@|qSLYLt~UYq zZmN2AP3{Lur)94+U&yX5K(7ptUMZALegnOvjRPIhScUP>NbgYKgQ{oD5~IpuTkvy? z_?k=C3b{${e&yfU`@g>PQl|1x*safIs3J|T1W{KL%kUSt(Y+wlFx)(Pwx25%EREGo zP=4MJSum+oh(V@1Fd&T}-*g<*g;n%Q3bqM(DduM*I}!C;<1rFV`A;)eDe$O5_K;}X zA9C|3j{NTO0percxSsRg6w*}K=`B?2Kow(>j_G)g9?hoTE6NR<92!6RViQezS0BB& zq6YcwV#Gm5L-vnItX_n1=MgfWq8*q$lErg^+SlO4250Fq*RP;rHvtAUfRNL*FcUY; zl&0pG-{Cy_QIBOmdPFc}c?jyD&Nb1OD-t?TM+{670&4f0aXUaCq`AW-?Xi~0N>rl| zEjjAl=;NE8-`)Q-`tg_7AFzy9(^=lnjujkK2V$={8$()vp`y1RHA@Mq@35(}!?tM4 zqN%CFckbk5wR!*f!;km7yI+5L{pnupx(Y=2F?+Ydx#YCdr5)EMPso9$1$fe10QdYg z^3pL>EH?a}%`{Qs7&AHc65MW_w<%$5J+n|&cnr6uXi3`+nvSGY^DK2ZX{}h(fjqNJ z;iSWAqAeG>p^cFSv1bMFgvx2Tx*%IGlX)YKGg_K@vhq-tX;0$c&DMj}cy^gBVgo@9 z4rVdaJg2B>gGLtY?DUKQ=sHn-8+Kt81w0dln;WID#KI#F6UtvPgNEkZjK_ngQGm)5 zWvhC1`@IRkrKRt3{Qm8sys09l=BRZLp_aUY^juLcGgn8VQ?}OQr>+r$AIF$}JUWZd z*$UDNi6bOdXEB-xy#&^qiszd}FO2{7$+IV?&yL1N$4^fuN8^(x_rHa57!|p{NQ(6! z-+oz!0x0w1DR-Mv;hJ3ci+1uAEzMWKR)icQKZlG(G;<+?tWooP3_C6;Vn7duX^O1$ z;Ib8%##ayBGl>0v!8X7B%l(Jhhc|z@PtuSb$OU4kVJv4?Oz;omMs+EHueiKsqO?n7 zX<58^_vYg-dba$((namzP)Gt5Pao7sdWTp$Mcgec%6fcaBXl}4(wMxV*)5Wk?1{yi zsB^lsOu|wRs&I_ibJfuD_s7nK)(h>E+q?nw$?bLBBW4gDAmE7_o_+W_#6T)nXfdAR zvE{ct3a50qqd-$-$lxA+a<(@j;(2i#Z%C{Qha&Y*>wk=0xp@wRLiB(~@B{AK z;T^{;*Z}%F3a3&sA_Ltayh^TjfB4&{`yZKjR=hbP%xuLx!~URMt-$miZV+;_WEDy^ zs#cU3?2>OTuK6c;N>!coIG51@Rfi(KXNyBi7i+e`(u}OIytlG*aF2<6OUT9~g`Op1 zsGx6kja~OKiiCje%p3vv~+8t{F}-)F<^^S zh^q_Z6#hx>ExhRNE!^?77>J!LsjX)iB@3^t%jNICv^Uu?Oxq>ynK-&Q{dqQPh+OEHljE`{8=3!!BKJwQmkwt)4M!gpWDp3EKyQC1%Kc!dv~f9&ZD% zXCcf=uPCMeTp9QeG-X&oDdo=AQD%x?#;aToCIY!#AC={SUW9FkBa5pos|>(tiZb`G z)m)5GQXZF}56||*3i6_$e)f2PM6~pY@Plm9#YKiUKOBsyX}(>PVu@0Y-0l)BJy8b~ zB-;sGnODcY0(1$IngDj})dcMOdS=#NR}^vK`r0=?TUzg?j(W~LNnL~5Rj3GA3rzTH zTq_+NOtr;9CuLXOCzMhE?yJCilq3BA`G0E~N-7uYeD?8h5MCq> zagliLQDFpw97A{$jdyIZR0GBQW${Cn?_@qhT0uAu30XW-NO;f_$07&d$WDb|7|b4* zP+d!spqlus7nok+)Kv1d&=ly3PzzJ(^jvcM4G7!Kbe=qHkZ&wI#r~s8eW$LW&$C{*mtqo;jCW_wqSnq6(aV zm@zQNTUN!)>Np)0wEe>TXO@tbNcZ7;w@MSoR5p+~gXu9A*vg+h*|!h3*FXf5q3sr> z1ne8TwUveow8k{Ll&;ycvvbl_<+d=r7E^)O;_yU40C5b_5Ej}}n0~HfZWr9nH99l# z0EO(;gsbxo0AGUSK!`zLIcyM1Qk3Oh z#q$94kt&)X6m)r^Tv~Ht?(V60Y&a^yH*GU|sEc~w#kdViy#JIMglj$4OZcp=A(~?b zArXT78BU0p4rj(SX9VNa-BScR_jct$Z}!{JtI*$>+z+6HxIqll773MXIrq3Ji}IxND{1Al;wH%A!;$=PC=vDw3Yq2E)qy%I5w`l;ZK%*iIrtmHk}eds zhbzI0m!p){vVmr7JrKRt~snPhPP>mKz z*yxei0F%QCWd~5`tS~md)K!|^&^vhABV>Zu1SxTHlIn*br&s)4+)i*-Ri6g}HKXTu2*Z=0Cm^k*sAs(lWQF}kGVBE84VV&_LtPwp7S|xE! z$?Ruai<5|kV=A*vx*pWS(@JQR?ZqnIcqGaC_Ci__lX>bz*EEWKi3BRrNgUC2Srk=(hm{Rd3OrEbb&)PC42{MC+p`^ z2&e50Ev$53m}DHGaM99`O|ct(knQ7Im>!1>js1L0VmpNnt@HjaRJSOoKdONsB!kbQsh~wY}LS8cU<>rSQuxW4#IfIcM`T5}ljc|ww@{9?kOd@S6%fQnU zA#e|#zQY}C1sJqKV**t0a#`sHv^Y#ts#8!|j#iQ9IaOycGtbx)s6XT93c>+BbxIarSp4xh}oy@4Lqly~ji?Y{gAL=h?vo0S^4!$U0 zvdOS~G+|EVFP2dG(dzOCrQ)64t*+)s)^>Op<?ZIIgVDBQkiw zR_O$kAmOm4PC$TU30*@rICJh(3<+$OOXer>kPPTQmwq_I##3u;D5kt8Xt71%`EMMSq^){-i^~ zk#{>C9hBdj;0j$aF^EHFf8Felzi#@+UpN2buUmle33!d&j-+t+_Wt$9PslH{ z`|19VZ|MGmusK>(Lt*_)v4ORji7vGqje&v`L!^f6V*2G2f$_0zX8TS*?RdB*F;sfk znWYO7%T!8FUM?>#hZHKvstuP6g!@h}5$3IM@3Xrr%XWYygsu(qBn5-s1O-+pSV@-H z^^O;POHke7T&4n@pb>&gWQR@;bkL2fvx_-78}|)nbH}!u%OT?SqA7GHx+q)8Usm7Y z(1ZT2!t4&SZtuxvUVwE5BBy4V06&Ndf#(VD@rhO43MSWBiYmK0d+bG53wLZ~SJ|Jc zRyWGQCg-m7Zk@~Q%Mi1=aC;TM7Q`OvfU7H%qGN2Fc^bBtj0vY}0|Fmh-cwvP=ScDC zP+qu4l=35R;qXYB9W5@0!W~-2HZXUo8B_`tn1)v4($7Br?cMb4pO)`BI5N~jw{AZF zA&k5}O~;5Rh`YPCOTlb5$RU{n9CM~N2e)vdz|>s_-zuDuWwq^V&02VUjrn=IRPGJF z(hf^`RC(Gi`z@ICKV9wos3H@jfiAQ$@hLk_;zop;Zt#-<(~o~QF$_&Xfb=C|EQA~j zVd2z%YpixotHOvGK!Exsh^Jp+B=ymwm48J^Av_n0Y@KcwYF(|`g%XF=cF+SUu67GU z0)W{FRhX@AlVjN^ftxvp#mfS;w?Jl6x#ogkngvwfa&Wz7%`z ztMzf=k20)}3uqGMGJ9_Y{u~YbQ0>FDJ|>$UuSW;`C1a5#`ldM&%uIX;b@;c}Op!>v z5Oh`BrH=mY#g;uN1lK)W8{R>->}uT4t{6w#2VF6asw+k&L)p1U*DajP3$kWP?;abfErBE z-`;L5P~5Ijqq?|Imi+>H#3%%?VhTp6R%4qk5$qYyUP!YQ~_ zmUoC%(8surEax)PbGht7M!p)E5;~vwJnwwjRj2 zkd_ygK0_4_UgmTRV*V1rJQ_3I`ZN=sZO($-Vf&#u61J}UKmS^s;ZP&tV@xLn8IPMZ zmP|50Qpa8_7f(i2JIiMMQsayV&&mL4Mad}Am+#7aABA11T_0$O>jUzJpk{`f@1aHf z@&@J}M5rEJ$n+GMuAV-F-<#wx)3yt)5!Nq+2^!3A%V%_k!GIQNpwK>ij;B(J7bi55GKu!8WwB7VhFaJdeE-TbC52abjrV`4f(X@1A@Dxq3)8gmcbS zM%vxdR1aCs>Fb5e5yjUlS(94M8oI_W1NP{`SqrY|H)_e9P~tc(fb)MT-cuOrU;c{e zmpJxBruuLVLR;7+-Wgz7XNTdPqwSK>G3QYoZ z;jo_>dx~V>Y>~UZZ%c}4q>I{?lG&cvPH@MgLUf$=>kS2_sn@5$)KjwI;;Q@VYsT!T z9we;+(sRI?!84QW{iA+kXd$#ym6U}ZP)$oK zZ9CG0pNsoXNGbm7>ks#%<}yljnjHq*PDIlgqu~9tm>z&<0AD!ImN2NJ8W*7EB+hP< za+GkOX%U#9Rz*p0n{q81+_n{{2a1N#32AmdMVPDWKqPNLp8~he#qH+P>rbCQ?iL7` z9hGaA)rgXeA4oj2QR2AWt9BMSNbi$POC$l=(p`@qenmBdVZpLcE)sDvxOo;FH^W6K zwm8f_hbHz(UIF?=RnO3jlviXX#x)}@;|N<_os$_Q?F~1KbR$Yyn1-px`0gHOX-AZo z`L1Pjyo7bR%G#4Kg&g5CSe+Es536n94o*&_`RrPn9U?56Mi`G6AbzO+5-eR!nrCO8J<(R za$gwYo)g@#k&ZfT?NLTfP8n5+NQnhi*7(T*!TQBfZm@abufQs9B@o-&b&ET#_k-;y z(4JYz&)2IFQO=t(JR^1C0721uNt8m{iioS zj^4a`3uB1WT)YC_oVIcliu9m3$86c6RcFx4G--Ml-VjtfIdPZ8h14~KeYn2Bb{&QS z?Mz~tiav6g^pQ*R<}}tE(!V%yr?yS}X~4=tNCv&08v_#!4O@!XXUP%IHC^ez!Vm{K zV2U~WHERwdX9m*dYlc8eE0|PU-b%X=S)7sF9)ScJ~*>9&H9|>Hxh(}T*JHIHGSqGp( z$7(&Id&CyP$;Ea9bbfBn^e1*VZ5c*DUQhDQm0xvqc07cRi?T%OzWHX7`8<^@LpiA=P<4~)`w^P5T3wZl(6ixLY$x#zdETT6an zkz8xqk>swGphQ?rXRtK~Bv6|0Mqko^wEkK_ahG=Wuac~Nibg407Y)ru$VgvO& zG^z0#o#yj(dy=EG$CyzlGn6EU1Z--G5jT5>kyJT#kHy&Y787EOfm05X^wm=9tB@bq zlg-=v`(Ll$|6~~`T#sZaC^8hJ2Fgs(d#FDywuTf`LW|iomoTIYqjjVu41Kt;1JhyF zMd`DE>enl5H(4KXzIutr)(-hlPn$-QN+Wf9w6r8S-{0}m?d{|wGXB}&T#jeQHJ3+ux`zQpo=AM-Aw$OgF#o@WF?Xid3K?~l1_8@k z#IGYK(|ip}nUq?ciVadi-cFB78ZI|z2b#0k6@WqnUQ>Y97RN+xXrxtu z10&!1w{}3bB`Q0kKq5>#3^F1mj8`uvnxZ{AJ~@4II7Y~AYr>IGNN;}-q_OewCI~U| z8Tq3tIqzv2$@T2%<*~F-DgfuMsA#CdKoni?fjHr^1X~?LdGgIzK4?zus~}Wm#gl+< zM4F>C#6Ftt=^^e5Ob&AS-Y&Ej(a>512F{jiX+VjM_$?UTTB1}=kMtl$9cZBub%4dO z0PGa>w_Q(H-y4~abTLeiu-#706T0MRL7iP}UAP&q&L>0WEfgMx2 z%*n^(?rB}JN!c@WF0dF3zG7D_dr>z*sE3w-X-iRY48I#;OH36r!MYB&n}MYdHzWnY z^TWL1eTe)vX94C=S`VIvvQMb+oW5m?k4&bKhbRHLtV}#@>+AVc9F_kT0vl;K!(v`uEv7%5x%gi%*cOP2Di*Pd%`en;x@R5+<1T-~ zr7Iwx3C_SG>r@h(-GgP%f*ON5vxAc8K1EO+|0Oy}RJ2pfc+p1j$cVk&Vvf=X(DTq) z*EETi^ol7fj^THSf?iM>8by>2AcOq_Jh6u|h=kt3C5~|`fPfYOOCH$?2rm{t3acNB zUocM=;?I1=P?DbV9rR}sl|Cb9&h(ep@7~?NZFA?;UY^r|qQl1Z9;fXGwjg~R)qwC# z11f+-%Q3OE^d-s9Lk89*Y!nZqw@7`;<7aF7+oFlN28YW%f!sBoh7swUVE6WG<9zWE zUFHxeja_6vI36xnbxQ5^&^rygA zTrkfE(sVHt^nfA9h-hgVl|QUkq+oR9JOtvw855p9uzsY7p?A>tWoC9z#K9fM+0)}I zL>%5?B2Lj4QWLXzQOe49)rl3XK{<7j(B?9(W}GutOyoM3N=p+{WOYP|p1p8eow&M$ zdA{MXVv!bvl2T#OZ&%Xc`0V*WdtePy4{ZYC4!pIz`KJ5=L%#X`@#v@b|6>$s%toL7 z{OgDNpOLYQkNEcA$+G`0F0zwY)-&%gcx z&zA#wtf-a%EwRLBkRc1Qvm6svq_%%7GRkhChv94ZN=b*2j38Re3e?2uG-LQT86#i| zoW8{(T^@@)vd?I)V|;LFL*&G2YeB6&?r{jLk*!(mt>Y}ux4}kqi}KdnTLdz%m#e{u z4KQgIfxZDl21XOwWkqao(hg_@w!Kcg4E~9tN#Thukaye}s!{FgOm1eT>~rdkWTrH8 zMqi?4OSFXTq;t}V!P6feLsw0vq8?BaUrCd3So`=04}owt!U7<8M<>@z82_#}zSqL4 z7kO)Of@!LxUE(Z}{W%R+Q2p?Y*5`xTZW_L31pWmSF^j>%n+BiA3<$z!KOvZ;md=^i z*El9a{zF`)8z5ZSG`NWhEX{?nX~8ylOV|<4SX3hJl&d&$>N|GY%NfIngG1~vPJbxd zdOJ%WR3V0!#vwIYYoU}`xv$~$!s3~>`ld5m;@F|dUqvTT;C+Vy44A95j`kr^9CS%Z zfa)YHL|yQ=$fg-35>&VR<9Gm*eC97spZ+u90Oc;5A2Y~|GhdLnBV^la511BKzs)y% zH+CSC1}QHpUX#(;|!E7>UA;&@T4tEojef_>*L31$!e zNPKt1MY=8W*r-_tWQ$z~7j~*Ca<4#$!9m5r=%)8AY@~Zd~?!LQ1vf|}pYah`j zMTO;oT4sJ;k$mwG>bX1UJ=jIVGlBMDHHG4=;e~6b7l*015K%UW!bY$l)C~h{Ke|yV zQX`h8keRy=p%vaT)q&o^Nq|q_#aln{o~CqC9GP}(hI3!r}oZM ze-^7lN=Wv9S#~mC!6r}eXy~H8FA}_!pjMY(vgTfNA{aw=R-;qD<%(D$ZQjWVG^7RJ zq0U8>au)|AXz>X-TLQ89K!O5MLB3NjXORRRlDS7HwLmQ@CAL^G%Cj znHceT;o2bGLcOY4(SD{zOs)v$@P_?;*Hk;$MMEUMc!jVdXfWHRP5SQc3h7|(pgXqX z^_5{{{k!`12-z>bw;f?>?ZM!m0O`eAC-WKhfE;h=rAe?V8Gu~NPX3s4{T)?b-_d|z zWTiCq0AoaxD$oq9UFD!}ettIGSyRd|C)@&nqNSW+t~dcA$W6NxB;jilSK&&OUN3z- z*F$~{WCcx+38jIj5a|JROVB#kyrD?F(R@w^M;TdM)>^~TY9|AQm{8wmy-p>v$|dzQ zT8N`=B@}@rePEu~T z?$Leksk@(9L*vWFj-%7qCH<96k%q}*Zp{nO+dQvS-aGbd?o0Dr2iw#PUjh#g0 zICjp!Eh)7sfG4`>#S=@(U4i-(j7HgZUoK~0&3B`xzP06_1V!EI6}-iQ&ihfT$!j|3 zQQ9rx7(Z%Snisu3N6DJsdcLB5g%F(3anm*F_L~z~+?Ke(N?HV$wkTr|3$t)&Rlu4n zdQX*G%&Wr;ic%k#B{5&NJ49O{;%v6m@)d)bdRoXVfNmdtWEbuDDJp zEfD$CW%e6TT?$WlIOw}yV2%W2f-D!H>ppNUa}(aJwoYX_&}}t%NVz{wS#4 zszNml+SVSp))hNiSnck9r^vcxM8ONQ)R@1h`!OijW>Kkx7E;7_vDSPAlK)9)%blAL z6Kb^h2tJ2qSg6tEVc5^59l?8JX?aXe4}N?+`f>DM|Lcf>0gkzRxhdb%Inlx@h6M}5 z>1KCq%{03vexf1~4*`6gRs8${It#5}KE?f#4Z$Ln29Y*EdYqXo2Xu0ducQJvb08V_ z<%ljN>bg1f;pLlYZL9)>#WgmG5p&kWP$)DVQs%_aq%>yY;j}AUWLKW04v)A8WOP`r z6YIg_5MDiC)o*9WyqsIw88&w&=9wqBiWO+;3*Oy)EJs{mxcAqSkX zsqZUOyCC!qA?)nsY`ne11hXu!iC>&U_Y&(jt4 zBi9neX>Uxdm5I5YF-jT<^cbm5lyg8PE7ySrha#OHUY!V8Rk z{pr((H-Gs2>3+96IQaGTkAJ%V>6_8(x2hL*fS@QR9u|@no<`Bqm-rs0u46dIx1U<> z#n7FgqH~Ni105znQcO3b;`o8IbCPB}1;2#JwG0;>4{h2qEIqGL2M>sM@)#|BpnQfd z*H70o`4vrOm+~?oT?(o+)J3xnp){0+S5O#U9q6wj*Zdda*1U%;j~=`^GED8c`Q*WyBd6D%o1XxY>^M1wArl6FxGxB|qeKK<4dB}{9WNS{yKR#K z(wv^bRt)3O#SU&k>-A{5{$Z8cOanxps!4mGsP`=n}e3-eaywvR1J+pIq|YXj=8(8t;j+t6{sC2xZ@5y&QhujhG3t8Hplso7-aS~liw9n}#TZlT_0fY#) z#tPFpxw~LT28@+S&qkVgGl<}z;-SM&S?hduN?o`}Lzz^ zCMl&})FjyUO>sq|gBpZLAk6aOZy4vy{pqtF3^s;)ERheq zStK~V|MQ>Uze_$S?BlK{VjQH!Tfe$NxGe1bL_DhX?1J9OeWkjq$W-jag1Qac7iLkg zjnU=gT}B5`-v=Cq$^uDl&VTTTlmqi0(fJoYEpXd<-P}?H_GFDi9SEg5^UAeyuIe}% z`|0AbE5Op0m>Kd`sK!TfP9Apg_VdSI)?XHH{`g-0rnm-w({weoUd!2(mcRA<1(K-l z#wYxKxcj+xk}JL1PI{4M&O?X?1&{($cb*-va9+x<20x5?kmm3+gbgP=K%)C!$Vni(_a@N8H>XWa0qRBcvpIwG14oA+Hj>Or+?Rj$ za1XorZy&dBe*BX;>uOix#W)D3NI%ptI9-@cURR6AQitxLrTTX1AU+)QAk!JG znRpxD0lvB#eKvQi)$Mval3Io5{@MBpZX84`>b?r*sbVGQiD}xYk>L*De{OC!-g%PE z5+vf7N4Sz%YQ}?FeDENAXiEY!W{hNSOUutpj=vc}#r_xxWCZf3poV~_a{A2(=MboZ zNft5^l#E9aiBnH1KAj(vgx#-jzrr0xdPp-!AHgpnya4p-6{^aa8kTc_cw5%xTF9Kx;;BzKksUQT9^=km)5f_ciZ*So|4v`DRG8NWg4VBV&PgH*I_CL7n6ol zNpp6!yug^S-X$`{LP9%1D0UGf*UPlcSDPimW4%<{;qme5;qkM{$stPFj_I9z4&M7&~VGUPo);l4JL;OsgeJ+R=ps-c1p6OqXNwzMe*&Q3t`HnM@MyZ7$4?$NA!y)wh-5JjsVbP!SIy~Db&l9av+qnw!uCtR*G5}UG6(gNfI z6N*|s!4%=tdvyj65=Xh|A&JB2p~TKfmw9So zTF-Pu7CU+g5O7{-xQ}ip&6%$b2i@Tri?CYKN!tJ6GLa|f_{uO1X^kO|HQ(1suZ7(e zDxZpFeZ}t}+^8FQSXj1l{^9Wi$C(ZQTV&Hz_Yi1L58O*8fM_yXY-ZP?Yw%I!bQFR^ zt7U_a4%+N24r>*G_#m{HWO{rm9IgHrmNPN6g{Q3#Cgk}qyC)`!7!@6Wr`1oI=wdo* zmcHrGy%8)TTsAwD!%#-|Io#Kc6D6RzAJe`1=Jvbo*#&l#u7gCMEuay+y;&?TQdKK= z#NM&5&zn;tSBZH(iD+qFL>(hPWS7h805w2Lr*cA>>|V@pklfxZx8Uk9qx4J#2zk0X z04H5K#vuUu9+T!sQc;Ev`hl2Y$;(Y}?PWjSyo@RJrN|JCl^4MCULk5?_Jb3DB=>); zj!HeLGSYDfc!m{O_KC4Ga%rBYVS;Zn>I7fi%_`@)GQDBLnXPsVr1azKEYj=vWqlN=r_>somo$@T z98#D_Q=dbGl__ABujn0#3YOr8U{_q_S%tLHL$Bs!m`^sm4C2RV@Ty)#%!K;s!KlJ9 ztGINke|FJJ8180c$1gjfOU4`{ahXE#o-Wu>*i{mPqJDuj-z&+G->V-!S$!Y$wws<% z*uLvKWFGsTx@fH!uWuAO8%eU<=nGlU7=R9efk=x0r|tRzs#Ldu2Bk3yWHXQmO>>9( z#13*sDE4?XwPeIkP-SqSbipd5CfL|6SRaYn@6upf`keU+c6E;`6K>=ShJh6F;gf1U zdWTY}oI5dV$1&KN;LmT@Vg(+5@1d0=8s9D>z;#-x!Cw zJYOr{qBIsbu*L$A-Lx;|MqXj zcu0-Nn>ajZ{fKR}Urevv%1Bd1nw?FT-DqK&II|jNrEy=xzGRv7n06wQ02-+V?-nM1Hf|?sZD(5uX4{;q zMmLuep4nKRs!9}0h#;?LOvr{WG}i-h zgJ7vvM=4Q#5fEE1j6HodTlV#m*CxJ!O{m2=2>g{WC~g+a+uf=%w`!_K=C(XQUYVJ> zv5iZ>+Q^R!x@he*o=7UwOnZ>%otg=6#9qfEUZ#^zp6B!ilM~ z{dh5ThK|N(d)Nn@i4Dk?egYK=Lpvb;3i(Q4k!z19&U+!z5o&j!LaO{Pwzs}yG6&c< znR?buiLvv-j^<$(66-Ys54k23m==kY$Fvtan3=pq^~U7bw1%dT;&LBOKFh<&x7#i3 zm0P$oFn%uxfja?7Db8CQt!$qZpkAzNwvC%J%9s+_5!%Wo&eDPOX)4Lwc=TK^XGf-1 zjXJFGQ_jHvn#OP(i^0!>ayH&4dj_~z&U_5GS^Gna)&U9{{=i=~==y|SZ`&dfU&>lRqBpKBE19=>Fr z+gI;(0^vsIXz9JuvfKcz;4i)?2<0Er0oD)kgMXx_dqa;i!mlMjvT*v{T@b&g%)h$4 zxx2mF*b?jkny?VT%0-b8?$fR{f&<9)N<0fhB>Fg^gu@|JW7oSs{O!~IkMBRDK&KA#yseO?*^hKhL5&z}XIz^Cxmv@)nmc1Pim5o?2o$Us>F=K>@pcasZ73qLk zcZl5#=3sxoB0vSGIkqW4hovN5Cv1x8-4u2Am=6muf7*}H0=VW`=hp&X86r1jz!*<{*T?f~^}h6*mRAqJHK zU69Y7dk_ul*$PmPCm%=tQ!cyG^^}(Ig+mGk-q}2=DsdJw~ z#2A#-5kmPrJu99`>ZDT2E~yTLZ9#Vypu63Wt3U;V*^*);XE1Ocjl2V~FM|rY5fegx zYHbZtigUSOAXu#=(9olSps9CO4XO zG~T1_V7g#KuE-%|OjMIOf2e~7E~;SeIpDBcQrN;OW|%!IHkQsnp<-1uDy{x}GQoO*Q`IN`=A-sz!AGoUTbF6veI%Ls${{PJ)k5~)^F z`$eX&Ex`Ioehwj4xV^!a#ttG2B=)#w9JwSQKuDFj868NWfzP7-6k3T~H?v%f%9%D9 z*P!_8-lVrMjZiz(1AZo!+cn~UCRX62_PCu+7F{b!7pjLEH{tOKu66L1P%iemIHSX6 zQ*}Uk9CO3YUrp)I;{W(WiU){jCa^Y0O7s1)R}-P|HUUm!gd4ic$3Dz@p>7VZ1X^lW z@+_H%t&nO8nq<`tfG(sck|`h$D{hP=4C;O!ZI%}(8*zJ$N;#phfHOXI7V}ptBv08= zP4#$WItw(Rx7s3Q`4lKVN0}XyMiCF>`rn-XF~R)v5$XbFbc!4dV9lCS7;F0Ep<|fv zOliZ#H&(@Dt7Nv14tlfD-Zdn3YvE{ucxg#H;X!jCzGWzfXYJ*I6t<1*OoyxU&>ky5 z4FJ*#@|7cs6*ZlH0PJ@=o{tj~$o6h*!-JOxlnJ*yM>~~v>>SNtUlr`rp66Pcs3EZNy`{E8 zi^%$r0@F(hFJr4GMo7Gkwe@{SPl ziIvoCpoYg!r5Nj3c7VYdVryb*lwsXpf$96SOm0MT(Ir~`4a8Wec}kA8-Ux;}NH>hr zbWN(_+RPG08QG6CpP}bn*xC)}(k`$%YWL7_<#H{);sW!aNM2y|F_C-1L%~Z^pKo+u zjBSVl))15;7Za*NJ$yF7Y%kutd-L%Z#gs9YxVFS{aq|TM*0$X5~HUCsw$Qk8BGt@heky4+F<={P?q@}@z(!_g3laH~i)^xlH zc@**jLJ}(e^i{hdRSb0l?!UXg|0yIzG?{e-#uio2+>PG8fA=$z8+=p(0~GuF}d zTsugiK;{H`fXR(C3Z zfi%xo;JhilTNnmCaSsky<&WB2hy(LiBY3R9T!W&P`f7mu7Aqqf+{n{CqBS{@24*PY zYF8(6vY?@7=t9Qk991IrbaK)qH-1Rqh(@`p$uJHTS_x$9hETz43EjI;;S%@UYJGbF zlcj8)DY;m_tVs)jMdumVBu+}_T3s>M&tvA>QP?i=*nBNZNi)8J-{=n-Jpc8P;8XI| z`U1mDsc+Ip>hS^67mEE(oZnNkwC5{&Xx-SXk5dRBWKA^H12#40co?*0bs)}vv(^si zs59W+(zA>|ss8pJ8cJ@o7<*Hg6|t8EXVPXsIFN99QueA@D2h2Dt6c-68L4Lnq`3S& zRj=rou90(H0h?!*>l)p8YION!eo$J14mZtF25}5luD!ufB4Fw+G45stRs(nCDGBVYHDI;=*!~3D_UrHI_@P4Qj+Ti5hzH&_s>6r1-p|rBx z*aMcowu44&cX}p()uxF;>%!`c*y&?l7ikJLBL!yNJMlFrtax)fg(({v8%}?$_Wo{q zjFbzWQ^&lAaT#~>qyjBHgCIA zAgJsizxdzU8lbazfx!P80yOAxv#RgvvXX~1=lAdS&{rPT4GjHBn=Xg5*Lg76F|HByOIcw61axVVNt(AevI2ADN-et#RQ@xlXy1tP?v7Q9g_ZF_Kl2bry(e z!opX8?sfQ$<*K>y$A%FPcIh4_O3MicfKCc7^Eczk;=vdeCqLRYtvnLGS#4S zR)EUG7S4D!*(==md%EW!5$o3g9V>0~MxG-`7`SkO0};!b8X!N`QBW|fFK{Y99{u;x zfi8dh@2GJJytO{8cWK3R9*_Q8=>a7Is*{!H<50BeI<3ZuvLcjoXrh8>{PxYe`@D09 zbNblMjg&roa8zY^FzWz1Ws$API-rMO`ynwOXqGq#`n46-6|Pae3<2`q;(Ed>0}D2zsH1F`v-LG34gxexUPFD9vR?LBuM>;qxH)rRl3|@rlVz8``L`^v;>ek$&atX`L#G{_Tilo^dfKS-~du*jRcHODrVHmC<7gIV|%FOBc+9? zv(8_L=VByLaPt*B#Q_*05Q+j16hvi}8|#vYpwVm;a%)|UlyIF(ct1Nn7k1vAm2B87VVkU5LiHes3vIV6P4k@lC z{JQ{CnWRh(mu9=-6>UU-g2g~O+)?Fh_Vln5-Qs;W$EIzJmcE~duRA$grgE2PpB8#S zUeuL#B*5fZYheLCgHmPBgy@9_4EJLZ#P(}HV0Ea7z%d2;AZ0sB5+<(si_QBWlF0@+ zHZD_^zlT+k80J6+d$y@6)QD7IZMLjXS_VRXy0% zM&;b^pt`BR{QXuonwrGT@n(MY%Iiqi3oaWfNC!eQkgV^PWnl>p)q`DPLs7W?x+a+V zmV+4d`uvCA&(~gA$6&&CZWV_Bj{E@s7x$L(m+8{K*zP0KPVLA@ zRbi^J<+c&P4pJOUeNH@NPZamvsDADO<(L!5iX)N>PYBzG*5!qJ04a}C3la;S zBgF9e%R6aHlQydX=@~ptITRK1fGE~KYcsUI)-bc@pX3xm1Wamm7iY{anqp5v#|xq8 zJULz%$a!cPJ_<-AUxg>Vk zQ)n95_ZXdG8*IJsub6i$e~YJ6f=Lq7;q`o`3wa^I;}}`SM&PGY)5z9ljPKY?2MwnM zrupUOi5xZ!^T98M!vz>|`Q5S~PFEa6%mP$~QiYp$^ft3xpzX2_cG0^v#lBshG}{IK zLUbtss=y=MUk7C4f_t=VakP_SjQ|TZy?p`a)wU^OK*`1PoZuK|bji5_C4~8r3wd8B zjaFQoQd)$9p2?69Jj>ZYpp;v*pfiN5Z2M8a^?K82LYCO$D?lXdK$YGPIJBOx=G&!Q zcJu*oHC!Us#@Wqu{=Zrv%fw8$+~cUa+jRFWXQ9IM?M4%HaP21<4Oq9CiPwTA!6cNJ zNnhO(>0&Fam5j_}PWJ~6ZcY`XAv+fWo|9E+jeyml=TL1sIqd7nyWM=mQXwHBL#U80 zKD__@>zj8!KZ1^Ndwn!PsTB)3g|x4%nAc~^8&bW)<0eRHA_`LUH7+%obbzfz+$R2O zUrT}c0txY6EH_KYdZ?gD6jqg@+ZQNPB#f?2p%i;8j2=fYXS4+8j+Jw=Cm!mw)rY%` zUelC-R^!Ha(E(|8^vaTrypXV%TMj5e6XsBg1W$8`0uI5Oridz4ig2)QDz1=+Dc;qk zV>A1N?l3G_#yvnl`0D)9GHrQ!>1^iOpImzX9S`MsW8MW&gL#uC5_oAr#BRQ}22C!c zGL}$iGu?y<1;{nCEJ9j=nrMcuGA$OdW;ssax5aKr#8!k(=eYI(6erCGn{5X1of$_>APjm^;A ztJ{~MqN>5E)_vHKHemXE9f`$tJf_R(Vh5-j%4w_uS(+660ub~TXfKH~B|^sh#GG=T zYKG(jurpeNxSdX}8(Tmff=4iGjwEHyUwQTVEur@ zn8in7E`fMJ%dTFc3oV22)C3WdVZt)0hPER!1G^(QC=1qU`aOO1=G>Ab%APB;C~h)k zC@{TC2mLDS+?UJW4@ST?aNQRi_Jm|UIZ>chCnJa6BsoDtEHFLJGBGRtJgwC)=FIAs zF0SuxlA#rjnb=Z+QO;0TF~-4qu=d~F!X3uOaz;zz)cGvS8%O1~IpSM&N^~EVK?%3O zY%=9J4jszTjt1`V{E^s%*m=-{#q4f%HOHPmJiKmgMoiyjq6LrzdC!rw7tb`!hSK0s=5E8*&?f+op(}vL3i)<2qNm2eYnokUnDEqTjJanvoZ(slA{_LlpK1^S~ zefx*kKmJMTRfFZrlAn?GNyT@d4f5An{*+_ey%tZBG-D=F0i(uL(2e~7FKwTHtUM_B zV4P?dRA!&`{oFW%IZ;bb(`G1H^ISD5ew`vc%t?q6w7;4o66eI}T095tYC`MkRhxI9 z9}Z#I8a#Bs(4vwbcqb2$OWil zB3QKmS|J}OLqLP&yEjIPfm|do*s`U$EPR9_b7UMd}Xs|v35y~%w?Wq z;c?vYk)+WcoSq@tWbgm@$B*})-v9A{Cf{#h_d~HE2F(58^P9Jy-n`odd}JL)-UDYg zkq=6RMz5EaV+d^cIorY~pJ}rCoEDS<4%6U7oIJtoK<`C>YG+VFg*;ZmXid#5w>3BB zi=Tda^L}#u{@oko>T5POps-6VW~$u#)cwo5j``lp}Q=4LqkblHu1YA zL6K+zC+~LTJ}RZDJIS)lSC}P)waHAMjaEINW~Qi%`?)=pl?H?^ti9;(nLV+vL{9{e zE7g@UJXjmskBo^fiw|=5LZ$obX#=%2O)!fNb-BzamNb0qP1&GO4^zdFQrK>x6Ch(x zNIEo$#^(;QL;=&@Eu~%glRca2f)n&KWJ^o1BeoK(sjlQ<7uVs! zc;n09E-8+((Gtdj5`go$22M|>N1KMkcR+e+H2^7j_kIc^aEXv|iNTP<2*ad1d3o1) zW)4Ox_}12@D@pskr7tjK7*}M-H41t_eZ|LL-hcQs`mHH|sy3xFcjp0pMNbnLHE+(_J#toQJZUJ zJXj9pG}@++!nim5Wf?>|@;d*9SwnkGrpsc1K|!eC-^>}v+qha6*OUNjnxLRuEsq}Z zK^cVmbeI4Zeg2SNLAGOia+~^JN zKGJ@2hUja>17Wj4zcxO`prFuy^XcaEpZ{?GL0FisL(gR~@Q)A+gJa@mdbz&6LAD-# z(P-eBa;$(=5kp0_HR7qkO^pwcWUM4@it%|=xjxNU^+8=wfHZjRBR8zV!h&m%Fv&IR zDX_9h2jl2dnhAZ(MPvQ>-Rk{c??24m|Mi^&4B=Ms;K*PdxX`!Z`~wf^Zwy~7K5p?QqodhDM340g08x^lopie&D5~ zq38g$gjy+&z|0{TJmXMjHfqj}S#wtF%jGqtgnXLTC5Vjtn`hgE?r*;{j}mV7dpOPr zWd;p?P3|IMJ2OgcKE3|*`Qz^B`RCUkKHY!#xcL0`t+s-IvSR{B3OZjyM|br|#1uLT z)AU4L)!#feB5P51#2hY6_~NYH}|4^mm{o@j}e+Ikt} zQ6l}Ti-z*62`pG%kN)!hEq2A*`_Yf@-+laK>Uf+DTac7!N>mT@jWu&28=50$Tdb&6@#SeP?*Y^_ z2wQ@`a%xeUdSuMIKbV^kB|OfPkiKBTe0KS~9Tuhz-Y&4oY&rVPCaf z94qOfx&S8MAs}!Gx(=HnWmt>=e8-(Bn#gk8Ego479{4^Ou-0alLqxs!X!mjo7uhC> zh;gyU1LM~mnso$L2#g9x9B0V190(hFIfDajlNzW6=|kioNn4UBMPA;nXRatcVxSSh zHA5M4v-*^ngAn&0W=&+Lcn$eQtzw&;->ZX4Fa~1z_89D=v4visYtPY_yW@sb^yw&R zVS0=^aUJE59C3Is5|bd|q@XpUJ&{O^8n_;1Pd9?!c)|Oo1-bum-bQQ|iog+I*SfF;=4T{#~wT>HzhcD%kPKJ=1>^FNCr8VnyKF zJn#56>ovgs&0_n26(*n>#S%$Tvr^MSwaC1ssENF~!Tm=;G>Klu+0!)v7SSmJ$x*(? z_Xha`j%$7WVj<;V%G;#yWM0QmMC-_^F!^VVF;z>eNwtm2U%Z%4k*YP-zku&_IFSu@ z^69?1vdDE$X?=S12+{bX-&!pQ?KXNWw+LA_B0+kN=D5WDQ8-joUi|T2kv0@qZUbc~V3c%uE z(wwS&M2Nv?po1UeRu;rqO{3}Vx9yEIUrggUo!qPjr>g+V*FZR1KcBA5=!3@gx(t+q zd_n2AVXWHm-zYXh-JHF`nlc?5USQ4p|Hh;`?=sLqH}X_QKqS~74m3!t z+uB>8`g`pj3Ln1Ujtjyomi0-XN4uN(OIC*s52#DZ#u+!lAIW_qjPeO}jlD~@EJtX` zyUqemO!_qz&^Cb_rYgm~u+^m#LS-=dBx6tYw`@M2ss}ojDXTsP)j_Z+qrj;f>ZB)V z0IY4gwBl=>Q-2*G>x_a0wgu&5%K8N-hV3K%?t+vF7!`(CH1*B9^Ur_W{6|?<^Q59z zaHoS_)Ikw=XvU4hIK&RRaknF5vd@CsgE@8a)T`Ji6EdxGdom8nG0NGgfqs?Ue^P4E z@zgo|WOP0arKq_w|3v%Q>8p|qx=9R+4{ zO|Hz&T#uNs3W5w)>zOu}K9ANg;@D|T#tcA~f zQ#MR#D&d7@m96w@8WrKu+Zq+)f?f=3j-7Mx_WIv+IvxG}?>LC#DRNN4qbEqSGIafD z&-LRy*G~}e1Am|-^ek4GYNkks#B#P?ZZEIlMmrV4Bp+g@jaB)~U7X;)6?k-i|B!NK zxI;y0m3bQ{33d$82mBZ%Sp0XF2pMJt%S`__lc>WM?H9E!&=;Y?<-X0?gJEj$RLsXi zX4f7#>J`A9WMo3hkw>9u7M0NZ>g;Oy5ylX{r=cvsOqIFTx&wZakwTAA{YERl#?BV z4Ynb~$&6FB*ThSl*s*WgDL=>D(-t8J@U$IvwGEiwqPcNJ@SqS`V70reBL}(T0#kP_ zlzaarqqJUXS}{}oCwkYy^psXIqgPGl6TT|y6v_A=ixzk$2ff9!`esU5DBuy#2KWWj zN78hM6+Mb;Yw90Iqrbap(Vxdw+ANUA8>8DL$DPN*pq9LDE=}Pe z@AS&7MS}4Qe8%QEn8eNVC#LT_oEQ((Kr}|J1Jal?tvN*0 zwG_knL4CC@h(aS37A$$&+Y7~jLB-A4z$M!7|L!d$2P4##md2-#2led*rV;2=rc#~x zi1jZqH?WfDP7%q;J@k9(DdNNB@k8^C9pPz#dSKl|X=Q_XLIszKyZjt&o+mV4wkOgN zwi1;z{ExZiAolOx-oO6%iMqDkPxpUB-hrQj)i=YPi-F$I`nWK$?{HEn&<3b|mbLZ# zGFJ$30Sic9Wv9HN??G~<+m!ra>%@f2EM8?FEcYopx?nx_LyUH0vW~(&jq$dQ; z9Pi*py|7vVmLgnj4K@1EvjcQBdqs3WdSqp6H(LnbFq|}uZM~?6BXkeE9@gkp;@A38 z?fy<#%U4oSclBLKE=_$jTrni94ECj#5o)B!p$@uJr?S_9_AHdq(x+*gyOyV!wFaO^ zQLX{Krz0t38?u_Vtx*Fl=^(eSNN?tGLaFi#SWC-v>+xEzSZFc-xBB*IeD%Gdyq(mZ zpwSx|s*_>{wK^Xd`t$~(v1%hyP=i9aQ`2Z-yHZkIQ`2aY80IKBFBYPFDM^_2j4?_+ zMsGA|2wxzess-hG5Nx2KgEUN{AtV@KW3_*(Y35HH*i?hkZHA>&=ZZMC9|#gA=>KEw zO@J)R((|C(RU^%4G&7c3+i0xisYe=R&rDUnH5avJ$$a@TE4y;*e3@0%Bcq&`nJ>Fb zQ(e`r%Ic}n%*c`#$->$!V=SjgW!+;>bau5(U1|&lSc7VYm2t1>y!UNnK4JOy0MM0z%)tFT!$KEsJUtB_(0q6=&(VD4dYx(Z>?p};`;GF@|B zPQ5cFOwD!VE49Gw17rysnwsoZ-&Rx5fCviU6nm)Y zwVbfMRcueF3o@k#Pl@TpgEwx^J~KahV|?$y>1SwfC-PL`aV=1o2~+`)YBD@$`FJJZ zN@a4jMS&6DS_pv@X=toNtxb0;; z0#SV3!qE*F--eANn;7acDNFst(J~GoTMtZvjqE(*b-9(|l<;as)<{~7J=q8lY2QtG zTX}4GGU2Sdi?tSr+*96ylWsYul3bW!RFV*_*d#D9WVa!=GUEuJG@T(4q>kAFHb*B$ zzaa0)ZPRI90^)%<9>Q$K%Uqxxi%IP=uV>J#gJlqM+rESyZMR1PNkDyx2HntZE9M9w zHI6JzQ%;LTyfilA`6%H^qz{e-9uP1nKc;~npLI)hNtGc}7L zwv5ebs0q%ULyMQ_w})t%+BWrzYHemoA;nGKmEl=5t>az=?+S>|B?Au*S`@FsvS>MM zb4d*huOS>ixH|u>fc&+feDq-Exq;qxdMg$@1JnR$i!eUE#z=`fAdQUM>HBI8HT5Mp zM;;EMYvkea0KyCdv}!o(AWgH8qiViV4DfcJX$$#Ligt;(oSl#T^>-; z6i?|6;Er&I?L?3GmPs&^}FO_t%(sArQ;9dFoJ&fTJag;M*`T11>X&+G?Xj(S;WD@Q?J7GXXE+@)Mt z*mt0@lR2rPAdbh^J{~L@J6}Lhs(|o=wJ2>u6;4(fZ>)Im6jAEzsMXcs0cf8|Q41)D zL)d2G%~{xz5zxCM559~0Tz9ii@ougZmH|840z`{0}71$@MVzh2xW0mZx`2N4y|?RQ~}a3=!*Mj zM+Ut#$W|ycodj7NgaP6plzWGZ2lN441T91YLg>f?e|Had(-SV^VExg4JzLUvl*RM( z)s(MjQc|4{Wh+{w74M(|(}?6CP3elejPesRf5J(uPOomXSyDvk_I3+ck7sn!L5NN| z&@0MIz6OXl8YnH=sudWGR~5A2U_4w7VP7AgpU)p2k6%AqIDP$0B21Pa`jJ!)fV+QFB`gZ<#94Ka`M zgPVY2B6`a>VGzL&iaiqq+daPS>(F95wIgKTYbG_zB6CwKNa{aVTSQzDfLi7HUL0MA zusSNcm_s67V91Nr?dhSBwXvpoJR^59^-v@Uu}zFm z2UP;kJkV~z6eqLELAc9sH5lmhE-|=SzU2Cs)1ZeDOqA)1IZ8})g+ra;)~;pJEL>7# zIm>ez7m6vB_ZXD@XjjXnxS|DsWNdJ~AU&4{XEBOdnPmvVa9N8{}kLAMTf;IRckEtcm5xwOO*akzu(DWDKvT@vncC-T5j zSZd7;BRD5ygyy6fJIMdm%{`7I5f<@%B6WKl94qm4uKC`+@{q8Tk4=qqC=iY?F~ zx3&-rUL(iLp4r4R4}{bvNHc^{<&2R**iaNjyQgko)^6w&SW#D|aZ{N=^~B=)r ze+B9`CWWUkOO&`@)M^RjHY90GEmj^MMy5MRUDj%I3+hNBIpto$QgdH#t!60^mNgFw z84afLff%--)jb0i%8O^{C@4wqd&7nfd81Itn_d~$yyLW|S>i#6lauCKT$qswsR7gH znM=Bhzr3OcTG}trd$)Nm95T>NA$sl|FGZQu#suDh7Lx>%=)5`3K!ou{o%~D4>yfHV zECg(57ZT_0CtiNzB`qly>mAc3RSS3j2<$yAR=`h><&nn$hXpXUz5Cis_NQA6t&2>N zPkPd@9|VpqecLKIhB{Gf}5KZC`Nrk=87bgS<869Z65x8`Y6 z-8fG?tUW3O3ut9)6HpUN?6<}QZ`4ld-G&rly*`CQ7*+?R#SwV{Yvs5R_Am&=IKk-B zcy42hfts^xFoQdqa6a*jX3l9&sr+HE2<{x>F}0-AEe~>wRu9vI<5;{AF^l2rhOle| zYz>~D{#y$My!P=i(p`H)SDIrGMnVEM>YgXm!sFf{g~2~80!%h?hPuj6X(IFiF>jBL ztr(1KO9?wfn1&ro8C#HUnyc0c_933HFPZU^&f1rxRCe4RvTp>jnC8lCkGXS-;QF0( zgwg)E0r#~cl+$iF7b9}$lOyil*+&Fi`)aOJPGgi}18olD$EBc@P7b&#tFIh2w65FV zyN%NTwlU*FsPisDL}Es7JyMU?X&`0w`k6)!8@x2>65kDF~@5gH#T;6wl+Z zMLy5+nUlMU4eVOpEDi+Kcl#+hPt9B)K-CGSqEl3pG=&DjK*3QfdEU`$i-f4HqvQqS z0(0yri^?8@vNIVIY1(iB$T-~<-D<$Ve8ShJp#0CsYnKclaJ!h+?7eIw8;h;HjnUS0 zs~YkYi$9#wqMejcS=?b1xSK5>US{69fuR^D16R{3+?HgM|A$-xnPSg0U=pO6 z^Z(X(uu+_=T0@GSB#>TC>Xz#Y#}HEwi`vcV8hs}K@J0Jbju^dL?SzO1p|Bvx4MHb- z*e9@GMpRoGHH%uWU9;^!z}r)VvQX2Dg`Q>dxCVbSA5-5WB}{!u*v9y;OhTGrBImy{ zpz}wx6Lo4N5Xx!pCi@xK-$tC4Jtlic4HC~p_7qbWu(4IuRbC={4_`;y6cPcFs@V*2 zT!Vdvr!>WM;OtJ3TO1G4fd_%YB9oI3R{-hzTcpwho){tWeGA6r8RB^ufY)Wgj{1!qBKr|#H2QqP-|hPGYQKniz?V1QU{ zU%6_;Zgl&P<2fNZ9J^tNA1%u&NYN=FQ4{YsHY%u|BzDgxybiJ%cdy)nA%z(kF_gkIR}E zanI-i6n`-KKu03-{EDsP7Nss7&eb<)@32>xMFxKt8pAf0Wg#fI0{}8_b8$ChdhyuCpD)5YdMv_+Ay3ff@t1 z7;GgiBTV0rq)Nj~s3aAD$OeTfV5|?F3bB^!ZE2Buj?H7SwQxe%fs$W|y)N_~ zHLfn{bE>z#SUjSRrLY9B-`sg7eW_F zf}{or!KPq~hJkbUxyf!Xc+%mgZpYc~(bhToflI|z$Y<@q4^m0odKSxlkVy@dWE1y#U!&h!J}bcr2d-|YxZ*}r`gy#;NAO<_wBzvC56 zWu|s9BW+kdJB3AFNRQ$A4Q}ml>maNW?8Hc71vP&<&Rd`* zMUob&=Ea2Vfn^Id>k*|#Lfx=?lT}QCyVFH$%|ub6Dz+z^tK(NX8I6J4Ehg>n#mHb} zMg~a}7?w9_ggRyh`yq5SA}O16!wnLNY(;Q_?A8^?zor^nrm#4XodHDf+dTHhhf73Aky zz7ffqQ${o4xotqvsI?OY%08a4uJ%c5iMyo602GQja+!sFNaSG00D%@ykBT{r+Km-7 zIfW&IaRn(?kNPOrR!xt4_B;LDuMyCe{~H!Plp1RmcCi~leC+sEPj2blWQgRPMC*~< zeF_Q88(K(UPRU0*d}5lMw9Z;byD1Lk{z;mypAkJ+L5&n~idczd;sX z()?|AB_ogXQx_pD5W1(+yrg{$tYcPENF*a_fEs9Jl_5U2Bj5mn>w{4zuOu8`>LQQO z-mkWU#} zHA{cmW#ELnR7h0=rEi|>xL=HYa^FYq`Rl1+e1~#xSV4h!+D~qWk3PsIexy z9oz{rD}$EsJsUgQMrk?ML~rFAR4W?_Y_1ItxRy!EyLN^ck~CE*kYUsa!Bh;|fbr_V zI+5McG@f$O!9|I_R%f%Vx&ykzMf%7nRF^%~fWFo&f1c@^de@g$mKIkAy}@vKu|MdI zmgXNBbeA{anP=3ZF@2Gl&G`gB7)7-~j(8ivt*F@A-8(!O@87J8JDYI-9LYbjgnMLP zJGQaoVFe>?7&Y%5yaFGx9SfrbcSxR<5FWL#FcGGAs3+#w(0b|ykQ#G$nl6&g;|&A; z1oF>^5Za~sJ!j%QXxL;wT}Y_RzO2=xB7pQ@;!I4RVuw)4GKg#xZ47nAXDGPlbZo*x zHNDcwq}Dl%Fz?O!cn6`#qjt3+HEo5X{}A^w(xraLXl{Le-a&kB0mK|h+r0kr@s=@? zwC47l<%y{FY3IS+faU8E83eP{3CA#=BfLT(1ftAbYO8NB^)(_1IbDhE)-M2!bqvpw z`Hr(DNlF{JsFu~|+Ha%$Bw@!UHwil|pkY>MXI==#8F#&JE}el1sITRa(5{CjZKTnX zLsfQ3!@!oA&j+^@(X&AsbZ4pNbh=Y zrQcoYFRzS7-KFJTe>A_gv_bX|s-x8+CDnvXVz`>+qQaVh845x~Z>>W}aNL3Z$-V{h zF=EJe^PLQ+vC4O_g>VR)R=5H$!RG2;a@y8G(q20r+E_&rUKoh%ZzFpHv%3Y95Pc>k!lDIUT>;dWzd>pUrB9WWyiP9Mlsd2o1?c-Yr z={~!EI>(tWvk>GI=s~f*dFUaE$pUC;GejGQ z(TKfJi;I^r)9{*P`2^zfWfAkZ+5*zh!K$(g^t(M4Vu&?8R9&HedycitnOsB$L!8ZLXP*n%)AHS6 zUIU@U`s`vBTjk9@+Ib8!1jtt|I*@OkJ$QZ4Ke>D1syjP+EyP5fvyU)aV>R97EzJ0h zo8XJt1yG1)4KTj6l^$Y>C|XIaGCB<{S~JpA0koD2LkX?yOlZOv1(R(cQE4DxT2h{9 z5djCVEjl+_rsg}!?DYJQFeaBT3J}D~o>(SUHETSS@TRze-H%b*zJA?srEgk)TBxNZ z;L?}+;i^xGur!XPQ(cQbrRh`$tk+1k;$s(dK5b3(PJMN&J(;^ggFJxPb?jzz38CD#tj! z?OT%ZZqQ{=;&!B*5DNo1FXb_N%tj2#Y(8(?5<4Ak%w7aB5(UY#q_S(GuRXy9W&%owLtT5?UWJ<{Vq zVTr0^vcS~RHI2Aa#gusJ1ullD@3|7D_l8y5Kc=Z%-Lbk3^;?2n8YsKl!p zXMJag1=-5?C7@oQ&$RQ}W2kyXj}tUxva6d>)_{7P(>m@+n4jV$M2+>aWKRt5;ha z>En$Y75Ot2G6`fUZ2f#k5x94Vgly9y9D$RsXoub9hM8ao8#|&7s-R{!`LH)->Y(zH zlr7VjiN;>eP^@=GD?S3%3toC@9Vp}_>I=0KQZ=opaBewiNNW}&(HZj8gFN!5?(o+@ zS^07j8>vNMjCa6++Zq(5ynG=$>zR399;n{{I@DuB#N z$K?W@4@J*6$pqm2gTt_hZ;TTR2bV<{h`;n9uxEn&ec#YL@j1U0WbR?c>wu|%!2)Ey z?c>!1n)FnLdl*c5^XImF;gZJ4x6pFhLii~NS!wf8h>|0Yiw1R!_^=Q6=l9R<-hUNx z6%5(t?h!&qFbBfq&SZ>u^U%uCe1STXUBtNWJa=@s0pEu0$#aPr9q(?$-C4SU%lpOc zAn?7QeL$`pPHmXXDtWpJG%eeR-Y6Jnz`QwHXYjW=qWN}9viQ0{>0<|n2#WqX?h}~; z2hyVHw*))k0L->Lzmvg_whm3G>`OXbcHS_=Am4{{9eFymk>v;g9n%&pqLzOU1Y(ZY+G70tFS<5<2Qo{6{DEbQny%>zLy4^7bnjNBB zKh8kY$GG^cxTKB|tKQf^4`ih5rdYn1>oC3AmUH(&QWDw&BYxG6Rn`L_dK>>~)LC&6S5J|Z@ow(&Bq07M;7rVfltc%4>wh4G<;l)U5bgjYXf)s@Te=nQOcH!j0+Ym_wzPm=l`IS~e%J#d8_Q6{Lt}ei zN-3dP{Kf*J>c5*bRl)BUsYin!pk2Q*E9^6=pUg+PcE zV2b-ZQDLpS4gPNn`1F-AwlVKCCg=GSB4IHLk+5iDgIXL$AKl=Dkz$Y-DVNptY4t+^ zzU&j8l);-RoY%FpBWtErotUtr>E_1j(Y8`UVz0(deDC*mE^VYo93Rgfz7C;Vk2}B^ zf~0$t+xpTC&t1Q+Q*oV6hBBQ=aHL8s z(tUFLXOI>VU}nhKif95z-BV+iOS`nKPi=D$h4rBOBn4Zmt3yJ=jAI9h5s%y5)%9DL zCtNWM-3rp3kr@}MRPLWZWg9bY1Bq3NHO^hiUp~6!#W=(V8$FPRaChynZ?Tr(QrT_5 z-oVjmF3vCw9)W3eJVsp5Q<{-0Z|!sp0_gg@q0*=Er_E>2;8i$Y76XBQh}E zT*yqptsXSZn!@LWmG|MhIh|h|JlVLr@j&PpSAdM;wPK$#+DVY_`PQ{d8n?6>H6Ixx zo=6o*1v6_<&*ugk;-u&`C#u$w3?Pk-QSBghv7@j66Rm4?|0WI6rTeA@TEm{U2^kti zVtIP+u_IR=moTrJ6wZj*9;-os@+kQL^1wlJ zwC`&!RQ18`yXzt%4mu6yOlg|IeAG$j(%Q`|-nvgLzC!vRVsX<`5l;rg4GUt1XKrWV z%z~T~QWxkTl=sR<2SLU$I&sdKTPm;UtA*k{Tcit4LM_6R7}q8>tH(AWL2Pi$GJ>^c z=`Ms`CRiduCo< zGgtXpoS|2XM-b9lJzqVXzk2-U?B3(Kjd{p{kVlNxpc{GP(kjxMV#VB-2r XJ>& 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 M#5y00i%s|c0t0`t0ssI2 literal 0 HcmV?d00001 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.su b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.su new file mode 100644 index 0000000..cb0488b --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.su @@ -0,0 +1,29 @@ +../Drivers/CMSIS/Include/core_cm3.h:1480:22:__NVIC_SetPriorityGrouping 24 static +../Drivers/CMSIS/Include/core_cm3.h:1499:26:__NVIC_GetPriorityGrouping 4 static +../Drivers/CMSIS/Include/core_cm3.h:1511:22:__NVIC_EnableIRQ 16 static +../Drivers/CMSIS/Include/core_cm3.h:1547:22:__NVIC_DisableIRQ 16 static,ignoring_inline_asm +../Drivers/CMSIS/Include/core_cm3.h:1566:26:__NVIC_GetPendingIRQ 16 static +../Drivers/CMSIS/Include/core_cm3.h:1585:22:__NVIC_SetPendingIRQ 16 static +../Drivers/CMSIS/Include/core_cm3.h:1600:22:__NVIC_ClearPendingIRQ 16 static +../Drivers/CMSIS/Include/core_cm3.h:1617:26:__NVIC_GetActive 16 static +../Drivers/CMSIS/Include/core_cm3.h:1639:22:__NVIC_SetPriority 16 static +../Drivers/CMSIS/Include/core_cm3.h:1661:26:__NVIC_GetPriority 16 static +../Drivers/CMSIS/Include/core_cm3.h:1686:26:NVIC_EncodePriority 40 static +../Drivers/CMSIS/Include/core_cm3.h:1713:22:NVIC_DecodePriority 40 static +../Drivers/CMSIS/Include/core_cm3.h:1762:34:__NVIC_SystemReset 4 static,ignoring_inline_asm +../Drivers/CMSIS/Include/core_cm3.h:1834:26:SysTick_Config 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:143:6:HAL_NVIC_SetPriorityGrouping 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:165:6:HAL_NVIC_SetPriority 32 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:187:6:HAL_NVIC_EnableIRQ 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:203:6:HAL_NVIC_DisableIRQ 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:216:6:HAL_NVIC_SystemReset 8 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:229:10:HAL_SYSTICK_Config 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:344:10:HAL_NVIC_GetPriorityGrouping 8 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:371:6:HAL_NVIC_GetPriority 24 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:386:6:HAL_NVIC_SetPendingIRQ 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:404:10:HAL_NVIC_GetPendingIRQ 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:420:6:HAL_NVIC_ClearPendingIRQ 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:437:10:HAL_NVIC_GetActive 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:454:6:HAL_SYSTICK_CLKSourceConfig 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:472:6:HAL_SYSTICK_IRQHandler 8 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c:481:13:HAL_SYSTICK_Callback 4 static diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.cyclo b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.cyclo new file mode 100644 index 0000000..a9560f9 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.cyclo @@ -0,0 +1,13 @@ +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:143:19:HAL_DMA_Init 3 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:220:19:HAL_DMA_DeInit 3 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:319:19:HAL_DMA_Start 3 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:362:19:HAL_DMA_Start_IT 4 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:416:19:HAL_DMA_Abort 2 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:457:19:HAL_DMA_Abort_IT 26 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:502:19:HAL_DMA_PollForTransfer 102 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:603:6:HAL_DMA_IRQHandler 58 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:693:19:HAL_DMA_RegisterCallback 7 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:744:19:HAL_DMA_UnRegisterCallback 8 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:820:22:HAL_DMA_GetState 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:832:10:HAL_DMA_GetError 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:858:13:DMA_SetConfig 2 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d new file mode 100644 index 0000000..6e26c6b --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d @@ -0,0 +1,46 @@ +Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o: \ + ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.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/stm32f103xe.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_flash.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.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/stm32f103xe.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_flash.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o new file mode 100644 index 0000000000000000000000000000000000000000..243492bc0371cc488b11243a9ff530eae6524866 GIT binary patch literal 789152 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

    B~{>D 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]`^@6@b+8M9RV^e!U*`wvb>@pJ=^k# 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∈fXo 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 TJCR11lQXovhF6m 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 literal 0 HcmV?d00001 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.su b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.su new file mode 100644 index 0000000..63b0da8 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.su @@ -0,0 +1,13 @@ +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:143:19:HAL_DMA_Init 24 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:220:19:HAL_DMA_DeInit 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:319:19:HAL_DMA_Start 32 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:362:19:HAL_DMA_Start_IT 32 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:416:19:HAL_DMA_Abort 24 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:457:19:HAL_DMA_Abort_IT 24 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:502:19:HAL_DMA_PollForTransfer 32 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:603:6:HAL_DMA_IRQHandler 24 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:693:19:HAL_DMA_RegisterCallback 32 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:744:19:HAL_DMA_UnRegisterCallback 24 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:820:22:HAL_DMA_GetState 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:832:10:HAL_DMA_GetError 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c:858:13:DMA_SetConfig 24 static diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.cyclo b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.cyclo new file mode 100644 index 0000000..cf51798 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.cyclo @@ -0,0 +1,9 @@ +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:143:19:HAL_EXTI_SetConfigLine 9 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:238:19:HAL_EXTI_GetConfigLine 9 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:317:19:HAL_EXTI_ClearConfigLine 4 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:370:19:HAL_EXTI_RegisterCallback 2 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:395:19:HAL_EXTI_GetHandle 2 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:435:6:HAL_EXTI_IRQHandler 3 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:467:10:HAL_EXTI_GetPending 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:499:6:HAL_EXTI_ClearPending 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:523:6:HAL_EXTI_GenerateSWI 1 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.d b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.d new file mode 100644 index 0000000..fd1378a --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.d @@ -0,0 +1,46 @@ +Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o: \ + ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.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/stm32f103xe.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_flash.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.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/stm32f103xe.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_flash.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o new file mode 100644 index 0000000000000000000000000000000000000000..b9db55c880323b6a4c8037e8676b463438b42194 GIT binary patch literal 780308 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

  1. IW{rY+ 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 z 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 literal 0 HcmV?d00001 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.su b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.su new file mode 100644 index 0000000..337023f --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.su @@ -0,0 +1,9 @@ +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:143:19:HAL_EXTI_SetConfigLine 32 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:238:19:HAL_EXTI_GetConfigLine 32 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:317:19:HAL_EXTI_ClearConfigLine 32 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:370:19:HAL_EXTI_RegisterCallback 32 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:395:19:HAL_EXTI_GetHandle 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:435:6:HAL_EXTI_IRQHandler 24 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:467:10:HAL_EXTI_GetPending 32 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:499:6:HAL_EXTI_ClearPending 24 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c:523:6:HAL_EXTI_GenerateSWI 24 static diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.cyclo b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.cyclo new file mode 100644 index 0000000..b79e62a --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.cyclo @@ -0,0 +1,14 @@ +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:168:19:HAL_FLASH_Program 7 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:267:19:HAL_FLASH_Program_IT 4 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:332:6:HAL_FLASH_IRQHandler 12 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:606:13:HAL_FLASH_EndOfOperationCallback 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:624:13:HAL_FLASH_OperationErrorCallback 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:657:19:HAL_FLASH_Unlock 3 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:695:19:HAL_FLASH_Lock 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:712:19:HAL_FLASH_OB_Unlock 2 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:732:19:HAL_FLASH_OB_Lock 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:745:6:HAL_FLASH_OB_Launch 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:774:10:HAL_FLASH_GetError 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:797:13:FLASH_Program_HalfWord 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:826:19:FLASH_WaitForLastOperation 9 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c:914:13:FLASH_SetErrorCode 5 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.d b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.d new file mode 100644 index 0000000..1976d5e --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.d @@ -0,0 +1,46 @@ +Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o: \ + ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.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/stm32f103xe.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_flash.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.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/stm32f103xe.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_flash.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o new file mode 100644 index 0000000000000000000000000000000000000000..572fd9d9cc78a8c675e6c49d9ba3734750341d5a GIT binary patch literal 783320 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 + * + * 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/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h new file mode 100644 index 0000000..8e33366 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/License.md b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/License.md new file mode 100644 index 0000000..ae1421a --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/License.md @@ -0,0 +1,83 @@ +Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + +"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + +"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + +"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + +"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + +"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + +"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + +"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + +"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + +"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + +2. Grant of Copyright License. + +Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. + +Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + +4. Redistribution. + +You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: +1.You must give any other recipients of the Work or Derivative Works a copy of this License; and +2.You must cause any modified files to carry prominent notices stating that You changed the files; and +3.You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and +4.If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + +You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + +5. Submission of Contributions. + +Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + +6. Trademarks. + +This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. + +Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. + +In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. + +While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: + + Copyright [2019] [STMicroelectronics] + + 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. \ No newline at end of file diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_armcc.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_armcc.h new file mode 100644 index 0000000..7d751fb --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_armcc.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_armclang.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_armclang.h new file mode 100644 index 0000000..d8031b0 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_armclang.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_compiler.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_compiler.h new file mode 100644 index 0000000..79a2cac --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_compiler.h @@ -0,0 +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 */ + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_gcc.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_gcc.h new file mode 100644 index 0000000..1bd41a4 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_gcc.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_iccarm.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_iccarm.h new file mode 100644 index 0000000..3c90a2c --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_iccarm.h @@ -0,0 +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__ */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_version.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_version.h new file mode 100644 index 0000000..ae3f2e3 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/cmsis_version.h @@ -0,0 +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 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_armv8mbl.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_armv8mbl.h new file mode 100644 index 0000000..ec76ab2 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_armv8mbl.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_armv8mml.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_armv8mml.h new file mode 100644 index 0000000..2d0f106 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_armv8mml.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm0.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm0.h new file mode 100644 index 0000000..6f82227 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm0.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm0plus.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm0plus.h new file mode 100644 index 0000000..b9377e8 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm0plus.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm1.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm1.h new file mode 100644 index 0000000..fd1c407 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm1.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm23.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm23.h new file mode 100644 index 0000000..8202a8d --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm23.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm3.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm3.h new file mode 100644 index 0000000..b0dfbd3 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm3.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm33.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm33.h new file mode 100644 index 0000000..02f82e2 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm33.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm4.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm4.h new file mode 100644 index 0000000..308b868 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm4.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm7.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm7.h new file mode 100644 index 0000000..ada6c2a --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_cm7.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_sc000.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_sc000.h new file mode 100644 index 0000000..9086c64 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_sc000.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_sc300.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_sc300.h new file mode 100644 index 0000000..665822d --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/core_sc300.h @@ -0,0 +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 */ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/mpu_armv7.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/mpu_armv7.h new file mode 100644 index 0000000..7d4b600 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/mpu_armv7.h @@ -0,0 +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 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/mpu_armv8.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/mpu_armv8.h new file mode 100644 index 0000000..99ee9f9 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/mpu_armv8.h @@ -0,0 +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 + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/tz_context.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/tz_context.h new file mode 100644 index 0000000..d4c1474 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Include/tz_context.h @@ -0,0 +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 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/LICENSE.txt b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/LICENSE.txt new file mode 100644 index 0000000..c0ee812 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/LICENSE.txt @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + 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. diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h new file mode 100644 index 0000000..412525a --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h @@ -0,0 +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****/ + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h new file mode 100644 index 0000000..6228edb --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h new file mode 100644 index 0000000..ce96197 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h new file mode 100644 index 0000000..6ff1109 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h new file mode 100644 index 0000000..7b2304d --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h new file mode 100644 index 0000000..d861f50 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h new file mode 100644 index 0000000..e42e8c0 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h new file mode 100644 index 0000000..8cd21b1 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h @@ -0,0 +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****/ + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h new file mode 100644 index 0000000..1dcaeed --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h new file mode 100644 index 0000000..2973944 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h new file mode 100644 index 0000000..56bcb85 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h new file mode 100644 index 0000000..2b1b4ed --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h new file mode 100644 index 0000000..f0097cb --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h @@ -0,0 +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****/ + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h new file mode 100644 index 0000000..d0d0830 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h @@ -0,0 +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****/ + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h new file mode 100644 index 0000000..999f62e --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h new file mode 100644 index 0000000..6f1b5e5 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/License.md b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/License.md new file mode 100644 index 0000000..74a956d --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/License.md @@ -0,0 +1,27 @@ +Copyright 2016(-2021) STMicroelectronics. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation and/or +other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors +may be used to endorse or promote products derived from this software without +specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c new file mode 100644 index 0000000..f4824ab --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c new file mode 100644 index 0000000..a89150a --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c new file mode 100644 index 0000000..c9bc061 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c new file mode 100644 index 0000000..60030e8 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c new file mode 100644 index 0000000..50abf92 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c new file mode 100644 index 0000000..ebd6f8b --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c new file mode 100644 index 0000000..cd3563a --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c new file mode 100644 index 0000000..c2d810c --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c new file mode 100644 index 0000000..c757976 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c new file mode 100644 index 0000000..95b5568 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c new file mode 100644 index 0000000..e6e1b4d --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c @@ -0,0 +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****/ + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c new file mode 100644 index 0000000..b32c0bd --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c new file mode 100644 index 0000000..f15cbbb --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/STM32F103RCTX_FLASH.ld b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/STM32F103RCTX_FLASH.ld new file mode 100644 index 0000000..ef565e2 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/STM32F103RCTX_FLASH.ld @@ -0,0 +1,187 @@ +/* +****************************************************************************** +** +** @file : LinkerScript.ld +** +** @author : Auto-generated by STM32CubeIDE +** +** @brief : Linker script for STM32F103RCTx Device from STM32F1 series +** 256KBytes FLASH +** 48KBytes RAM +** +** Set heap size, stack size and stack location according +** to application requirements. +** +** Set memory bank area and size if external memory is used +** +** Target : STMicroelectronics STM32 +** +** Distribution: The file is distributed as is, without any warranty +** of any kind. +** +****************************************************************************** +** @attention +** +** Copyright (c) 2024 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. +** +****************************************************************************** +*/ + +/* Entry Point */ +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 */ + +/* Memories definition */ +MEMORY +{ + RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 48K + FLASH (rx) : ORIGIN = 0x8000000, LENGTH = 256K +} + +/* Sections */ +SECTIONS +{ + /* The startup code into "FLASH" Rom type memory */ + .isr_vector : + { + . = ALIGN(4); + KEEP(*(.isr_vector)) /* Startup code */ + . = ALIGN(4); + } >FLASH + + /* The program code and other data into "FLASH" Rom type memory */ + .text : + { + . = ALIGN(4); + *(.text) /* .text sections (code) */ + *(.text*) /* .text* sections (code) */ + *(.glue_7) /* glue arm to thumb code */ + *(.glue_7t) /* glue thumb to arm code */ + *(.eh_frame) + + KEEP (*(.init)) + KEEP (*(.fini)) + + . = ALIGN(4); + _etext = .; /* define a global symbols at end of code */ + } >FLASH + + /* Constant data into "FLASH" Rom type memory */ + .rodata : + { + . = ALIGN(4); + *(.rodata) /* .rodata sections (constants, strings, etc.) */ + *(.rodata*) /* .rodata* sections (constants, strings, etc.) */ + . = ALIGN(4); + } >FLASH + + .ARM.extab (READONLY) : /* The "READONLY" keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */ + { + . = ALIGN(4); + *(.ARM.extab* .gnu.linkonce.armextab.*) + . = ALIGN(4); + } >FLASH + + .ARM (READONLY) : /* The "READONLY" keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */ + { + . = ALIGN(4); + __exidx_start = .; + *(.ARM.exidx*) + __exidx_end = .; + . = ALIGN(4); + } >FLASH + + .preinit_array (READONLY) : /* The "READONLY" keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */ + { + . = ALIGN(4); + PROVIDE_HIDDEN (__preinit_array_start = .); + KEEP (*(.preinit_array*)) + PROVIDE_HIDDEN (__preinit_array_end = .); + . = ALIGN(4); + } >FLASH + + .init_array (READONLY) : /* The "READONLY" keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */ + { + . = ALIGN(4); + PROVIDE_HIDDEN (__init_array_start = .); + KEEP (*(SORT(.init_array.*))) + KEEP (*(.init_array*)) + PROVIDE_HIDDEN (__init_array_end = .); + . = ALIGN(4); + } >FLASH + + .fini_array (READONLY) : /* The "READONLY" keyword is only supported in GCC11 and later, remove it if using GCC10 or earlier. */ + { + . = ALIGN(4); + PROVIDE_HIDDEN (__fini_array_start = .); + KEEP (*(SORT(.fini_array.*))) + KEEP (*(.fini_array*)) + PROVIDE_HIDDEN (__fini_array_end = .); + . = ALIGN(4); + } >FLASH + + /* Used by the startup to initialize data */ + _sidata = LOADADDR(.data); + + /* Initialized data sections into "RAM" Ram type memory */ + .data : + { + . = ALIGN(4); + _sdata = .; /* create a global symbol at data start */ + *(.data) /* .data sections */ + *(.data*) /* .data* sections */ + *(.RamFunc) /* .RamFunc sections */ + *(.RamFunc*) /* .RamFunc* sections */ + + . = ALIGN(4); + _edata = .; /* define a global symbol at data end */ + + } >RAM AT> FLASH + + /* Uninitialized data section into "RAM" Ram type memory */ + . = ALIGN(4); + .bss : + { + /* This is used by the startup in order to initialize the .bss section */ + _sbss = .; /* define a global symbol at bss start */ + __bss_start__ = _sbss; + *(.bss) + *(.bss*) + *(COMMON) + + . = ALIGN(4); + _ebss = .; /* define a global symbol at bss end */ + __bss_end__ = _ebss; + } >RAM + + /* User_heap_stack section, used to check that there is enough "RAM" Ram type memory left */ + ._user_heap_stack : + { + . = ALIGN(8); + PROVIDE ( end = . ); + PROVIDE ( _end = . ); + . = . + _Min_Heap_Size; + . = . + _Min_Stack_Size; + . = ALIGN(8); + } >RAM + + /* Remove information from the compiler libraries */ + /DISCARD/ : + { + libc.a ( * ) + libm.a ( * ) + libgcc.a ( * ) + } + + .ARM.attributes 0 : { *(.ARM.attributes) } +} diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/uart.ioc b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/uart.ioc similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/uart.ioc rename to CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/uart.ioc diff --git a/CS323 Compiler Principles/Project b/CS323 Compiler Principles/Project new file mode 160000 index 0000000..a7b3e98 --- /dev/null +++ b/CS323 Compiler Principles/Project @@ -0,0 +1 @@ +Subproject commit a7b3e980977ccbfc6c4a3a5c7844cb0e65bc991e
    Q_e>ZWOO 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

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

    70n<6?o{ryQarZ(PRjG4|(I7fD>Yt)~ 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

    pVaj5Uf4t*C<13bGzxJ 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

    J)Bef?0|zXV@y< z3ne8*kJ&aYqQ|(wRQ7EPji&yL3Y5mr*f4V?CDXSx6C!|w=E#rko>H3d?OfbE!;1Gq!MFTS>!ZlHE=;e*g z+dN-+m#-#=Q3SW1)!r@|ML{+FeMTpxiG=8G)vkctC8E} z9;Ln0jw{k~=2A!+D~DDM+KGPGMr3qbpN|zGm{&N zZ?cr`zDj6}Me1JX;wGbxRWuqLK*#KLUmfC{VYshEwd7uA8H?m8bXM3x^Y(9=+%+rU6vwABEArnkPlUysW3PQ^e#mOTD z$(#|kDz47(MMMGWG+=k76D2@>ynvMsp*noY;>N45;AQu7WW7j*WDW&%m<3%MH^DRl zT4lB`QAg_U9c1{~E=s^oAUpbTr?{CrG52&BzA|C^ycy*cq)m`*;P+lvy z-FnPgv^1fG*f4BUUusx>T*%E%_)=33#5W>i2(hj>*BJK7+$b8V9L{0|zryzzXJnUx) zOvz{1cw2o^s4!24+Tzpz40%AqvuN02jHmTck*?$8$t#k=s3FZbPP&Z66V;{j+s?p)1} zA|k;JQ)PZqAJ{mB`O1+6Dy)u{EneETEJe_A*u1F?s@XQOQ`BeZNv$iOx(5svE`qZ? zRGy+nCR`7D^UTxzg%qj4b;fP%HInoL>4G&E+60!~d zKiN(6`0aRzQ@M+-|AQwYaIt#g=%0S#QS-#3fBK2X%@dFR=_j5vPdxdjpLp6l@${d5 z;trmV^tGG7{f!-x(*wl6Ep}M2=Dd)u^w{V3paI3;rh_FNP!D& zLdsTx=`}LqgZt8k&w`_+)u4sx260ob0@SZCWuR_AoTGUD)qSgI@Pwh_?AVU?4YGk9 z8f%c!Ly(<#k5o4+J838sHv9;Kqy5&b@t8o}U{d{&f>V?RQ%+9@s9PL2!BLFi6Ke)TnZXTV64yJBEu{`(=4Y-}9tsudnCjOr{cW)HITP z$7?3_$wpC6$-~{Vvwj;Pl=S069R=>0JdK2ENX_t~)hW_MFBZ@Zm`|S_ALLF2npv_jf!lU37`v_Agy{==s_*Hn))-56FuJPuy0 z?B5EFHF>e}1x<-ahK~4HEUs}nJnYOq+6z;QdOB#x%JasGXW|^YfMi>wErWaxU%mU| zkcUM`0K8DE2q?0v=Qq!X(_JdS21)*!_T-l{S2JmCVF93xYAfmRzdL$h_~FzUXxD^2 z626Z3kZ{UmfIdLx9IqJ298YA&`Rvid#rdY~hbKDIAxr~|r>m48UY134ykaDTosX(* zChU(ATUr$rRnZRTa+hhOpUt+U!HjV%$GMK@9^?_`i&`|xRiY p7OlDpSu8PKvV{ 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

    Q44v`0n0tEJ1x&fr4 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%0AILp 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 literal 0 HcmV?d00001 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.su b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.su new file mode 100644 index 0000000..9e46e34 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.su @@ -0,0 +1,8 @@ +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c:178:6:HAL_GPIO_Init 48 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c:351:6:HAL_GPIO_DeInit 40 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c:431:15:HAL_GPIO_ReadPin 24 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c:465:6:HAL_GPIO_WritePin 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c:487:6:HAL_GPIO_TogglePin 24 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c:511:19:HAL_GPIO_LockPin 24 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c:546:6:HAL_GPIO_EXTI_IRQHandler 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c:561:13:HAL_GPIO_EXTI_Callback 16 static diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.cyclo b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.cyclo new file mode 100644 index 0000000..8b9bf69 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.cyclo @@ -0,0 +1,3 @@ +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c:81:6:HAL_GPIOEx_ConfigEventout 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c:95:6:HAL_GPIOEx_EnableEventout 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c:104:6:HAL_GPIOEx_DisableEventout 1 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d new file mode 100644 index 0000000..49331ce --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d @@ -0,0 +1,46 @@ +Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o: \ + ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_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/stm32f103xe.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_flash.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.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/stm32f103xe.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_flash.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o new file mode 100644 index 0000000000000000000000000000000000000000..2282fbf96c07b779e6d12458b49a5c0e5cf5d3f8 GIT binary patch literal 775132 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

    u!9}0ooq&6@X#7(44^I+~e_18kVI@*^C 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 r`v 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

    xeRM>g_1N$ZcfMC0n zFn|!il>*t?c1vy#I6O#cc#pPi%Oi&YWx(h{Pg~4BTidRI=%JS2G)e6884*GIq}D0D zdT^G*SX**ZAG~uL`6xIbu!6*fXX)9iJ363f+qGw>o-TNZ=0R{k-8*$j>cOkyVVF90 z?frVDBz48Oz&p`60_qqEZb-Xu0}ZH@vyOix&Qd!AM}+~PaW7}c=#~5%{9jn$7dw^5 z(ynXke*yoCAdGWL`Bt^>(z<8I@`Q1Se-YQc4-FwEg&W04m`&JDj=3@Jf>!R#Y*vK* zqy&D2;MLuk4#Q$DV=)uZ0%P*m=hM;B;ICe zVu`W(1&5k#&K@L%*vzqsG1i*4_-3|{sD#KCmNJh}E=kD~m`w2|3}^uV1dbl3)Mg8g zkG6$bf~|@17F$BF)z9P>nP3Y`j4@jyV`H%2Cs>26mdf1UDt?tKJ3cjN;1?R15F8R^ zsp9wd-$2+Y0Jp?&;3{qr@z%&_8~zKmL zq_o7_f^B$S+ke5rPX%*)l+7Fy7R0}MM~{23$flv;wnp)`MwaG&E}!iW4Vz3gZRV&( zcstxf_}RGNhUUUQaBkc*sKt+AkPYMNS2-Xkv5H#>56!(`8wQR<^3NYynT87jtNw@? z7+{Hs_xsk5`ZOV_Ym1DH3%0~msp9uV1HX7ng2h^e*HnYk6lmf#1)88KI1Ce?=9f7> zh-*!-!@?7o{6XNH0f970OtzTBXiSw@b0d5X^z-kF2#NbAkyBv}jWA(i23vz`Ic8E= z7{7|>SzXcGETXtCIyN*h%Hnu9KZmKbQUd}VQtV67W#IzHiQva7G&V};!+ODo2L{+us#JExRQ)kBxo1l2HmeqfHD#T{@W4*%Sa6TZ%Yg+BQfZ|EwM%!i8cP) z5^I)`So6Ovu~r$0wf=7<2Khw(BKZFIa6`Nks%cJ)BJY_H7a35-X}b8~aA0n$@a`HaVNfhu;B4@-B zz(p+BAwnr&;hv}lp2%jiSRn4d=dA!)B#@jSGbM&t!FASQt$yepd@K1#mm3$>b34x*e4uIl;Wf$k-rk z!x51!N^k3Yl!lGUOj~F|Y+}6GVh`O)12I~z@l)fFND83HXiHoG!nrt`wK?`_6NRY( z{093EBxeq{qyqU!lYiX-c-G|XV?so1ycHcTJ>ooFbZ|l=dz@4offsVB zFwQ~KB#F1cF(z2hB1H8oiFvtEFNJiYF|vfm+stNDxc!}RPAe?RihwTE5)+GLBRVpM zW?;1-e^Wr6+Cepg0t13-n`)Voss_~v3k-0httT?f3@KJiWLO{<&AIfsr?th!CPX$v zn!vA3*Z7$Cso|(AVA`g_g8lh*>+EtAT&^04L>B*<0_;OYE1pA`<0B~Cw!o3OdXBO< zr;%YbImcn&5Gh~aZS?2BLA(Jbd#^;lJzwGibgXb1C!UYbKgx_zDHNxgvnR@oBny9n z%8-{qI&F={i?ucji{p%PbU2%wu0DWLn34pB8+b0s2@MI4HYdV4*|6};NP;m&e&qo< zd7Qy@xMvBd%@1(^MFrT;gA?Gt@FCV39>(Wv|F)6-3k5$=+#3!yTkG)B>p(d90lZc; z0ptiAgA#^+c=unHfEyUfui~1bj?g4DDyer;7gWyMcj|zZ%Y*qYkZ#!5ZP6ID$au$| zZSoIt?Ae@mh_^%s$Jr1Nne3?=(oh!!pPN?ZARxp9Bub9S{`UR35wll2?46SFGzD^K zM+|81ad`XmPZU>zGQK9j@w)7BLupUMEz?q|IPYp|+Ty|; zjDhx-T#~N4&~T4k;y=yt3HDcH3r@7gMh7Fix0!>ZB17y3b0Y+zGFUqkp4VOrwsCcO zTNCUsJbEOK6_J5m4mj%H~9Hb)NEh zBg*IG!T*6T4txlp|DnheoCCpk9nXWfsxfviF0S&okBR+J?I>Pq`=0H(n!9vs+c_brOHx}pE%XZ|n5i_7 zf56)OUSa#b6uSx!iBGsHMm{Y+KdLK-1Kiw{8fU&4yByAT&YQw9U)f^`sY3qlNRZjQ_t zla{*Jez-2@IJwBtYOcv`MSOwLk%)2c&^}l+R?b;hizX+R#BrbOlM~}#k{p#_OFnV- zQelDN6+0P9{5Vtn$0hhhQVG|L)ay3jOqVbmS$OJ3u%y6|)A&8d~{G3^@ zeQ)6E#s6XNAUq$b*+V#c0ou_kv53#;>=xNO9F`nxXjnpMbO2rlAH;HXVb1fGMUXQL z;DU8J%b?OR{0y>elH`)pkjyd!_V-TDPFS$ja(Vv<4cc|{`wP<`GS<&gPW4Oa+Pz0o zhkAbGhLF!XOW36N2hKhhCAE;Y)w8qsQN|w}`oGJR7=zamTA5b|A^rXObi|U=QB|Ho( ziXE2V5I??xR2Iy;Z~lC&+#T0}vfD|X8}6h$Z&ViL)+9E{ih7j|`8NIr_`&rc-7N!! z({h>UHU2{lf?q{0=P`~&RinHrL?l;*sL2;R>>X}wxS7MB${^at=?qdSGaqf2g>v+q zlR_Pee7OB|)6wJb6wz@}AounnW2nT4x7Ru)rAMbWy;72Fw#t=Tcj?o*Ur!u!cflPN zl-Y13lG3TIAK&L+0iWoZoFP1^Gx0$JZvpR!0vskdx@DiKWb-V0-stk+u0-66B^B04 ze-yu(MTYv7>Ny9&8fik{Z*}7BJq}M>1(GtZ{=?N+n+7+sB*vlq7DD+N;dn?1iQ}=k zLr&L}fO}j%Ip&_<#aWg@@qPe78r8jmn}(Vr`1Hl!Ub7>=Q-ZS3Ux$w(L;}Q_V`G|d zv7IY`D~XuRwB48kV^DSF!UsxMxWL7^*2*rJvRLQPhVj$KewJ(R*k?~ua|9~bRzx0r zqKIe?sdi*oEDFAn@S{joBb!*b?K;SQ8ptgeN*O8FfxAK34=YEc#B3f*N#60-qo zm`lGf*)6e{Po-ye=^-tLoEuv{i=-qH5eqI<#FQ#I{}WsCLQsf_i#OS;R3@rYasG)f zuhyx9a%?NG-m;46v|!P?&(M%OKPij&+E8T~Q-Rm(aKXIcm<;J4(K_9YbTE!ex-0Wt^MEYYa`a;%*E1TziKTXCuFW4AFiW z#c=}T5(Sov=U)*27=b1~?&%#pPA-37X2#^Un9Xqs|D4)!B{=&lOr(UE4iBjMAI+u2 z{(alq|4EGERoW|x0c8uwj`8Os<_vHyqBQblqzm7{+r9dTv8j=tnk1JT^?yXK7 z|FUuaFf^%6uMW1*2(BnektAOPGS#vtwfqGj-u<|2dYqk394C#oINEmoaaxN2-oDTr zv#ku4*N+K`Dn9qD{KBS93NH%pHX2hf)*KjJYQ)Q+N`&xfZz)&874uM)io)JRrB=SW z=K|nH%>KqX6YQCL0HyB4jXP(y*q9PNsxy|UotAxl6h@Ss+SuP8A4dh)8p0V{<0HfE z;Zg~p#1g*pjOQrrrZ_8|IPS5zy@Ge3Wv>L5Lh-ML8&ZrY){H$IpdcZp32LvQoqD!z z(45_L?Pj!(8Sp* zslG&5gY0n%1$6d_YOjsks}7DHH?(*wcy#`%6i&Y58>13e3WTf)z;d1zQ^Hv;bCmi@ zs@(Rc<%l@*`PIw6sDD}7P9(>`IXZq(Cb(>P6ra*mvc$*7a%B(NoSmUrfa8(vHM3Gz zMgzEVt^HA&z(pdVx5YKX0)|2?V7zv2gQJj+J|rY2#Ni;k;uv& zb0q@YiR4<;uuG$H7masu_5`b}AL7QyiQ`6rpRll#JCJompr){1_B#c&;PtJs;k2!k zo_Vz8SmIpJoH%YTFgdmY`@O`{J3(12x88AchpJ56Mp{M@S7dTU+ZAz%1QnoYQv4rY zgd`qr$1b@D>D)rOYIf=SjQ;fg`2>cm+;K}aE*^SOu1fI3c^GFz+42ZVj8XO~484B} zvPzs(IBxKk%!|^uIucQ0iVTmjgd&Ww@5lT}mVYUiTn5FB3s|2fZY1VVV7vajSG%Wd1dxxTkd3b;<#twjp2g` zms&8l=xBap7Sk?iiF90Kr32KGC>fO@x;pJTWdA@q$IOb6!Cj5ENg=&@M)H?gOf~I! z8w3H{G%}QqSHOY#y)%yEE95Q*xVWOgI~%UxNIj~_fRXb+_VIQu+R}@Ve_$t)GtOS( zuZ{9Qr<&Xj#cT=Kevom5TEc=8qpVyQR~p2rA;oEgtMj8&dryQo%=Xs@P~ztTUd^Z7^Sbz zleaH*lZfulW2fP+&U0Vh@cXub-vGz$dHdHn66j(8_SjMZH9Th%xNCm31;7Q^PqG4% z+qs@(1>nXTf0D&57vM zLpr~A76!Q1&Vk#rgSfgle<_9EwoC8Y|HSjd+!)DDLgOG?5SO6% zms~kXa9}voI2X)c(k68+KONH1#C^W!B zaX{=gxWN-*iO2XO3#8(VW`1OEr50yhHUYa!vd0La~!p{qFvCBmA<#)sNf z{wEUN4>(dt$13E@Cb;xN(~ny{_7mMwHwkHCm;(_7m-^O*%Q%;Z#^X359TcM@@J*R= z4_atKQ?a@_<*X`dPVL4D7Irn<)PZCfz|0{#!7`Oly-@t)w z-0h-pd?>S+%O&BM$y}U+JMVbfKXVhU?4$5027i^9+r3c&qU-70XO5#(_*pifDud+I zbDk~?3oqHcFRqo{?*4)1AI4tYFrm6(3bV(6w2Nagn9aC&9O)Xf)}h3-RHzyf z-^c}KPmpRNYk?jAk{^{|ISc4vXdAXB1eCh2<_dQbI?FTvbo@?K39;k4ryn<9jvn{c zOKn%qTOM3U=ZNR+E75U4=jd|mG?08(nMJnZKU=uoF$g=d1Xt#C9|A7BCgWWw>E9IaLOccCys8! z;Y=$q0H<2qx7p~1hF`!x&xm4T|LY^7m{|LEVgEX0*%imnZ70%UN=zay|HfP5Esb&h z+O_o$T{~65c!ZaL3FrqXC!KD`qq-jNe6cP;TnUbo&FKr|)>8Q;5+|;NJcuVR6Y@Iz zpCc5s*L?U`koGGSCjJ+5-`d>9kz}i%g7C)Opl0j|0w5_WcGovZJV@9C2>~D}?-zu| zrpJoWN)A0{H1}@oZ@=f9%&b>8D9_G*xQ-bL)mhzLU6qxU@0>w#`83%rFrvm zcXmboFO7&B5>tw!0Dlfaq(D!Ue)a?p9yL(gX=SjqI8wtMtx|%e@0~jupBT}M zRzdYJAEJ67?>7BO=rfkDKk_HR^d@+Hg(h_)uDrb91j066c55*oVM z%M}zV2j2`2NAU8~Cz(9f%Y+0-L(pmL(ix(!>ZU$dLWvozTZ&nM^tghCP7+s1)x8E~ z?hhlM)M)7~aS{QOpmqwusb&uP`{=#F&OoEQy1}GWz5oqSH*mX}Jp&H1wFRjGse9n! zbRNF6No`|tI%4|#6DbE<1e88{UBoxzQ68?Xc@lYE%%4&34c4E;8ZAwSHX>}r@TZ0g z@HKY3?lt~AxPC6yJYgh#1I`AN4S9ja6W@xh}-g+CEm(MBpm~y zk$$E*{WJu15CHz1|dZxf?9FAhj z{I^fi)ruR?IKO@SW^W%K3CSh#crFaHxd7SyJN%c)5+(m-HW*t(s=QxwZHYSe-1M04 zn#&6>bIj@YFtxNNV+j*RZzkuvjT{edHy1Jp-~%hV(BDHh7YsoJxu>{Uy!lDFy!A** zh#tkmegUd<4jFnBHYih5$7 zesW~Yhj}CPs@emj7sq)+9F-6_I5=?zCMP5DkPu=gocM3ApgMJvxG{3=#V15+Fzr0lXg_>$Gjh|`tG9o~*?ge$>zs|k z)6Xu-(;7-wx%`7XY@kyt~p+!qC$>#?o?-AIu^#xW4s{|7@I~1bPqh0kf5<(y~ zPCu7b;hZDfJ}1!yge#A0j@`z?Re?)dEDwxr*`6Av7eYVIcUp9yy%PyC{N<4%BR4&i zuj~#r_`Iq>Ta}X{T9^E`LVs$X0U?`s%uvc&=_8>K9vMPYSvCgWe z^_;!jU3!)ySEsa`kmf4E^c?I~aftgQ8%N(@%rqY6nLtxi;c5NH{4TyVrN>(3bS>s3ql(bC*9VV=x&l*#Zz z^V?p`pKO%GxkWk}=#Wndi0;o8$V8;iMeYQpj_m88VRJ|ARxoKyZ|<*SFCHF_K0Vp| z?ZfuFB}=3Uzr zEq$=L7a?lLs0n#veGGiGL4NTUv2s+KcPF8%}gMDr9!C#)Q1=u zcVm?g)|I%fo3s1C*}3h?31q&YS9fVSFOx|MqjBa#gR*M?e7s1E4xapLFR^L*=^@(8 z#P6FmP|camQTWYzYa%e`@}6;<3T?i;H_unB0v*dH^RtDYM#LXI!=$su#H*ZEWZ7}7 z`<(i=w}pj>;ZVKUSdIyD4S|;eKL}~!dlFqlaLwWS&4b3Tk``~?eR}`ngQYsLF_>>& zuR1+IdXES*t>Q~~)0p#5OOhrvI8USt5525if~k8#t|NZFkW0S+!~$U6w5P}vtvxrE z{T51_=?F2+SLTMuB;q*)4RDuacnG;WsF_NJ9x)Ov`)G1ISQgLlVy9wm zr#^|2bK_&rHMqs0cDiVy3PJ%|2PyTaWcvJ)UL%|iC-LU_HB1lIr4T84<=G6>4LUF} z*I@44&$RSg=|b~c%%D5$_4!LMbvI{jFbMnnmB8yj^;?5&Cz-9y-3h#*c_Au@i9+JA zSHCj3_T<+$A5Dc+w47YuM#q9Pp3w%h(UdclLZ_q2-m`@bL2A zT@KvafZP5WJuWyGH=X=7SW-h-ii6R8uys zUEM*e!7rnX%K%7hM=ALDlF z@C1&4dPZ_%AIogY#CqnsZf*wrUh*7>%r|%DXb91?EPyVTJ$668uECL*BmV`c+xM$3 zYndVT)no+d=MM!Cxt!~>>7A=p00+OE&NC0tIvQweM@vH^0R~+LO|&1GlQJ?OC)CIxrv4RlS>r;U=Rwpyk!XGugYnZxcGA&`X68TDbU5s(%9c!#I?*c8wPWe*o zYLP*WQN>uto>*8pKWw2%nPECcJCGUX-dNwRz>I6!Kt}}403$t4C<~=-mX>C%v}6~w zDg|wiP^yx+$FzYC|XO=X(@eRs3yh+4Rg=9B*ccN9LD9=Qe@}A ziL*}9B$c}S&&3*L$w+-PWcUu$pEdB{l1XfQ=xGYlcyo3Fm*t_`=8i-Nu)6 z(__XL+qTY%coqz}2vbSy8#hZ~3ZE~}>IS4a6Jd@BU8qt^QK*IKhJtYquQn`gT5?az z!p(VaE1*?~Nq#S*L!E2p*y>B&eU>ftO%uXhA9t+a_(cvGXoG=btc`}_D_ zbeGi*SffiUx>(mX?z*@rI>6r4=fMDDiaq`C_dH9RsJ~mD4P&PYQ@l>1luPdN%0+Xf zA$4~v1R6HPC45~7F%)W3J)D5~zgacJ8vDVn>x&XD(slZHzw5MC&IJ~Caq#Rm(bD6z z*zRyxs%1?L2~qnCrv9EDASYBd!HOH<6}!PvuYTs47&nh#(3Ca`9LoaaujQ}}@%3;D zo8DQSj>R>!1*q6@5I@A|=LVR45@%=c+v}&`Lv-#J4o}ZbAS|y4?eh6N#S7U5_|x)|sJU3`akcEm;^ z_<2In2R?5(@;R=w?;AP)>~fdbSmSO?Uo`5?vXo%e)V%ueK;PYvHEHc;yAm|h=e3av zAaL&7Qu!y^PQ_I;7e4Gzaj#Y*hsX zA0Vi1(Hfcg6)9?Q3EUvni{vkHOe>=u?JQ<-F=NUcPO31%NboBAFz1vEGgUX6LpMRU z$gM*n!R#Zdvqmmg;)^sk`h@w{^X!%@xut@DQYK#!su=SGfoS~_#S!XVQp560xJ1?T z)+7Z;osGv(@dPn5Ze;?+ay|n_X#&LZgju@001B1wRxdUmsovnvEe&9hy!MrG=gEcB^5%Lt z`lGNUU)c>u=Q&D)L}t0z&Y5u^*t1>VTwOtz7{q5yEEAQ$IY>GwO2(*1Yk=CoNM~ZXG?EAKC?3b;_H<4j=zYZ}?Y&Q|wIgAg@6m*k&%9 zV(=c%@YP%APriWBn}5pK6pFoWT4w;~4E z3kHv^Qg}S_wtQIwmPhjW`bBFMAsS?u=B(xqMcPluKOXh+k3ssw$&u8JR1wAyaJ2t3 z(k)yIS=;OHb}h7<9+PfE4YA$at!F80j;v8e0;*(uHmNK69Y|xD;T2i<_|4%kgu@Q* zak-wGql;1Bh(Ys~kdQYgHwNS4l2ZeSe!_w=6mro0_MHRtD-%%bmv)qLW7TY1ZFBH+ z3gbtzDHEorLSc>+&yPtdy>R<{i^X>Zg{ycvn@eOLkz2qRCR-E|nZWrIQ3JMAb_zVAQ`N*7gY_MhTiq^PK(2(2a0=e z?m`LAgy&-vbs3$G#z!Y7FEjFflud7P^5v|6Qdn4%|S6ORS=(9z@8Umx)>V{ zbac)Xys*a>${Dd1o@pyqiL}#Bkd(pBoF0ETaXmtk>{%_FUh zX0VQqRL&5y;3_ih5pzE6nH0@yB@e#+jCY^ai*U3PHBU-{11mnRb$B?|pnakfw*WpaC8&yKL zZH^_D;n@v?h{0+*Kt+>gkVD2pl)dwbda5n^J zNQ#ANAn418gxY{zbngN)zuu$osTqfInsXKk+YvQPa}yN7>_<@s)b0-Ld+ZaRw`W#{48T*J zA(*2L9OHWq#{{$IQ88ztT(8GYfYjO0n69MKsZIvi?2@Dhf0w8mPc#5IyFq)Z7z|qkg_M3-$8ppv*2tD*f3PiDZaCs?^Z%= zfa!I#_B;z~4}a*LovR5q%#-+Lax^!^N6}UvTU*~BT0>;|E_RFdKHOS6Dv6Am=PV~U zyDqTPujmEPXkE>vEGqavXcAj>Q47@gT_TjVM)>jNm$ zOyM^^-Ce)mzDJ_M#oJ#$eT?rPa^gaQcbta`>ib~h`P+!EFQI4ph?a(K2K<}zHFEaA zi*B=>o=4iQ`l5Q5^kvJ8*?kpLf&h63eF-N*9^lu@g`B|mxqugN-6(`~$I@O&D8ba- z#p3K};>HUZ==3aiH7@1i0v$5@c%G)&&ig%`Y@I*_m0#p$S>zW%Lz70u3i){Rb&**m zq$GmuvKajWW(#Mk0a!@z8aM;+oY6;k2)1odZ`g9uqX}v$X!~xUvO3xwbEm*^Q@E@b z&@{!=jcs4vpju1!Jk7AweI9zjNO$40DjEa!CEP!Nl^|{XNx;krsYn8re30m_58I!% zuS>PhjpdD&zEv~foJKESkzje;CAPRTV!;D}6AF2QPTKH!W3{D6wLyD&=(r6QYI2F% zug%1k?3BSZNW)+7Hs%xU=UZy)yE(Zm+PYg#k9YIeZ(o1-MMt)3w&rUR?Wsup4zveb z)mY8k*0Y4w;qXK*9lxb?vR@dJ1=aGLm*#tvYSbm^$M6phBL!-jZz^Vxm5$wdj|3=- zCB{C3iX5g4l7ve-?UAf+ksyUHL&gT9+K_zC*X@y2fiz#mt~8nrp{j~G%~$ok6vx8^ zB|46n?q+3ryZGW*MKDq6e)e8dV7m8CMui%tC+d>zokDNJtB7D8nUjq)F?QbBE^fj3 zNv1vsx5H@Z!%dIV1|TnouFq)ziyJdFdE^4P&6uQo=-M#0z)fV);0Yyvf0_> z#(i&S0(W%7ZS*IDd?s{(DYr4h5K>lS#Ux-@CMHq+20enO)OBUtAwCZaIueEMB2){i z5?mggY;TU9NpH^7rOCa+c4L43ngr7j9#L`uh&Fb+&mq<-jocfWk0efDR*p=c;|PCLn$|}M z8s#FoHUdrEtr1Cc18uV}W6oV}PC<@8-q3BDKX-U76`aKhoBXF&k1)q&Crt*ZH0w|# zYg2*fHNaIAqupi`+3FdQf5v?B|IRVu6meeMF6r@Ej72(r7xKuwx#rRW`NupzJ))xm z=n%(g|7bC2W(-IkoW!uwEz!mtMo({HU+>gi) zX3Q18Wd`-JzA4ub(`8R7LX<`iVRmSk)o>MaI#=Wn3!m?s+iPU+fx1g7Rh%nEV{tB$ z1+z4r;m=uS>C6WOh?WK1J7upT7~~OLr1w^C9^OH>5T94=gmtO} z*Gi7Kv>8yZX?~1Vsd|wFWCy3O90E0uj7H!Bo#l9;RK+Cr7{z*XfNZ`h(ojHB=xkMq zEnm%~#0XlSJPErt37>4VDQyZ$)FT?o1zov4tFoFEmA+!xUB_{F9PWXX_D<-#T9Ggl zimjlw^`Z3)8}87yeR%Bf%*>#M)>r~ST!d5}et6&A%;BJbzjN&V ze+Yxi0?DB99$@qpWwN~^Z-%-oSx17vlg*6PmvNptO_(Z@$fJk^2fZpg7{zlDwUsA* zXOn@jWH%-snA9`9%IfP<@S?;+m=>=$`BjDVK@iBC??4e`?6J%@mSV8JR%iw_ZAr>D z>t*j31V|$)2yrJAH<%D|Wb}8vf=3@}Wim4f&y+{-3rNIns`jM=#>v7!jT9$ET z;LQ%1;sOty4NUu_>7=)a5sG>OUgA16HEiL!QMh5LOSV1WD%ti3YJhr`IKx$n%YcpG z@xTpr(4D4YxD2r=bjtO4(t?2v8#r1x0~YlapLu;nN#YD;MCD(mCy_8-wDsvOy;b=` ztcK^$uR0|>z4Lz8yTbF1Xh&oR2lFhxD(HN{we2m$&ARg9pujB8wyx_j8K;W3p#(6! zT+=}hKPN-{R;|3|TD5ty0C@tf)5UUfJFtm%x$*Y8=;2$g2lNczF@Yxpw42}zt-~Jq z^O?(^S^VCvlP=H+TMZLd2**r$6bTlhr4OPB_T~&r43DB)On6PMT4;Wx>l()Hrl`uT z1!HK26Yy`cd5}YP7lZyjdafNJP;w+T13 zVcsK!@gUbnI*aoX62V{Iz5eOxOXC)dsqVEl1xSMteL_Cu`y!DJwc1U>C!b-n*4Z&; z3{_KGYVV8vc0G!G%{k=jmTi=Ex{ufQpf4hlf3kjr3BNbi2!;G45dq)$b>}*XwM-R(2w6+IYo17tW#4_Sg^i%Ka_zd1<68FCZD z5)9#=VWp5}+G|!>^aY=nG{Gu1`hqy(?%1w@1zADPeO!iqhV-?wS?M8M8H%&#hk0#C z?R=+4u#Bm(BT-0KGlwZI>gpPTx|1!Rp12Hqw=e@~%~Iz0$W=Wz_s8BS*Z}GK>`azn zypzMNhNbT3m~?^itg{LE)8?HjL_3yaz?dtOND42JN^a^v^|E}hQt8RbGFeq@`zI9b zLkz~prw3YPa=tjG!S+JHHszB%O>q~5?Wa)R1{(4d1Lt0|s0~oBr;doJm)Bcp-~;4}iwX}>#-lq-Y6oyN2+yahZECRLu+u){zLutCtq|);>{55ophYI>!A5$n znHw>o1~|DBBfTbvG!Wwr!Uqn)r1F8o1A&66RG5d=yN_G6Lt<&Pl1DHFr?RXkFrGq=`lL| za6r*2=F%CdRO)!MfhUJe2aOSY>m>ztYNt;M%7e38NpVmvUQ1}47}e6@1J($-mDRGQ zeNI&Dtr4Q2g-J^by`h$NY{z%8v>9R+K|6dC68lb!&knBv<2tqrL|5P(oDR5rsig%g z-9b$kP#iwl57agR!GIaF-JxgO@s2Hc2u^`izf5iznilhP0z}h64^}DwP-#uULH=7X+r#N-WHO?jEnLC% zHM9@TZ?7R(BH0j1Z7T0>}gku0bI}(KLcLFoXrGY193Zjh?qm#&IXj&Yo7isf(>?EAd>KSiA?Y`=zQ)&R0QESYfD{WDJzwndmOEZD=6?d&!ydUWzj;2_V( zfRmE9hVcz?kFq@ID?_2@I%Yq4na%L9sDCXr2Fgm{mKIbqnY|VR@b}_C#c4h@?aX4r zVqi%2Dtz%BA|*|N_ySUS1(mA_NV~zOx2B&QU=p9erF*ye`0C@Q57b-y^zgGR()HEp z!_Ukk&8i!84vOS)RjRqTD5D^HTIOj>Icv@$d+sU3W^TJ5ixj{x~6 ziT}jnEGIXRb;? z>IBt149cj`zFpkGPV||sfcOv2J;Gl`mTX@}?jLJtP(tPK&W~5bMjm=_RJ&hwQwD0N zJq8(Bd|M+8zFKTX^7|6uPAv_}mK3&P$+t@9GJ`R48z$s@nOAKed0s##MlyY+P&)W0 zD8-o1xJN^F!1@k-n{B(w5DQF_f6>kL4B9o6%%*;acpX=1ZuZNblZkW)Re4&fZ0tk= z>aFDTB9;mNMhc6N27r;!L3C0d3ugkP=Y)j?{zmXNO0Bb(gKq{=4%v-_?o<{nO}y*M zWGS&!>Clu}OK>86n3G0j9UsLlrQ3vra&1+8`PExf}Idv_xA$yiQLdH z`ZB6l7e&~iwI4Apzz6{u^y2owSjRI5~dZZSpQnW>svSk+~%T!t?OuIZ#LB|czy-YTI_M%{Rhy{% zypQ)90S!U4q)qoGv1n2X%f#HU)G~hDAU(8ujIYFe&}@dUMAO(|WXYr{Jb5gzl_r32qBlCf_g2DdzFv`Fp&fyDToytPEr&9tE*$ zeVxT;BOMe84RZ$!I#<+BC}m-So|xQ%rcR_H2v(s`i&NYsn@@qI&yh7<7Fm@7UH0CT zb_5!Azu?QjQ#p<-agHE2!>;WaUUJDudF;xQY-LKGbS5C$?6_Td6!G@vi(`4wupzT? zWKT$8e}^g{@?^BVIR@4uP)gi6PtDi|uz=QEsQ{#HG!F-lGF^dIB}EIG<4tO6+H`h; z;q-9fc@mT3f_jm~@Duca!f%|akZ^Erx=4Yeo=K;)uMCCy<2VycW7iN#zt*i^NeNL` zF*?GTv+J{~8_#;n=^B6Xg);8EeUgR*mWKkfQqq8`v%s2{W5{fnv;QTqm|!JD@ZfxkXn@1RQ!KUKsPrGKyM$oLRQavEm<6`$LSD1H&A>yk zrLY5Q;ur(xIjBAFa$O0Oa$;GZ!W8HIx8T{zD+B+|eU+?w;l3!QsOaVUT#6LV!uLVi zRK&l!v`HCYY51>fHHnW5x>^fq3#)|8(jTjvY2#{)W(=YxWuvK%qjoC;jta(MpN4t zXuSiJ#=|z7MI*06kM)+Y(>!Ig5DC0GwKq$1`r!ay%_pYXsGzi*$ zX1?>$J-#MbrJA1k;mBL9NP&q~{o(!gI1}iTq}U7h(B` zI8DY5r&nFL-lqq-r>culs%VqDLn+N_C;iN|1MN{A&k?#I0*g1A3j|f`p-m)(o*M~U z`#R{^Jc2@_it`&Wq|JWo>5#wA?Cr=jRv(f2_5@RR^0@T3Tfc<8uI^odyt8E+K`8Ip zn(N+|PSCh!qVj5|{1oklJ*!vd_RNbBYpeG+4p3LKSzAcPcny4qk%l8~&@hLn>vvp-6nXx@;3-g_U$dkj?Az42s}iUcG($@CHKY zfr!2}3+G5&&Ar@Rk83Mgy$M;87AwM5_jS^{Z7z)sL27}zDOABKCD{%%UzubdOC1kJ zumi?jH`|Lj+=upg`X=zkmy;sBeKZEjP>JdOS?3*puqi z^2a*FFj0C=XE4ja3p0?Pt4l0_m zT=wagd7?K)r-As>OUHQB{gh~%9plH&1wjLu$b1&v-I`WqRbev^Jx zH|*1}#)G;lR?)lTy@U&B(E#n}Qz!`{OFa8-M3x`{Z*4jOVUzK#u%_UWPcu^{S;C7w zLVSM**G?#79F)2BbQ(JlFiq!f_wkoc|MAC>tQfvHMI^(s&VoIY=>SW@Tq-UX(Vz?g z0YVY( zRdy)%Xsryg98KwjKLjJWb62_UvWrtFyXaeZv$LQ}92L1CB-Ekcu|7tZ=r_S`QhzZi zAzq0GK|4#kvq6qr4~DYh?FBtG8On@^Q-W?TnFyUOO3(&=9)1oQZ<3BGxLg6}d?L$wL>avrB-Q){^h=JK41a&s-6U!-z z9M8(^&NIMMBDl#WTDnoMwK(!#CyM}Sj5clshK)M4vKnCiD7RPjK0d*6cgKBW4!xnF z63c-gsn!^*p7`JT;zsyiLa;sV0%&dvi13ApU&$uS;^^FfRJj?bQHUnVA6JYE641#b z7w#YYH*+f?{<_*R*79TAtn9t!;Od7xcW{?tZ?2 zvH`Z?&2sRUcW+>%dh;+i`0B4ezy8X3Rm4bH{H4udYU%;W!V2yv%&>*)K)#rUp9`uc z?zhxClwi%Dk(@Fh9lT8+(W$%S%^cy_rFA@Q>;URjCOVRlQTBReoT@2NUk}|%0#Bcq zB8s7qxd;_SrIj8AQO`oRqL#L+xQL*%Qt@m&R`L?33o70Vi6VJ|**+{h!MKBzOl=GC zqyCHvl*Ug#FEauqrL{HFO5@a2RRz5|NBV|OOKTPrHON4{$Y$O|e7YGpjm;PIGSW^U z^yJ_(akFUIVP~YQztm!a>2<{sP}oW|FcSn^Z1jd+UbA?mE~kd*1&wOk3|x87ucn8Q zhqhjV-Y$A#K|_6TMl~gR1j}v-rmz!AtgdANmq$cMu{$S|+YJQ)*y^pJZw-OoeWx%0 zoP}`^1*P}=dQR!J$~r(6Kp6Vjd&pU|^k98O`0Z5zgo1by2iKxyal!p4Mv)TI-f2~X zwDvihk;clQnk)*95(4rrzDAHJbtL!+rN-cZO)_`*(Bm%O(+mhQ)aR@@l8cg)pr7gOo!|(1p_L%H zeVC*N4>UM?vJM~*c6hgnBcPWfoCQ_L*X`@n1mPu~u}URT4qq}G@#-6x-n|5@=cs5M z1+>i*Oyi|?X8RIpgs#uwUGwAyRcdao&wqfIqGAg$76kq3K9AFYY*#lm=eh(1;SLTm z(ioDdcuKwC(P4FFwL=n_wc~8WE#ea%MjGQBqNP{afyT2Ik^QauxB=>cBwfHuIfZU& zpU}~+!7>%f};qb&v=iVm_Zsbv!rKJ=a+DK&LFQKYfu3=UENkgJqRlK>GO z2R%?>MsFMZ-^53e5=1tsc$V`h$U9cBAtn_GCynt!?y(+xO|U%Mrk#ffh)duMEN^q| zVMeXA`l}Vu zke3!zzH%t}0Im>xi%3a8y+VtO5%309jRGH$gYsIrlGkOZXlX(VmSxz6(A2Q}xM0ei zj;5v_h;KyX5qxG*vl#l$+$@|ZbMB}>wq$lsEdEu|DZko~zbfNQX=fzlMi4fPIY`c6 z6VDyf@K7%yo^~&3++wXnR0jE{AYx-w!siB4Iv@e2$O9Nth~@8$gg)Dm^U(|;CE1cT7vzYh2y zq{16`EV%@dFR;U}InPdxdDpZKhK;o@0Kut2ps$1orFX!34?pD@Aj(g!Iy(zi{!W${D+{ulFk?fXWdJWV<5O#5hxJy5~ zq-*ZyZ!EccdiKj)8K|eiBU0!5<$WuC9O|IKsc%JII}%v~DNPR9{@2F58P@^dDkKq? zCl=<-%B*?>8qf2|WV~N{WuC1*LN2k?4v=3ej+A9?2n8c1r49 z?@Wy{!PH&MZDcwLNsv0?q($}Et`EPU*h3wss>hks482Mt*<;#l!akYg8+REwNtkk8?(w|^e8#Dkc=bF~U@BfENb z{rzyZOG(+ly)UW1emQs1k}4P`585a%lgjwr(WJu z^X?P3ehH`Q;(rW5*mt!H-#!tot`7(Sc5eKeX{rjZiOYSkq< zb~Uj;*rx(y=2KipcIj7V9wmfi)G@zp*xqBl!u8C%B%=bUFjVzr8mo5fi$W3 zST~xZg6*<$aB4v6UW$;Hi+?}r%kp9(q@cP-1lRGP<=?x{ zpMbfkz(=lth?W*WZtZYT`RbRio)m@!kuM-tZ!Ot9{WKQMm#d1ZjN;F5qx2Acq z-x>txO&OQYzYi)$LaI;onAt+7f(@PgFUO2Bj$&Y)1G5I8C;1>zA+E~x*_29Dda7J2 z5eay924sK*Jz%GAzLn1DYf~lZw`E+`jnb%ip2NgqID!T-^V&1LZUv^|^288e=77s& z=`t>}m2*&9pg<3DIzW@ZMF6)-q_1uulq{eszFb^f4$8}CtheQ{Tsj&|mYI!`(*Pq~ zikULc0<6&SBJ)LeQ`XB7g)(g|R7b+MCJPBgiOO@jCGBb}^S{ zhW*s5p}^5iO5t{Miz;qNzrAK80n&e5gR8rq%&O!-MFYX`xHlr;qqh{!xPIyx^V;j9 zJ=e#3t{?5W4yCKqNpe{}pQefhTE?^+fFNO$dG4H#`9AouoYGU+)n1W3K$>`$l4NKb z*JbEyka}Yd75~lJ4v1QuO`WlH8jXb1=;odcMUv#ro-E1UhrR@xC;5cK zFUzsTilTf)vCH=LD!xb>w~;h%P*4<>LE{aoz$xQb5Yk@odz3?9M_KkqLsFZ7w2I^R zKN%5%wU$kUoQWpYwtkm2;K9-aR-EqltJ3*xxd6qaFn$|0$n|1%87WcdFmZVJ40Xxq z8Dl5T7`nvP-&h0|m4N3cC2o2L3H-WjRCersP|?zY3T|g~Wp>p;jBN8DxcJLphPEC~ zUk|NJLF%3AlBqY8UV_bm_{7A|)l#=mJ;-P}C}6Ifqp$`? z2r5nb^T(S!Y%<)_oI&RO>v!*8fBf6U`*)vyeT@_s2cSX+q! zIidLOYcQTtNwP>BPSC|1LKU3_bJBkPHV0kax1L0H!$Mp6^lO@3n@8gar2BtR93^Ef!6cxf1TtgC)gz+RkKY96C>|)0yOS70@dX6)kbPzl0Wkn65z8J=I zI-Aog4?I7S3VBpa?xRCc*hK9L(Bo>$=&U}4N&`XP9l}C(ZysKC$`}?3zGh}hh>b5< z&4B}{j-l~oQ*dQbeEJJz4D0&SaN@@PM%h_y+mPbvDml-l~%x=!&^0LNkqia zInnWYmc1&y1S>w$ITY11#P17GcK&0vMF;53F+#(8-)=l-`qzSV&^X=c6k=gEujLc^FwG2Pda(==7Ym^KD7g#ws5tAkDBs?CV z-kyD-+b52+kHdChtDz%f30o#{kYB`OpC0aJ4X(jL6J5$q7aD-F=7}yRkIhgEg@iKu z%fs7`n|Ghy|HumQRv=#Wd|i8nYc|*%SLLHA&-x71Sj;$R@yqT-GpKdf70iV^97?5H zaVV~hht_PB~G;oOcx&+N)dQs>+%uJvZ-AiaSw_$ecf}>}n0jC(|S~u-(i&MdK(v zHS&D+fuBI-2SQOh8KrBLlac9ORkGll1GlriS?^4siz?j4oq+?@H%~IxIuouRxV*q zKQnUU@beKA4@}hF1Gf>LLH>YSG*l^&G+jYE*c4Zhazvu>nFGn3@QWepP=3K7g}*!* z;p&=x<3ud_ghFu-IP{8pz@c8;13q@`;~wzI{rbt{ol2JPcNjWt1wRcF7U;Nff z{6m1;bbrJa!O0gQ=iJjPwxJl}IulIW$_QE+hy47Dk;>0));18H7W015DZ%s-njOR! z&@bFHjW}lD3}S4sxzkhumsGlU%h1%vNPi!_kTWgu458~TsOguciTr^`zBwp)5}9y! zsUUio25DSF<#Hfu*wo)MjA$-uy~D0smdq9z20uvnPAMpgdr)A^l z6KHtmAzDJpp_+X~UG^-{l)Jz<)7TQ2V!ZF_s>+81{h;$cV%0(YD^4A4oj#^frl5!U zPwPxGCEu6MCSY>1u&6Ysrp6`s-V-swv>thQv(;vCg?-ID6~omxv6ie^1N@+O(?Cx@LtWEoyGmZxF)B%M16|724oZ=7Ki=y#X_(L+eYe zZLfAI!E$%AtGgA)8+to8J)^Br-s?z_A<+=jj(NpWQY9DS74=MkYM&w z*^RdEU%mbC^TYcO3Gr@$LtgW8B)iZY-bqekgYUrJcaq^BU9%+s>pSc!oHS_dNV$bm zTjLc)VRE$j=62IskQ$&K>aoE4*hhTiY0X=9Ri#nVxX_-;sQ5%lpM)FY3fY8libkO(EjiqowKK8ab63ue2tqmEpi6_`(^~ehU`EqGo>*g$&dUPRFSVINh6S-VI~gmj&BBIG~tceWRVQ^t{r% zN4hDC0}GeJCn#Oc;$?&K-lKjalpOT|(_ll*PR0N}2=`MZ+}9_>71w(tU$Em|5yo86 zy+nmR%Se>V#yt8oer1ZBr$X$JIC5wU@2Wvh<}u_~aSE~HCB2_uZ9lT%0Go`9OLNU;ZrcDqTw%Y13^(Ic1f-8aZ&e8D|& zue;+!OGDA5XF1X7M_+}t(!s<{WnueF&Eo5fve!u>cW29J z={=(N5d@x`&3s=qK+PgCT#k`br6nX?Y3-Y8E&O z5iqXG$)xOtq;7 zs)~6QX1Af-7Qlmq)s4FZ>w99R|GmBd(gb;y4DxQQj>fe)g6=Q)x#F5_o+i^^ipjt$ zOST1BlC*+RM;VTazXwuzfR9DcHoIqJ9Q;4@1|Nsfn3``iu0XrFSlE+CI`PI_C2Gy1SYPYuZ_;yaN5i_3bvnBEsylFf_fC}rNn>23m|r)T+Li*hacBGLolu1C{&qNZr+6^aBx0xXr< zE%k5CuPK`;&m~tBMs1Xl^fgeSZr6x9c?+)1Ex4p;flU$%`*F!Z8oH*+HfY5ynGX_K zq=^Tm>35oW)**T^S((2z8rvn}9?vh9lUu~gDRgdXp>vvzkU|RoFDJs;l*o}3@H{%F zJs~C-wXvhJ^xherZf}sF+H|S(0lbX?0n;!vvKv@UI=gC2xssRB&j{9vmOeFeXxsI$ zmTY|qTfO#rJ4<3fBAdRTInAT*XK1`MmNAt)rgK3&?yLwK6%L(211|sHLERiGXW0rd z%$tXg+t2gY^LLVxab@;7UlVFEUm(5)9_?z?9x1 zNW(SX?f`GRQ}6B%kWUkzRPmGk#il!hF*&=za4&rGEmW_){G{;0+|c~k_lEBi?mjbA zSNu+KV(sZsNJ-d(uC znN3ntPm7Jh5AWY7wmV1SB*0c{PKI=`NFf_no7>qPl*>kA;2C0UO{i!1o|Y3&umWc| z1xSN_xw*X}!)4}|k`*b#y-C?TXZqgmHVn5ZIaS2CGv812z*mFKhqvZ>yEwa2V^nbe z`?_fItnS$OcsCv7pMr>}dM3tp@oSh*052jsYJc8{{tlonVYLExkxFg*)~&qo`ixe* zhkhH4(W+EL9Cu8QLe)Z5!5;bwsds1Uo`PA8q-0M+B!)@p-)E@UX&CC7 zsyami*&RE-hGsJ`LjpDz4X}yYp{P=#cEZiXR=YAIX$wsvw&O!jF4^|NgIAePn9%4LYdo>g)UM~kL?q>U9&xkxpR z!vC(t^e()3FM-%yr?Jz2E6(zs24{1!4y@Gt3|{m>j1YwQguZ$7s5@WFC(nLrmogWw zg7RX1pScfO257*6wNs?A#f2gfrwdpmGsZX#5EDyCwC`Zr*M-~y^MQ~MbiK=3P!Kqo zYdnbA)$FEKpu`bu!mw+f$)ILkte}LG;O@fcP)Y{y>WHdniBR0=FACCBEzQ3XuZmYN z-e7hCwU}2?1QGKjTzeS{FS|HHoz;V<|I+i+;6S`gqgT>Pc@CMb5NHLDe6NJV23(q} zIyo7duWJERR(B1fW%ry*AfI0Z6@m)_f3$=~4h2zm1IvavRV*6*IPAC z4y-r{^eIL15*`ECZRWp6$2G>-Cg%lS;6|js8Z_hb>3ktHhl9U_d-?anS<;;P3$lW{ z%=zDd`bchT_XR_d)s_MbQ5z7N;N3ZG()UpOHIvo=ecGHqEd(T*@E1o;EeLa8fOpBa5eX^M;^WG&i!in+ug>pz=Y1 zX^lAGA9-)u54diYV6X|Ec;u-}cY8ZIsdcN|-fm91e@kx}YUAZ*IP8C{b^LoD8D&-< z9WjctELAta`TY}=BNqB|Ba(V3ud#VC*Uh}MRNas6a`{i`-5(8xK0QQ+U*;z7Oww$##r04T(ZrP=)3tw#vV`as@Y!XD=`S zgx$fWa>?45{oG6!X#9-l5RoH6ao7lb6HJp}&heNQ_{4b_jWsmc^vpps7}W0o-L=D)1rnlR!1f@eUmVpeq!LoTl2DFwoOIJ}-lW*PHUD%zT5aj{Bt3y*Z;X`|(<(9JlC@RZH!X0s3v^f=hmkt>if zWHfiD4Yt-OOl#*1LT*FF#GiVp9Q>G+2$f$gJMG{gUAx^}NDc-VQ-yq4d@L+qzuD6OozMj2*ncSb|XV+&>@cGK-pf%QD}`4 zHxZ}r9%duJ&eO@QZ+u<*L|)5b)W33qDh$`q^<$HUp8=aTbBwydnFOkOc|V6lc5Rx` z>XLeD;Z?h40S}QxeqD>(LN#wjUX3~>E-jjRsLd=-45}iqYiV|Ct1R|GjNY1^#5GAN z7Qr;*Bloq7mfoiknOeZJba^8~gD4NwH(D8P<1d)TqMtw0ZjyaKYkdzD&rwU|z5TW|fdUqYH`^Ue1eE9L* zCxl~jcTnOERsx2_<;tgg6vjM>s)~!xQd8_?KQWUG+jJ9lRu3Olt`7}J-N8^oL_dH1 z@fwv>Q7)Jm@7J(%F@*Ek8uaxllGS;+BDf}2|E<0`86$#54pCNf1@7v{=B}Sn;US7aD@5697(4%glsMc0g`3dbmC7Ghp^qbiM$M;f`~zE0)Ni1k6M%N z1cRij2P*9)rUyz?lbi2MjfzWXd+0iVPgF*jIw%&z^oZ{E8Uwqio=j@!To0?ZTh zVUb20$#Oi=Ct1$f02oioB~`&XS;G!bJ{ghnrMFGx4XsWvTbOIh##LZd4b$p~c+-9a zjh(U8-q6DeisEG$K=Ut30lm1Kk;BaD5tR_F40p32il<==;71vELG-0R&(*uXuHOCi z;r-;@+n-0tHn{`IfFeEs8p{3L}K|NXarv!zGX9KVVFNxXOVmT2Gmgr_Lo()9LS z(%;?rASub0NT=+aP;TpM#A-)~iC1Kg5EIk-i0y)9LJJiQ-HU`(%sPL2JpnSl`uOqv z>py<__^{g@9DI2A@#E`vZx6ou!}`^K%s;*T@vEm$<-kSR@m5ivQXYkzu-Mn7^yCo;7509P>LJ)3$*NBM}6xy*06ZuUAs)-N;Ug|+N=kRMm zZnm2h%0Q$Nh`NA13c@+sqois<_FChwD{lzH)|`N`)l78Z8W`!|Y=vBRv(@fPyXyzI|Z@(!1P8lcF$E42Wd7zPN3G7MC74C-eARSAEnuD@WvLS z0P7}d$Ebi~=2oi@>5aTJuJZ_Pos_?;i=CjLUFRw?Jkefl^(OEZ8H}ehU<2L_sU6sf z?*M@(VK&lJ93L&H(!d;=@Zn=K??#>lpc|>Sxh$csQ#UW70!Y^)+Eg8GsPAmCyG}++ zQ=ti$6-$-qeNPq|Y_n+zsF@|bD9jw)`V2iC>_!Cqf+*Y}=ITFH_>+#0e!1e`?Ac zx9*YgkEtf1_jKJt1<;c-O9@mUe?MmTQyWVMs9QkU=9?)UyZTL4Jy2U@*I~NNK3W>F z$UzyUS`4~|X$ZO$)t=qcPAnL8NJY`1(0f&v469Hk1?7o1GpcX1Q<3S)nX{-1EQxe4 zSqwiypCyu4uz9@|KRYmzCmp?%?>pKsWj!gCU~rR2y_I{wiX}o*@d*_dkwk!LQkon7 ztGxq8IO;Y&0m+GA?zjYg`mp>RXYLq+9_R)+4hi)ypb0S--Hm>tu+3r)k|Vzus9+Qw zSf8LZOw*M4wV0x_3*f|O(ebEwDm2jH_-wd>XarH|S$PkDqh(Er&0;yl${6C3xK7sCX{uGRLvDx{ zL{wPIg#57g)&061{8pm{POw_5Q}~pJcamFnZWUZQlH`f<8@Op-|<2%)P5x4Sq7tu=b(sAHpU%01A z_&tNfkdf#K5TK31(|=*!hn5-$lRmq@U1f{SdU$H|-3&IS|1Njq$Or-LFDzPwQ2MHH z(eez%mvI72z^iruKK+IYjZP3AKU9La!rvRh1n3-?3iK91xRBOhsMV}fr^PVSzKkOo zCc?2-{WO4+Q@Nk~<+iz`t<|BjHjB0Xk+rY9pdnUCg?O&tQA1?x0UU`iQ<;j-Uat5N zqthqMO$lGXPY| z*{Y({@>TVZlb=P}Iu3sgFpu0uioKxkh?X9h84*$*=v(0*MvpX8Jyn;m?vl6n@~f27 zDd(Kgo4(L%9-rb*z|O;`EpIPGPq3IibIj?NS=}?I0P0*W#3`O)coLW) zT9)+&chl&#g(g_M-9=0H)+b+1dzo7kX2>urUY*zM;lbPn%jcvqSUz(461nIz} zt>->-9s2yus}H|OZ9jeY*S8|wfM!cn4cB-O6g&heg{$O%-=3RVX-$U6t50v<-2TeHoHDa^q#9$4 zPng`U;efG?-E7u;g@XHzHeXNJP_t*foD`A(0Sgrqa3|T?kDV@DD1`}xleWy7oVL9SYdr3$1+6xEDSInhcax(_gwm}MoS7EUe#RTukJtQ7z~!2?~EanH6Yhe3&Xy%kzT1R3=EMtD~_hNUx2`&ee z6OAWCH>}kPi!y=W^4^5i5>9tL+$$hk%1G11K< z%|>7)>Za}%LPCPP#knRpUHsU{?{;++W$CLN|=T&p&W$6 zLimjbE`#^6kS)|SYN*|}TbB85_yy}!@@Y^v>*WH+>AE(#bQGxT=b_6*3RJV1!3_wI z2yKhE(o-CfhEA9}jkQ z30jBB$N%{C{llOBB^9>D>lDn%Y=K|Ldn|RJ9th#+Uj}v)jv!`7HaY&c+;)2n)#&uV z?#`lmu0LpB?y(5o&}Wf{Gw)71rzOTO44Ms8^A-pyO{QB1<=3FC4pTA<{S9+Kq&4+6 zt#9ignB4zt4=ANarE6TCZ6}vrof?jmGP_UcM1PAz?t7pRpAD(Vtg6|aKA;+Pfm*Ph z!H|iqH7Wg)@>LBrDH)q$T~!g@eVu$mrL8IRAGv#Q47dlVR9~bpLaI;T zacy>;@!@G{Omn)8?&3p4-_-7 zCR2L6j5oCO5ME)LEf~f@=5ZQ`9OF0{7CkaJGKGO@My~2TPc9$;ni%rA&|*SYv7CGl zwQ)V^E!5{S1vE6_e`EM@p^^n(0tR3*8RcT@YGkAqn-N(bzT2K%gkmi-Aw5vtFGMg^ zUhe@AAdR(H9<$2PZc{QA`D*)c<3!!-T-qlolP<1 z)-U+OS-Z4<9hRaTlZN0vOPOQm=`%l1;l5OQ^mKrF9UUfD>#Ixt$=JxgbEZmT;^6q1 zrz8R%S{~GnT$hI=4nPk}z7)wOXMO6BEli*i{UEoJYF2pL_CR+sR!Zn#jph*t!ahsd@ z_Wo>*jDloNIzBdgz)E=*ITenp3=3w2HQa>|2X#>YUJRIqr0%vmN6DlshqB^vu1_*7 zqLQQZlnwW6^QXl|a+5l<4NcBj%w~N*5Ed(zA})z?*yY0bUS_cG0MmfCsTSJNfFDq_ z^;q-YZnK;f=OfM^L}t~x5|I+<4$R7e9w&uDp}MGdloJT78Qt!!$QLdklsZkgHS}qV4t<5ze6Jq&|l=U zEjh^)Y5s&|f*`OjbpoVTo{u1?rJhV99D33=*Ei&3eD2ZNs?&8-f~AE=+7u#oue~%t z>WrK*yUi_f#iNuRr4O|&GrnJTEQOCVSg{j}wL(a!@ueVRx7U_Yal2k=62`YrB*tVL z==q;-e_cQPsjE(QfQc4m{wR|z$}5_>LQAT2j9CQPzSITv5>oVslnvbojCeCul1#B? zL*w(^+r_=+qGeB|Y2MYNj=pDhDIt^TC-M4L&q}X>oa9Vy13ASRnlv=Qd7w&9N6s&$ z*^0s)vQ;5-4EKOZZg@F0Le45gys{+d0{OG{3$cdas=3v6SZkaza-wa*tWeJV-TQ}+ zpWefM1PhankI1ogTsfFEp!DFyHOo?gkQCutgM-1r+jp&oe@OVC&V;LjAjx0Cw-m%z=5<*UDYM zL@_tnyJ|9831PpRLc{wVNggk8>9Sgb2wlK6m}=skSdfu0UvH*jTWyvdkCzszM~Q@( zt~5NMqov`2`syFC{csySU!?XfVAR#!Z*!0suc3Z5vh47Sqjev!CB-%k}tLo2Me zqr2nAm^&6LPx*hDN{s1uUihG$!OGF0o*Oqpg!zfb5%tl#DvVNWMLAd9lJijzY8x6*);w`#$tu2vXc-WVg&SbDLY7w#7i_-11NIM~oBizU zd?9aO>okHMcY6axuEk={R{4S!CZihoAT_uj2LDNA!RV6_L%9cBTs`A8X7$QW6L zZbF-aKDmN%j-VDxb$p~{-XuqqjQutjG>$stjivmGR}Dv=P@^(IO2EK#C4?<2pwkp zTkHyp04ExO{oOVg6Bs6tK8EylzM=Ym#SEx#N%-$y{rTbcS2c~)+BP3{cq`*H3lBt4 zwj6MK0N0{hOD^cY{uLe)8IFvgD_~f0VLfdwz&M5UrDYdxX@w|zd?-@-07-s}*MbbT zQFA%G98{>xOt~(=bs=M%*cDzS)lOdpJ6G%=n!QuiVDF=il%&!MPq!H%dX+jP&bI_ zkOApzzPp(w)$DNesb&)E{DT#*;s_Vshe&B*lEo3LypTpivS11jTz< z>+7Krf^kc}j$<(0WaQlSu?V}ZdU^aUzn7LpdmSDIwwej7>=Yo1f$rE*GrLAqr&k~Y zi%TjEUNcA3q`NC^Jq(Pw>mx*`#Eg_BwfELP2P`_S&e+v+2W|SAT=o>W7EPuWvru_HD0f zc9rX*j+61CIs;=YEoV896fc)ZEdkF4oQwOq`zZCp!SESZ-eJn)0yKg7c3or>XUzY0 zEEZJP41N8%k>AcUlfwB)(Xb`YIhqfa&Ln!n&lc9uXH?z~2 zNAUx-tLczzOGOosMkeh60%?v0xw%~rkDlB!If;9j#cvv!HEug{>|iT+?HZ=fM2TQ8 z_{`%swd^r2>hwP+1N9(!|17~yF`5yn{w@~RD-=P$TONXu=>aTm4n^#l+fI}{r!%mf zWcdsST}6UpCp4#q=UKLAWy^3M=?^m-tNk z>3PWA-7gaWlbkAhIT*CCMfpmo%{5u{D2hGkaw~*DF%c02 z14@QV8Ukk(+G5IGVBkEwlhf_I9`sKyVDZ5ji{0vZ9%_&VrIK$cIZr7~giR{MXlTmw zXe6ELN*YX(-eWCeY1M-t#?0zU8|4kAp*XUV0kz&vRRol;pT; z30t8{sfLX#3X^s52pYXa{TEC_S(3xG-Mxxgw+y1Txh*J`z*Fve=%QJiER0uJAa{)O z36e0C?ihAK^Kw1~g3`av4ceTVbS-iuY6lrF>M!y}G5Nm1TE(Jn4P~|~7B#Y|DpIcR z8OzhdyOm<ehFBO@;^s@2aIr0_aBHNWC3&s~!Jf-H=E>2m@^|@>g3zK*9C7#=gaw`}GQ76j*Xfm6->VSk4Aaj*C&=s*m-d8uKBrI^U@M29&;Hc@( zk{B3*bu*U@Fr!W6P8iq%$rxbl+!L(GV*Ue&gA&wyttcrn+h23q@$b{YJu15+uMRpW zcMW{<_@hW_gWMp4ga0~6w?e{&*n1EU0710Z+9--Bq1}#(rh?USPC{r|L+lWx&n>hU zc7&P(?z5m`A`&xd+F+(vd?6DIdG*(#7x(58_+X*~;vx^pfsiRykT{Ix?Q@Cig{^i9EGbR!z zxKn07{w=N8VWs10K(<$B8?wTa$zZbn0o)9K8XCG3?|Pq+33Z#Z#r|yLT_Dz-cILUF z{X3S6V|RnewhFTeTiIF^cuFS5j>i-~rQ0D_5JM$eoP%GgmsoVtWb72`yZ=xlSJFTW zse5V%2y_r4<&wnHwY0CiGDDaQY?g->G^zU-HZTF=%x-SC6MIy3Nl#KwvN&)wN7-F! zaBerQxf8q5<0%r>U{Y>o&=?%>m-Gm~&pL^TQK9VnVXC8|tpQ{bip1kNA2WvIl{eEl zasqX<4ix>sJe%Q-$B)!Dw`E`m8hX4PxR?p}3W2p^PLsR`4;n4V@69TxIGUUU<#z)( zgFQw56J3$v$Juq0OY%JeVM?OlL0#(4%2D&~m{aEtd~}9j1z5x5f`bMl`s`*dF+Un^EvcVi);1ikUg@^3>rvru3y(j67DyNn|L(}6mlwG#TqK&bVkVtF(%9c6- zHRS4AFwovbsDd|ZBeX>ti}me=J1G>APyT;ZxIwA|;OpNEGO8YX(DOL4YS?ZRMI z9O!Yj7nk%T&5c*Fgfm+`2@Nn$LgCU_L@gPk(m#{pot(8zhvw$K63NQzdROOMliJhj zwU&!fSrrZ7tXuzJ5>Ri!u4KG#{}ygRRg^u1x+_dA`lLK&c1cs~+i9}d+=K#(QDz#S zC&}t1FbSs7VRfN?SH2000y(gM%sEY|pk&X8PIO0rG;PI`qAPS(0XI=Q?MW&7lYtPM z)Gz1@G}OrK=gD;W3G~>UtS@&r_c-0khVHUwgJQsdxtAOi;DlDp2#xetFB&Z5C=y7W z^MT4=i)}cdsuD}qND%Xb)Edh$rAFdW9}?cv<3o}y3MROulnP!U%?&Ei(mW)s@$!s* zSgNRVJTCXTi9;mVbLV|T0*cFd8C>M;#h3)kvjb*{jDw|-#ARq0lB`9X7W9LET-__cOViby&p)BECcwy&!7)+LE_Tg?omB^mAvG(~a2T zsO?tJ4&8%mdLobiWO5rugM)7lUk+EpHh)BcB9Fri|tQVRUmaR}XL-EK@5Usq> z$RA*)s57%f(G;Z{?aUbY7e*^1xa&1}p%}Gp4Uh&a-OvoS37{FA_@h4^efXbgJ=;!( zPFFCEHfkI&J9aJ9IK(1m--nBrGtksUi(4TPnjz(ykI-LLf%G0IzIh~2Ug@A;1L>g# zhdrb~2eVFf5Z5ebBH6Gwpdv&NKnkE^n{x|w>-EbGkVb5{kp-`CYbTkLKGI!R(AhA9 zA5FhHMr)3il{ZEM((|>7kszkuMrszkFo=PLyM&$wA)AYfYlQtU#hr7x3N0KDs+O>* zK=70vqltV;5*5|4Q1`WhbQhk64>hhc!IlWKXzT5ec6Sibp!A=v7k6d3s(t{7)W!Af zgkM%B#1wxxE}4<861^zxYL3EoQ>{d24nuSG0y49qQ8MEQ>WC~+k!W#qyP>=gI9h;i z0kYyvhQDs^VFbu(J>Q;hj8KwJa%HKLQEs5Jq1Txnm#*1MZ~~R~p#f>0$vMbZ`S7mkp?;yTSp$zL~S z@hUPqwtLO_Djv`9je&>$87SyA@)Gdp8Tq!J%ksJJ`>jtfe{`ff+>;X; zI~4n@f@)HjZfv_5R#~U{X>r}xsP<{W#hj%Oxo&0h_FS>iN)tOzUVuGRKEd>!a(^FI zVnPj3XO!+b+o2>aiTiE?bK6y*^>nZwhAl`Lv!01T<{!I2!yQ)uc)V@2^pR%F#M+?* z$Cg)$qpXINA1UqJY2QaWM4f3R7xzLIeHQk@eDx!;j`&q^K=8Vw+Q$p)Ob>DDE7R^5 zRO&1CbcMPHUYtXXlJerKp^uG|fsSQnfh!!)bXw7ZwqD-lbhd2hUY-)2?77kdbdu-V zqz8Lq`uAd5wfPFD=8DOAmb>d2&i47r9^mf%Zbglj1|#|@ckop=A!Y;AX8U$rxf8~t1ZH90pDOx^@a2X09QYYO#Yd_Em? zFF8(V_sEu>Ba`p<*8G!WfNF`?zRJ$E8WZ6;V!fdmHR{et8`zGh?=GD%J3!5;vDG}7 z4|i|vA6zeleK+b4wBX**%XGmeu604LKza==V0VZt+ilOU$f@!PR6$-*57q(d7R}a* zXJ5;@ln`}=CT2Q<N5DJe;RNIPY2(A zTU^n@H29LkZm~YW)ZM+0S$68aHE+1pod-t|P9 z2v|w~_9n^-zz! z+R2b%ZOKy|hTbl^*$G@Y&YA_9-DUD2D-Oqi|Hs?AHn)*o*@F5h7~hBv$}TwwfD~Ed zwmU#PNR$8q0zgXg7lbUasuZn~JQC$D&-CrzK5MPL_jzO{s4ClWE21c5?vt-`_Sx@8 zP2`)<>LnndS(XZZ*vzSXiPqWOzi#286I`c*uq8pHjI7K+Jw_LpuM74}obm`8yT5B( zUfLcwK~9ZI=6HX5)I-kc1k;1^3W1FOD{I^EcCa!0y2>``qKE3*_#$KVp;drfo*Y7h zYJ|R)Sm4e#_6Msmyd-j;IG1oD7q10b7EL z-`sTy!kCX?f86b5_wNCtitq{2QQ+E;lp_L6GWm6=-Y}E0P@L z@H$NqUE@{)6q;pcqoR0GgXFg7W3rPbh0~@U zYcZ|riuv-|lw0x4S~6F$E%Mtn7C+GD6cu`o?TT0-_(&P~6i0%aT#5T}6_jp&?ConR zh~62Vk{cAx++S{1P!D;p>WqZ8vc&+*yC8Q}i-Borv&f2eRdBpGtyfI5H)i78fteLd zZ)u^XNSr7`O_Oq{NEE4w{M9>fUeDD!80HMZt|h}(_J^7*28pVU07zdyH^yaT${`ltOr~A8~pZqk$@%QgPzP^9*`Y-SP`1#}a_c(F? zBRbXM-`Ahs{P@S$pMLt=*^{4oPkzAI)p761=li#R{NckF-1^D)-=nu3JKa6;j(4AN z?(OUQ*X8l&``2&&^U0UbuYb4$^v&Pjy#M&q>-%?ap1k?^(_i1;{rv9!@21MIWyTr| ze?a@%xqHZmjJ2<#VXs%aKTkI+O)#5vhFZFn*UkKK zB%G8{d^3h7g*MwL(EQ5KEjy;n-@`zV;NPm0*iur~x6A&~<3Dtr9~?M8JaGO5=X?LV z_g_E0dw+L?czGhIxoa$e>LnXpub-S4Geti82Ky;R2 z30f2cvkGKKPx{A$z6p3s3cXfq;o=oa0x?a({&NSHS%wNbZXpOH2Ip0;X#p?Ik^O2) zYlx6h;#iga%B!&K^f_`NAZIuviuv-Dje$kr*Qt7a@7iz z^(v)U8W=oi5e3=`!>(5_xJ*$Fwy~sbxR#YGMIZ0zVrBhT;y@FUwk}+(Y+e%tbS{;we|Jh#l#E0 znZN-j*&M1m;&ADd2jQ_pEvnHRT2&@dZ`=+9y}kuz8_h(Td=Ir=suQ*vR#mSG&xgWR z%D6tmxIXx4_W)z&E+Uk>IjOjC%%GwkLlw}*jOBOwaJ|EjX?qi!6NrMyNJcbVNOLca zT}y#8aY&D%GdQpNi%2aCG2Sa{U)N498fQ&<4Bu*9!bZYl25Gh2ApO*GFt}7XK%;=A zm7T)&Lhq8RJKV@9bqjAE1ZU7n=utOo6#v{Z3b=J%AsQBvfI#mK&Z1}qf%HHTY8my* zQhnwj=I$e3Oof-}aiiI7vA{W-SgM2D7doeTxq@l;D!KfU?#_8}kREH2%U5ecRK-fz z!<`MygNjjJ$Ig)rqlno^CMyIckv(<{@K+!jIu*US_S^)}#6chd3}@E%2U6yd4eZKN z&?Qzt$+0KO3)Zn*mHucWl^DeaiU_%p0c1kbP)*)|3rdV zhenfNdWac%5cd(GjO}Wc1<+>~sLJXK&{M(9_r0elR)7+(N8@4Bke^Irg6S6769(!G zY1It7N7|~HhJc!ZR3(0cHT$Q^%JX)=+Vq|-ddT!HlZDwy`I7;&*>Y-UL~TinF&h`J zKi`2KqXtNvpqGv(j6S+NP@40cv0X+3|(Dsd)$H@=basjt+Rpnziujl zWQ>&jbzY2g(L+-y^o@YrPK`VRg-S*P6jkarSL3~Eb^Ys&_0pnNJbR;8PM zm_Y-)Z%mh(xt3tPj(6zjeh9Xf`R)AqF1RBXmtn9e9y}fUi--K;N@KUWE}SbsrO~N7 z*O|s)C+pBIuwA=fx&iSGoH!W1>D<|xi&{+{#}SVz)*8(sYEIBO#IeNesF*xYY$~`^ z7+D>dSK(=>20q)BZUD<`6Rgz`GIj`jClL5t8Iv}Kk3zB7V!jJGvjsB}>Q=c3;!THI zU#ypvF}Y(i9T;K)f)|(gwpV&)zLoM7$wzn_ zMhsvrp?uQZL+9sKr2&{+y}gB2&UdUrNSbiNgb{*SsSlz4JcHCTw!k8fsSLyl`@H5M z-1Igpab%O7O!`POuJJc+)`!Gl(oz;FjwMnY_gZIk(`2%uKeGt3)nPfp5=v8KaWfGO zANNHsTMD08TYZd>{H7%Ys_}To^#$T#8Z*P+ia02qeE=6HR8eMsS3sf4T680 zZ?|4RK!-#+R5&Et1XO38SWwy`E<;k6aYHx_RJ|HqBh3I-!y5$e zz(P@k^x&otAFMTG|MBDh=n?6*CC`-aHDi#28XOIc7oTV$4iugrRGw&J`eCH#wi`*>@Aqt z1Hu@0;%>{DFGwsm@T0U8LJ|u?rcb z!mLqhERYOS^^?-;N~Xoc%`qO~VJP#_zLa7l$3p1Zjp`0ZF-$X@=~DI1^GrS_5Q{qxXiY zpNWTv^@6$-w)?_}kC@juD}G5)w5!@C&YvGRAI)H!_Zc1-A6;Ra7rk%F~wEA|u z*@L!*2QGQY(qI&Ibz!xHGQmpr%P24!9kSzJct%3u^XgVXgX%B?2WoDJ^6&u+@TbT@ zug5#k=MsvBT0wOgQdtvAZs=x4j#IhZRtv#-Rv(DtbD^%}NN;5Q49sDssD5Kg zOnursAFsP2Uoy;Jnk0bJhHv!FSm)Z^7D|R1@>cra8n$QR04g@4mZ8oj5MD(gnkUOI z?t4m+nq&&aXMC60u0J#>T8F5jH*^w&cnT|m7sRq>Pmg#ErDOyw6C^O1hrJPI=fma! zVWJ_Ezd}`^D}eu*Ii_=@rcEp9)iTq%l)Eg!G~86537!W#l&9asLrRzii*9=%FY}jF zXFQHpWkV5mLEWV!3Z~eU(B=zQ{$2?Nz;P@HD>$dOb7MWN9tG4t#%gb!a-vy;OF#Ux z7?_f6SqYkc=nk2p44Sq`x#&6Xq3WDj@WA;Sil-A=OkxWa&~t%E`x4@rZ?7=0bp2+!tjPDTYPHVeCn~+&fWnsmcE{?1b1RiSK?%~@|WoBhg%uF1}~@E zr-R*UaC!<6mEtM?W84T)Em>>jJS0Ov()7bt+j3+jT6lfzh;}E1f)pXaLMjNwZgq|| z=Z-IGfr)LPp&^5lTKOS(S49sHB6JaF<(3+UIrA886MW<17Rb2j5(`j2)nSfwRv(tB zlKAzKk$?-Y8C#vR8=KNqd1k~rz0mh$bh~J2038GL=z_HlI-N;QS){L4ba{(Jgn~@t zQ23-9rpP|04*6JPx;Av>kV;$F{84hbuo2XH^1@mHsu2{A42M}|*ux>uG)I(mcFU^psp3=j78qOX zP6bXd;rM*F-0!f8@YY9}X0+sWz-mxX!S-9avDeplNv&ptFtG)+4$C2)n z=0RyIIdaEloh;4>qqVrUaQGtHr3<(#y8Ob$MXNW6-tqzl@F1vm_Y|IL!H_4uXK8PT z-Gp!7+KnKbRcbMAh>Gx#v?_a6ffL;WWT97-7?&4g&&%K^N`Ut}@W;MLnjMmgI>MPpt#$`(;L-;jr8q3!Rs0$2<_%#=!F`B+8EYw_v zR04hr@dbT$7ZxeectX@i~8xJheiD@N(&>BpT$Oj>&V8tnIfg87CRms z9_hP%vkHQu01?K#0|Eot+lwhHO3b~hMn{=ubXKp}HFyjVhM*LBxAFoYBc zk3NT_x(WjZvtylEOx9>&vv&T8Up&%d6Jb;=#jzEBvELz24WZ%IVr+6ax&=VYBZOLa zIMU9$r7>xFafJY2LsCXub6W7iilnu((ku0eX1b2XIB}#G?V^z$|IgT8GGp@itJfdi zzQ6lK>kOhYi!+bfHRX+%YU73}qg8j_#%TZY4JF9DTs;eonBSu^d<&G}LxGL_TQ4p8 z$Qph0f+8-xajY?!RH$!ixVafYtvT_abq_yNi{p3b4V^H@kNY;3_C}FBm+7}j z*Nw~;bGf5K7sl38hEbrlrveunFehQavHrPOQN5#lx70A~B-TLRFGd$k+1{Y#`%A>) z*>{<$RoDe9YGZLRM!x<9L3O`ApB>c3F8T_!fo4lW3r~V-;W4HzGwO=`a*8D9HsP_( z3>imoR?U4J2OO3V(IU)Xko34p3K@`OgpoKKc zuMSyF4i7GwJ?OpVo59D^R7ZrJPRlEOms{Xt!tAzdioPCfkF{+b<|EsE7*Q zKbeDM?TvQ3QNqcH-Glb~#S}prh#U-0LZelgTa_aCwNYAU&{^o+JT8CoX%Q zDmQze0BteQMdd4y8^?M(BO_w>IEYEN=fFlz>I^2?S&DXtojXsdgVJQOp9!rgRaaVH zFrJ4ir2fbnru!89Jr%}u<`%4wi9q7VTC#Mc6*I+6E>YyPj$qw=g)D~M)pP(=z>-Qb%A6Uxfsya zzN%bTLo_%`i!5poat*cxcB3N9@n>L`h9k3w+-zqXQpJ>SE1FUyV7W)FJR__y;?Re9 z%nqzxreeCzCp1c{%bw7PmkSY12k9PNA<0A1nW*N%2Xzgy>1^hR@V-UFs-b?7Lt=!} zoV;?d7W6rJczwE9{c}FTl#KZ^xLa--WjJ)JF%G(AF}NPcXlRWyLbY$$3ZZS+uJ>FUHLUoW;XMUHd@KsS*B zQD<18lcX}Pu%-5JKJWi}|LN_!@4rX&k{_$|(544MxMZ25l9`LH_iW8tw7u7%KDr=Q zUM4z`@$i@D+9qj)-dxFR7Uq;n2P?h_fl!QXvMDnb3ey^{aX~=ahFlyKTC%-PM|vlz zo2lI%)N9i<%QMx2QKEz^I+n-|HNp@Ntlhhpe*e9_m1!bzO&s|pbStQa3Iq}*c2Ci= zd)G@pI@WzPg^}{%MK{x-Mi^yVLLHuuhqKB%+W_f9xH}gx zwj)wO>))lsl|FFEh_!+jKD$g+hOJaIsT#JlX4dnn0Dho17yU-8lv;;jt3arPJB$V8 z5kPIm*f#Xe9%kP` zf}yBDtR@KKZgUCGuLlrf1gHSzAW=-sk^t znPKgV?d;-LS!SmJ(lcA)L*j5Du{Gt7g3qz%5RynTo#7X-d^wWq&&5GhD8m!J&S_&H zBbuOEo3de#(k~esiX&JYIMU;IcR=pxaMyU#1Ezv#FJ7{^gZR2}>pye<|2ogQJ=tLLuXt{M0ruyFBKE6kZs`q!jHy@Fb zV5{~VIEe7Mp^>dJhklztS~O;hO{TYW9E`5Vhychg1gAt@BXp@=)B>-aefvT28P4}g zTX7i~aEi!)(;*GKDUk}f?v4pB_Y)U}?y1I)7AB^lIyrbrSwO-l|rQOE(CW@0I$jg6wjC`s<068+vCqGp6 z7_Gn}*R830L@;_eOs^H|pG$b)bnhtlZE`1TSz%e|X+<>)+a&qwoRJjD*V-Y-$zG&j zyA80$8s0@!ylS)!& zka6#!yyh~J6a7%-c9vO$N6EnXE!^VRe1>K-!8BYOW(!~M96h6KPtnFu>+i=!ZI5FJ zt)P?mZ=e9GVuc1yer+wyavz$K*oZM1Yd~v+A#DQ`#M!M#aJ#ob2Ir4-Bik@)2OEv| zsxsjc8Z9<%HKVE48hF5Zpbk*`-oZZfvRakgA}tTJ&8FB>!)#g=u|n0|eR393A-h}Y zI4*Wp3x-9Y=b9YmCIu)v@>L)`(FnBUJ`w^NHs;rCnUQT9`J9-uSl4RX3e3_y$m9ge z^KJ5>WTm3(v3X%T?cM<@-cJT7*gE#Cz8+ofX_MSD`uGy%73@1W?#1ZY6nse%zA?Az zij+jfTE4R5tQP2R07t;h_6m-YLENg}*r z)$O7N=kf7~qH8vLqzJN6dNV#x8!+{u!nFKsT4Z%f)T7+Jr9duM3CnKo`A2ckiS$x* z2}^ayIIWD6LrB-mbEql{)F6$v&Qn@U)1zXp*IAMxnlSY?BG`Q~|r5tfybG{ExO4zj0LgXu}8&(#wZa2u^ zg6RHBBJjYhIwSCK{{KWalRn;zCCD*w94r}mf@wiCJnTY-E2NUDgN`{e5|?L5=Y5(g zVU7s|kl0Y%L;qI0t6Y!n+FZU^kr!?oHd%>?z(%@ncF)7!-XEM75-$>1d?Q2xi~AS6 zHh9Zb=%pN!g|wWZ1k((WJ6hKM&Gu4a6|Mf7Sih)yM4H~+WC5=pNrJKF;#gQt31c+^ zt%r%G5RfSJs2=Ao2|cblmk>P#K30>)9tg%eFhWf$l@p^HXem1;iAi*aoJeVA2)T~* z)(Yl7la$&DD8LJr5F`UC*(|vsXJ=QG)5_lxa|w@p3a-QVE^W7w-1iE>P)S z8oGOl7PYKcBH`D#FPXKw2RnE*b!t)6&5?7e{r?VxZrMvh}0n{9d(id*Cg0xrs187G3Tw~EYhv>fY za;!J=6&^HL&?5ViEcf<%AP6IlnFq9lW&-W15c;H?FB&ERMG<)#^ zKU$T??R1HR{WWhA9?!nT8BPYa9~h+=b0%*p*F@*LgMI_6K)(+;zSg*71S#f z)9fOb0%fucWqw7hTh-7tpVebr@Q%uRTw2sfytrJBZ(Jzvuzw@S%aI-qHpP!1NGznP z;#BbjO@(o6MzDrq9)|P+;@0}2(x=AiGE_{~TkYo%`#~Hw(_8#R{whg3rFfh2&Ow@R zCs@|Nb!hbsFmrIS4sK7&xX39H<`(hEjM}RWG)44eW0W3IR(sy}2EQK+PLI!q=cniR zXK>sk|V|fnEC(Fq4 zQbZ<+i^WWGbI?64JcDVd^_*y!nZ}_AaaC_m#NffXQRz2LUt*ASR%V#qQaf^um4HLH ztgNF*LYh_i)|1(G0wRIOR$L^3O6?k~$6T+Iqn{rGiC^E}e|qL$~ZZ?H30hiPqoU7%_^EFKxKsG0F#$-)ONdMHp;bK;T2Za<16 zeXX+{MZLHTphg$AI1rc-+~sW8)VqP%vl!rev4@cq@!SV^YxjUh3=DWNLS=0jLXcUs zm?~5N^oJ*5rWBc%UZ`~IubSk{4c8rzm|z({TsQaZxH!^W7$#F?<^G1QaI;&X9&WNL zr8A-kW9a3m1tPuNh(d9~?+4nJ`l~smFN@E0fgj}*g=_dyeDhCwou_S&lpoRDA_=A$ z;4Y;(c>&GO1-HY240Nq2@6;ysfjwaMCb@9b{lxHI^Ht7!GfaxyT zEK|UABjU%Qb*@cSLQ>B!GW``hl46--DJeuy5Rr?5fEYah*4j(DFc(^%c7LG(+8wQD zN?`!B;17kgf8bx&Hu4Frx8BAmTvd9&@QQryj1l8dK`jeiezp2kB6{3-Ze<3Q(@}ng zNlksn;W%=f3mPTfnQF)w51BARHCG*gB!fg^9?M`v!N#rvEqdJhzy8=0g?9p4C=0=~ zs#EFp*spf`-HRTl!+$qkjU>Pm(7WD?;#BcolCE$`2=P0s#iITWGkO9+g@eC|&A3f7widr+r<8FyM$ zp!`xyVL@=@w^ij0=NS&sV47#FCmnP@Q~UVTb2l@46C$C+EIJa=xZtaT=%S|5T0-=Q z{hkd&z8dqc$v2?_c{kOO<}y(o)%L8p3yZnaKu&k+O&OWLLK7fYITG1%TT5B&h4)rm z1*^ECW=Ks)n^1jK)UJYz>ow!6Gr+cRjm%LY(Mm{}Q$kXWm(WB^a6a5^`Vj6J5*Jv} z-2|_I>Q&OrC{?za8K0N4adI4ZnS58%;wa5<4z)#C6fxn58DKQ8fC83PE>z@#9o2Cj z;;C&NTfRY%^f=Vr$&T=?(+v_RRLDh!nrmb?icgmy_)2aQR6HA>2%#-fNmZTfwvX(m zWT3#Z8?~nDq^c2kO!#NI;|}H@?(aUKW2+?!EI=hFjUyHO;hTl*)__W%lQXelV;e=wYqvLT{` zV04%J%f(a8h(#5IWBmlw1i=%qz4Z)}^9e1CEuCBHoWiQJvV|(B3;o5j@V(}jmF9qI z|1%S)+u>`{mQDRqDLF?Hk^Z8m2QNBZ(%u9Yvjj9 z0#$E#(jTN)D5dzPSSU;QClBMDz0QSw9A*dwF!EDf1m%fBuGR|$NGoNOhnovJmFANK zGdYhhVFGG9k6i@|8bz10$yE75c%5x>JV>K(fY>9s1<7v1k+L`UJ9Sx!$sQoU07DOOhBm&9GoRHb3QLyGs8w9SS(oF|CORg>(^+*)Bc~C zR?wrRlYO!+FDFye%wNP}VJa{Be!1nI`_U_I7$4}VQ^$FWH zlPd_RblbUpCW+jPo{-5=dIV-BIY#_by~=_csOllUhdgD7?dOzw_50JS&68vPg#hyR z&%1YT{*#f4^9$5!x<(H)T*i1s<7uaO8)ghaYN;o;1KZq+r#i(b zcC$sz8>F2rr$wyIixIk+M5qnp!GJNOnlc2lV>8m+qbEmsK2EA2i=?mZ{iiQ)?&lxg z-OoOK{OR`H+q;j}RZxy24naig!9h;P#n&Pn%nmd^hNUDqprH0B=C;X{xBCh{t;aZ-aLF!#jp z+=UysVljbBsB?ONjM5R4hhk2rDTIIrzG2wf((<{Ej^2L!@|X8_kNdwr`}XYVx5NJM zPVlTwzax7V=hONmS)48=EWBA z2sMl0R!ShfI+kufWyIll*eoAffi$=bx_`P`sfQ!U#xW8{?X^v3R*XecDh!bBq_6Uo zFC@1lZ!b6JMkr0(HdiSt7+RU3$#gMNy>&gD6jv9Fjh3>3g$ILgZ^q)k}&$RSFwK~;BoHpo#CEchVkJ#S ztE~E@(p|BGXdS6q;aV|w6~?wthx+uA61XWMd$n9E>@>_KnBF~57ZIb&^;suYJ4nO1 z*vbvq?w%z-a1p;&!tDMza=|ovpyfrWfakONtkG_@L`%$;8BLw%QvI;My?*}(Yet7( zy+1jeZ?we0(*NIPeoLLWG5IJ`k9=`lgnN8*=tB7jAho3n*}_{4 zDfv$$HkNEe5{SETgrWuAt6`cQ=?j;4_oFxW@BVfd3Pd^~v4eQ3hIN~M!dsFHa3e!h zTTs_7(o1;Gzf%E~6VVHJ`5U@;Uv&PYZxCv`6~&ldEe4cFUhE~A*sv&JeO#hftvR-;tkT{9yqc*`%nb<>=;;39qF?vBq?j6`)F3)>LMw+KfGj9&tO9Je{jxKm_W%N*R z2^}JLPQV7wHW>V(2^Yd2N)R@RDx~xJyhKag`PSJ?WxxOY?*F~p-+Q^Z2%PVfH8N1M zZ>|PpNDiABlG52B0@HFOL{2g6jU{aWbz3fT1SW=4(XBq_S`#n2m;gT}h={2Y)G2Hw zi0+moH#X{IP%tW*f{mnvT(S`q)Hr7$OH?Wt;I|1)7PJhN>a?)$_(tSS8;~-mo+po9aP!%l{k0UDP2MK-p1rc7aOi`*Gr zWoGZtZMWzvSd)bkqHjn{l#Tg36|;5{S#Ylu`ywe3`p?VgI8;9(?WA&up0(e9xVw9s ztKiVbPH~!Om6J?(WYV;mBaxSLvwh{lIo3-$0)xhPEyh!U^vFbvQL=VC8_iR2K?uJr zjtB!1NSnj`O(mIxzhWM-gpIR$7d9Yfd8q3ub{dDGE5^IP*dVkvW7TVz9xS>3Iha2Z z!PvrG;j|vVOiea{Y;=}G+#!Z#id@S9=1Szj!~r-A>vgJOx}Q-KcWQ?bFAnuNtI75S z0|MUNUw`@OFDPmnClEbkajmYK)2X^<5n|l9NL6${&me>Vw~*-FumM=)uEP6b)3jjr zbwOvt@)Td~0d`Iv1}w;`zN54_!A>(BqaxdMLNSruNYO56eDvmV?@jN2{jVN76=`31 z&AX;0q=sqci1g^)iv$|{IguMWA8O{33bsTsU@NYmso{A`FoNwOB^VL(yB>Y4;Bm{* zpqs2VAWUtOwd*^^2l|eo>Drf?F30Y0RWF<*l?d+FxD5<{-qZlJlK6xUW>He1Q93n3 zHazSi9qQZTh6v#cFS}y$a31Wior*Vf0syU$VT##hP@qEt;$D&=wjy{PXj6^sTpty2 zbf^{$_=YfMgja1*nPa0`UE3SjNqWg7V~crE2K9cej?iqR~($^B({AgCL- zfGnM%)VjC=0xN=Xk#={wh){n

    u!i{Z9n-$%lgrI4u7t@Z)G@YoYM>HyRE)R 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

    #}dUXld1ArXl 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 boy_#-;-C4#_v%u{tqb~BHQHFPE}H#cIRS0M literal 0 HcmV?d00001 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.su b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.su new file mode 100644 index 0000000..d484009 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.su @@ -0,0 +1,3 @@ +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c:81:6:HAL_GPIOEx_ConfigEventout 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c:95:6:HAL_GPIOEx_EnableEventout 4 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c:104:6:HAL_GPIOEx_DisableEventout 4 static diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.cyclo b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.cyclo new file mode 100644 index 0000000..eac00c4 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.cyclo @@ -0,0 +1,18 @@ +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:117:13:PWR_OverloadWfe 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:156:6:HAL_PWR_DeInit 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:169:6:HAL_PWR_EnableBkUpAccess 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:182:6:HAL_PWR_DisableBkUpAccess 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:316:6:HAL_PWR_ConfigPVD 5 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:359:6:HAL_PWR_EnablePVD 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:369:6:HAL_PWR_DisablePVD 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:382:6:HAL_PWR_EnableWakeUpPin 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:397:6:HAL_PWR_DisableWakeUpPin 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:417:6:HAL_PWR_EnterSLEEPMode 2 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:463:6:HAL_PWR_EnterSTOPMode 2 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:503:6:HAL_PWR_EnterSTANDBYMode 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:528:6:HAL_PWR_EnableSleepOnExit 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:541:6:HAL_PWR_DisableSleepOnExit 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:554:6:HAL_PWR_EnableSEVOnPend 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:567:6:HAL_PWR_DisableSEVOnPend 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:580:6:HAL_PWR_PVD_IRQHandler 2 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:597:13:HAL_PWR_PVDCallback 1 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d new file mode 100644 index 0000000..0ce5acf --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d @@ -0,0 +1,46 @@ +Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o: \ + ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.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/stm32f103xe.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_flash.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.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/stm32f103xe.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_flash.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o new file mode 100644 index 0000000000000000000000000000000000000000..e22b4adcf058c29347e774646743953b9b150a44 GIT binary patch literal 783688 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 z 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�_P7>Vgat<#U)$b8}*YE2ZD<$!dB5@`zj$7q?fZ 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

    h8j{y@=I%aEpH{wgK#yp0VKAHlp(Y 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�Urv) z+BjhmAH8_~!tTQG>m(r-%Sj+wEA3w>5x?Q5!JiopF6?5*tGfH+2p*EQFilkAt=7*j zpe!sb!T@3yO+PGs>Ik}=vhqb1jcNy5@G4JHL<8%H=dH)Bp3DS1pJ%38+GW0ITA zaQrF5@W2(O45HqQY*OY>H@`UPN)Gp~oAhz#ZkD##$6r{LIzkzP+#JVx6*CqBeWGj&xj*m1Ew7xa3q^iX1J zTxv0)B`k5Q6W_#26noacBx+jo(WxMl8=?UK*Wh;MLBq<03oY>Mbt@1w4;*T>dvegj z{;(`Q)wVPU>8C6la--qj;!IF5FN6}m#q}^_6%|J^5kY_8r2@U6tr_h?F19maAhNGe zQnxLx@gh@o^)A}FYbKv@)1Z#f4)d`eoLF>lafTxG zvlU5%<2p0R)Syyc&vR5jc@`C#89$d>{Hgf~+le&K^-AoBar7#*zSyC#dag=ddVE1CsAT^d58co1KmW$P6me3`+o{~@*A!UHDNzGlk zSN|D!V2X)UiPkN#uE8;oDj2Wf&W@QYdsQTf3LD7^qj=6sQacIAA|=rnWX1rRJQ`Lj zmdcq2CXW)7$Y(ox;d%RfgH=Gx;lo$YoIic5MF=Y!-0ioM7W&nz`{%c=zOZ|9r@hkx z;>N+5jazOze|Sp~;4zDu9JgbcjVT$w{s~(3>B^J%zJ#NbNNU2CC98bZ>dhXJ-8FHXIc?Yix^p9IJwdTkT@k>D&15^%@x@cERp?-+*Ag{PWMmNS5(dFIX^t6IjYs#y zJy~)}70XvwIp(S*W)#ocIQ7k&Xm(NSz+H2>Z2itYh-hI&@Sx!ScGe(yP@s3B@jq{2rWparQ@Y z{;LJ8rw5OauW>KKR!{rf4YuQ+>q*MuS#(?xXUN>R4bKnusahZZ!kOV z>UBrg=b%Icc|yh*tT|X-O{0gyPkU2SJ^P0?Gm2oEhf$ANd%7}NCfAd(b+s=PlDGzT z%j9wnx-0O4QW;lm$(n}@GIKpMFH^G8g5zEV#ip@|M zChW8{(5+s#WXCJ#9W{dHryGUvtiMd90>8X-XQyvDvpYRFb7m7B>wKA2K*$ghWFp(j zNEK>1YLo>tRCv@NeC?!yKGu}+FkAqprC6FDv8d%Z%_?iX^@KZAFI_W>Ifl`g#=&O@ zfLUK&_XLxBqt$80){M``iI5pB@E(h}a&F0TQ0ZXK#DHRD=j~!9=rWM7%nU6eZA1YZ zOQ$-e5~cxE1?I-cHF%LXRoDi$LlFs8SBD(OMkX6+mA%bS>Tthbt5sM+Kn;o(^5}Jj|+LgGu zM4ut}s8O0Oy^L^$^lPtxu#+pzO9YEq79_Bid$WL}$Rq@7#e7#r)^+LE5b*r;sd-CL z3kPRQ*%chH+yxqH0_^2eJ>Qt~GU$DC~YXb{PA% zywxbF8j(TWc<5pW$0~w5M1)%fp(7U!$9VFIizcG?J!aeWtL1IuE9 zyu3%<{@1aUVRYH1q7&_CKfufGc6vHaVkMf(B&5BQ(_P}0OQoh`_qy7>T{XpqMB=Rw zF(OXT9jFqTRfc~?d0|u?o>t;4_eC$2O16#i$x#3c&JxAmunnZiA_-CIa_Q; zi7KXX)aCM`Wf%4A6tLtsEKNoAV%&X9%5BM04f~B3`D(KuK~hTWNnSEblFw8ZF50zR zMX=&h8p;H$ELnL~z@n?io=mZk*NkCyg~AEw5*ISnnpN!kWeyh=sgRKCJxDMxIZia| zI8;>-{E;(hh@?r|4X0$fI=f~G)s|A$X2Wt7`f zex3J}Tu1-ZHOAM1>A40vsSz>q5*5_}Za2nap9h~Z*6j5rA$!4X*-R9aA#v)i5ovPA zhycZ#cy6DW)%0iHY08r2ci;)#f&m~*aEdt{63?~9I7cjKW?}i13(C=>WzO|vnGKV# zw%TPDtWYX@!e)EOjtSa)38v9$E9>z4eZq2jV|n9}?CHGj&B>^Jh|33!GTLMHO(E~> zi68fXjk1#4e+0`{+wNyPt4=xUpBWBsSw1^^`{~`Xzsu9usDE}Rf;bw&CLf}OT5mIr zNZwEidWiB4B+~pgt;nu*X9bATL6u}biK(U}#-UNuIBk*&Nvi-h6HU#t14*kF{C?s} zL|$v^TBVzYKdpstoWl7|WJ=*{8ZIn}y!c)hBH?6k#VFy$n21JLM+77-QR}%{yeKZ_ z0d^|!R#X(*fA(Cg4`Z`o7+zkz-f5^!^#k@F1E2f{w6d&bL>7l|9)mO0^=qiWgJ1Wm zf{8G9YI$|$E~;6TMu=7l7CP9NI91Cso9iPy25(@yCn_sf{57)hoVT!LU!BVfp*xaHQU`R7*g1xPVW!Q7hoEvPP+8J^g zAk!8?edmuNX}K|wc=pu#0<@vn=@s`I{C>P6Ldj=??NuvK)mx)NR7yz_xdeheAyC;D>ioyZ|r|3j8OfdI}wVRS%tb+8>iy|TV7_|6H5(!=9l_wv!$3g$K zw@`S=n=U05mQpOd9ge%2XAiGb8#i-_sHv6ezMzi+I|J7XImfr+f&rhMESTcj)eRh) zC+$^(o-k!OI+bBjRc#B-#IzA{?^MVgPrz0|9TDiUyBQddg1(~>iWxApk=iv=2*k`7 zPE0gaB_4a$su33rvM<%Er1hRXQF($v_?-c;tS|jjmIjrTj0KJP6;Uv^o;LSqoN#?= z>g4PJ`;U9F|FAt-DDbXJVK=Tr&i7{za;qLi!nDa<7eMs>6cfn$epuK~n_m!cZ z7Fwlcj7pDQG<(%g>9Y4<#=p$YLO9S6aSXJ&p53Z_c@q0bCO6Vy@TfMTCf zDW~)w>o|URbrn)V-9>)9(KZUPs3ASdli#Wcg><8R<37>io2TgtIGqW-1Q8au|{}a-`*08x$2DQb zn(riiH~hDG4LRNvG7>m36GyR2mp~r9er2lP$IN5D$nO)Q-M?1e{^63RAcEh2R#91o z6!I5rYavfxnh-eSxkCkZ9v2(PFDG9~jlIZe6xMATR@PlpT-k-Vtkb}nMMz>D53~8MZG?TR4 zXzrxze#G8klWVks6SLsDTW=Va)_^RI*4He-}TY)0j68P>s$yXSi${-D;;=GfEtvWye!u@0f+^JfH zaVK}7#A%f<2QVq*Q!2;t>tPd9gw(u!p>3b6{Oyz;hApT3?hk&R^M`fgG`Ww_C3#&~5{e6)iI7K(AS%g~QFTpn8ERwTG5(3`n~$|(61CBX5?@|vK2_c0Hr5mJ)vT+)57aC` z{*w9Gg^)-Ss$v%TZ1%B}@KP(2687>c>-(JLT|Q)5eNN$X2~gL{VN~5H0HQDa{FW>d zIq$5R3Ps3LWC=}i6cYy|=*ng94{i!Bk+_$F_ePTxKjaY|SuzQlUFg|f7-ERsEy|nN zGqLc;G1gg1R^aKguBiZinX=) zmSnGPU1A>xj@3=|HgkNH8Y}#sZlmBd!elOeHraOSjFTCc|1)k`0%Ng%z@AtMkWrILjz@hFpaj7Ts%BwR((*>z}_{$T-2)HL~iW_yc?CrJg4InM!rQ3$GA6TXmy0$w^}(5`qOXUBZt z(ty+YAGG0^-zAaZQRdW;@|WiR=#gBNdK{^kREabuJyd&gT>(E(z(p?&{4BdBI0lGy zibd8anGejiTAq_6*1Q6(A0gz!zkllN;LN!j=BSE*v;Wzh(>IWMIo2k% zdyLAXb$Gw$R2Ab2xet#r6e}BhI1fjQsWoJ?pPx~x8rP&aoq#Q84*%HsVUsq8t<@9L zD`+@3U7Hg2Y!5(h#}vvM)(pkh+6c<)t8Sx@s8~7p)Mg|ztY(w{J(17d7i#SmuIF;k zfCE)36(>RF9fX3#D0B41!UCL6kkT2pM4aJy6n4N-n-s*uYWF8oE{X~o2Tp0X2Zrqe zeQNXYsGVX9Wuv96U%)}?a$-E1@~9B~H+7CN@1+lUv-Bd|FfRi=z&u(n$y6A} za5q>AwmgPLA|3}1rJK^qF=F0|9P|-++q_{*ion%}i8qA+PS}g)=8q-z*5EiB*Ru=2ZB&KB z7@XDeiCx8VKy0-d4S_8sEHb3EmB0`^xH#xEHYH1m&15d01NSL! zs}nntk#i*9VG|-6HsCEgf6~IyO>$_P7lFH_WA8nM-QQf%`IB!F17ZqUGh-twPk5cS z)S3$Mm6bE7V9v{?qbM*~lw%;cFwA0~2Zt^-OA_qukyEz!9o!?}`(VS=D@?J%YT$by zIo>!pdvW+&7}cq@C50Z96ysfa@_w6^&YybfbPv5=7fvVg2)I%y&T!YTztIMtPN8 zXdDgm=*};M!&zKU?UHN0ijyv@L!+lHbOiqE{o`iGx9}`-4=2nA=)|P65-OAfSaqz4 zj_6jUsutP1GCSKGgy?I8{3@8*<|x*nJSx`0llVqAF;r=ToxM8={H!V-Z3+BD1<*Hn zC>p;ty2g*yW(PvL`Nb6vW0k2Tl?5Z~CSGbpSfm6lP2XY*`j4ZF%9IjH-mk{9p(SYX z;!4N+Jr-HR`-7Z#zf6;NS0}RFWum<7U^bGRCurxX@Ez?Uqkbiz^C0<58ib z2%p#-eRMO_P)J2LzjO`s&ba1_eh(x+H!5W9WeB^MG0yxaTUs0LY`(g* zcfR8hTp~at>CAE1Z%dikFR+2O4p--!;HlR@KGi%Vqj4)&j%D)-#65y-J+`#oSUY#_ z%!S4d=qEiG8m;!>&f)Xma}T$XH>o++Y9B)K$KF9lv>LeDX^yqWisJr7QG5Y^mlgY7 z^nm+cQG7MZ;qO8CG4+6ZyyCK{D=we8;)Hoa`T_UG2WH>aWE~%a<(fXU@d{&f{QoAr^>_HQ{t4f3#pU_@u(=i5c2sSfdKxYc zhJ(%1#bsCG=RL;{Ef)8>@8yg4+4qopJnXWEU-pRokG$+rmp%Hj$KC77%Yd)`rPuCJ z{M{E){QlyJX|dR!jb4HBlPdTp7Z1;_Jh`xMvv=6s-&Z_2!|pGhQmOxx!qz}JN1jrt zf1pzT0P8<2*0Q_Hzx~C*O8tYC`UlI(__e=yYNh^DS^wu_t*6Fc_G5o>Ri*w_mFHho zssFS}{ijvx+hCS|`-?-B`iEG*8><|OzwF2U;&7$@;Y$6(mHJm#>R(-{e|4pPvr@mw z`d=Gs+3G6)_809+{Wj~Dqtq@dou!{c?SDD)qaS`rS(XvZw6E{Y9@*zgMZ> zt2}?KQh%&c9|S-7+h2@V>W{O2Bi0#@zwF2UVzN?yvVwnlrTolF`B|0nb1LPjO8FI) z@+&Ll=}LLFQa)BG&sWOVR?3T&@^YnoqEhZx%IlT#sY?0!O8I$}^7AX@jY@e?DQ{KE z!%F#vO8Io9d{d=-bESN)Qhq_De4$dlSSjCDDc?~kzpzrivr>L>rTmgg`K6We%PZwq zf#RiqmldmN5fuJ4S$Ti){;YhD;&WN~o<-X>hxm7|VwjaLFMc2^-@EvotbCth-@bS= ze%!a{Waax6H)ZAf7eA1duPA;uD?gyP*Z%Z*4=kRQl^;}`&&m%j-kOykQv7jNerWON zd!)~MSaC8dKfHK-R{pBu_p+YU@#?Jn=;A|J`7y=i_e$^o>S8V{ zKel*jR(@RZzO4NCqPRT0zfnwO%AjxGQYn91rJM~W>Su$2a@LtBWu1d^ z_OU2ujYm0a9Lo2uy#GFx@_j4i`&G)uft7#ziz~_ke(f*7&?kTUiw7np!y6Y={_QUw zTo&+afANq?`Jt6^$>|tke`WXBUwl=i{v#^oawqlsA63CWx>9~jrEJ`B`M1A#Y+1ms z{l()dWz3)CZ-3E9N>={~mGYIv+c9J|D~v~Y2>8QaRoPnp5M2FuRz6t#v&!!x{;9=% zFvNDh*T1TGOjdqcaaiRE)<0CtW#z-gMpnMMxK-tC)^8Tys@y*S# z$%#$eI@um>Zf&)P!!f|&roSWJjC(qhkccNXHzx*Tt*wd4_U8CjXMB5Na&oIXIj|EF zI?eQj&CcyZyKCZbcV~QJr!#1dx3{;tJCmJWZ)dBsy)&^jzS-Iw4mWw%#@XR*XHIW! zSfY2N9mSnpd|#{88f>dRShv+}Z+Cabb_SE($+7Xtu~x6MK$%($MM+h zcC$6y8g#nd_SWW3uiNalniKfGPS0D_@?$)*YCKnyN#Rtj;(fgXV4k!bT+qI+}8N`&O~#w+iq|7+T#4 z-yVz)cP8-mws)Mr>V~Z?+|wSz!1l%`Cx(-gliR(q$>!!nb2zp=-0lpwwkErqo$=~x zFhdXTbi3o-R=c^=8lX+x?cru`Y-e(Nyt}j08t-lUm}=T-3XQjWhw%wx+f7XBoi?WJ z_*iFb9P}_G{W9fJ|@Ft!c zaAtVJVCxS1w9etl*5;tM+3R)(-L3ZKuszmp4q8K;@rq8J93nlWtw0PFW)g0|(&!AE z-F9!RJ=vP<4Yqcg6P>Ne-dL;EYe8GI*{v)mzR&ONjUR4J;M2B-ShnNc;pEO{7fs!1 zjqPAz5AbbSpXiK(^BjXo%-dEEZQb0$dj^BSM60ufFGO0qtv9jh?KzdHd#p z-`m-0bvvDjUZ*=TF*X4L4AMBnV+P|p)`&m^(gDN0@vFO?iD9cVhGB1RVpUIq5VSFP z!!eMn?Ln`O=KHI=&B?=CgB_5#t)1aGQpZk$9`>-1Hix~=_*M&KqV8r;iQO<+Ks&mv z@h)iIpx4|6QAQrQv2hTKUUP_r78XU?^qn(<3pe_Q_qK+E$-#KL1u6lB>Lwo5?rvh% z^>(&*+ReI`^X~ZR1FWja$%&mEP_^#PaI@8!Y>kaIcR=g$6PcuZO{TB6qd+*%JLtEq z?l?9BbU_DtT`aKf82(`+>Y!6b@5Ox+6Nd-b6uLX@;Y0`HH8}wy&}_A~+Jp8GQwIy2 z9<$8vHk?0;oNng2XvNvHgUvI;qc^SJf+NI-7cNAE^1#(#+@}_~jALDYNP0zgr8-aXH~RxEyklgLgWDfA#0q=ua#Uz=1&nc*}-1qDPnmEUs#%kXYf4;$Eg_oBEO=Gd|NKrgj@J2zC z{P!IxidzL=CiqIh?-hK9;0FaiBKS$c$ADSfccdr|3XTiT3ibsDg69O^BKUT}_X~bl zun*D8p8GPv?-2YU!FLJ%wcrCGnpyp;1SbWL39bun3BEw^)q+1P_)fw13jU_x9|?X^ z@H2v+7uHRglL*BXSn)#P!z|M>0ITfN^6qCGPP8%1%AL9~bMM0-wJ8SVL6gLufM zL9~bM#ly~88SU9Mh==Ys2>OAh6#J%%!X)>7N8FyX@2Kbs%6LSv4{+SzwE78+;QMi% z?*-g2JRsi($o`oXJ((+t7Zt#R7`@!!@uGOO!TF;2PJ?*Z8x0;QiXS$3ZBhJ$!G)su zIfF-v;++N;i{gC-moQ%p9x007Gq_w7A2o>1_>{pDMe(-=SBv7G4EBrSUkt9n{$%uI zy(sQy5RHGh!Ba)?ID^+g&NX;_Q5-h-T=c)e=fSRJ5S@F>;PZ>(gu$;Xisu=`$8Q__ z`l28`8x+NDRz6Y`cN)ZCyiDb95&U++?-Kkz!GACKV}d^|`169lEch#ezb5#f1bYAL*@4fen9X;f*%(AL&1*=ep2wS z1V1DAS;5Z>UZ#G%T<{9PhYCJQ@bQ9A61+;VB^dU{XQ@0bI4`&?xGu=~b_6C>m2VKd zS@4439fB_we7WGO1Yaxo2Ep$ae6!$>3;v8?*q7g_@_Pk8DEM1~zbE)n!A}VOh2We2?G<1V1GBVZlEX{J7vJ1^-Gg z@O7V6Iq-Lv-NWB^xnSV)9;))A1RpQ>B*Ci$TY}?)&k~##oEKacTo-(v;6U&O!J7py z2;L$1V!@XSzDh9giEmK(`vu=D_~U{Yw4i-Lh4e!t4UA^6*Z9})bR;GYV9 zN-*%p|Df{c1OuOZPcX*&(9Zh_K3MP(f{zt^qToTns|9<4&k&pvJSMm(*cZHBa6@n? zc$44@1aA|(Q_$>v*3MT7zDDr%f^QUjli*tf-zxZXg6|M~kKhLcKP32J!9NuIxZo!R z|4Q&Pf}a)qyx?V*dpj=|G+!ud_d^9ACHQ#3Ckb99*b*EUe3sy};Jo0n;JV=R1P6jQ z2;MAsLGTX27Yn{z@Ku7Z6?}u>_Y1yR@W%yzM$qhD_I>XZe6QdK1%FHM_XIyG_zA(k z5d5^@-wB$1%%1zNg8LzmSlR4k1|KN+a6z+|+4Uy~K1J}5U`KFL@Hv9Bg4YV35IiOL ze8DZj(}L#&FABa;@Fjw;5d1d5*9m@);13F#9nRYQlY(y({6)cc3%+0QHw1rM@FRjB z6Z})bPYM3D;6Dg{PVftY_q>n4-|TtTjt2`qLh!MIPZT^Tc(q_p@EL+rg2x0G1^a^6 z3vLJw1#c33f#7X|cM85#@RfqE5q!Pi8wKAa_!hyp3jUnnI|Sb&_yNHW34U1c4+TFi z_({RP68wzdX9Yhmc-eiuA1@cYLhzx2j}m;m;FAQe5^M>M3qDJ5T5w))S#VwOd4dDM z8w76_ydZdo;EM%cF8C_J*9yKt@cRYdEQsxc^W^_2d2vVYzgduaizC>7RsJTyR|KRb)Il4Y4xG1*9m^F;F|=4z9Gna zzo6^y7W`Gg4+#c6Ly+_SMAtth_&0)|75o>$Am80L$R+B(FLs{Y-TC>Y)_aKB^(euH z;8O$-3kJQ&GgY1zyhaeJsAAs{=@9{gKIDs?-*@*ro>=(%4hl8}#|2?3DE1vGidjLZ z*ou8epcfOoyW{ZxHoegIsr_#j{0YIg3I38`&rtMZoMzY%r$52<`~pEVwHe^w!^`@+$?uUGNQp=6}BL zNKpiR^-rn%bArDt_+G(Z7YuspKT!GOf`2afX~Dl24Ekv^MB4i<7kq%=!v()uFzBV9 zs&Y$kLhw0)bAmx1y{7W>1UCgw3*I6a^w8g+^2-IkRq%C!-zymO&p)Q}&j|j4;JXEX zRWRtCe^=#?3jT@Urv(2-FzB2AMdkg{kKR}C!Gezz40`4#t9(eXEBFk-qk=)dyrS|c z!LJh>3Z4-Rdgb76@Dg4BX2I78ewSd-C;za@KPmVh1m7X}D}q6f{GV0+h~R$}{G=fL z6fj?c{`i0D`WFQ61;TCf=?cMz2?o9Kl`03nhNjBng2BHb=!+M0y)XD&!GYk7fK3{NKFz9{Ht9*yxHwwN&@YRAr z-}`+kzgh4n1m7n3OM*eq`)exymf-ITeoXMs1cQF}Z&m(h!T&9IPw6A?FBtT?k5>5! zf(Hbz790}{`rH|nuN7Psyk79@1%n>c zw(nECuM%tv2L0?2m5&K7 z39bu%tzgj0{u`BFAb7jriv|CkV9>{Yr^;^>{P%)CF8H&8K@a;MRsMkBe-ivXL5r6# z`V#c7|4rr32>z4czY5;tK3+fQT_2+IqXZj*PZ2yU81${rRC!wP8o?8S*9ita>yFAd z3+@WOQ1F`sgMRhfRepou4+#E<;7olyBXf^&k4f@^|7Z@Q`SX~A0rZxj3m!JsewR+V2T z_`QN}68tg2pAq~8!FLP(s^EtNe^>CMf`20TDZ#%H{H)-=2=0es#^&991s^Qr1iwe{hXmgu_|t-K7kroC`vref@WXQbipaX;_3e!bugf@cMT-`0y%eyQNM2)7Ya ze5c_11cRT}|Dov~qwG4^1`Ib%nx;t_+ji2}wynmtZQHhO+qP{sjnmj^zPI1G@?+Mu zp7}L%uYJy0d*<1DpD|zNEk58g{@Bm@Y!2f5E(F6e3V-ZnB{HXEdj8mJ&ujj%k5$@S zi8WZC&G=&vtBbie2XQ1P@W=kuJo8en;b!jQkG-oC=JUM9yL`kS`&RGG-x$pKT_{H2 zk3Fk+=A=x+Ow7q2`&Grw(sydjv^Z)nl|Mz+vY97NM`&6^c3%P>pxs5;e zsE(LV^Ad0J$DaO={i)Z!|B3(o1Lx=e{XD-i41erR#WE*k3Z`RL{@9l)Y%ax$tj>D; zu_x8W+?l;NkR$kGKWdtJE|+jMH}S__)B*E<_Ye5*_x%6s1pen$^Bw-!hk9Xt$FB_P z{4OMa>_J5{$7K?xW=8(lf68wz#lU$DY$3 z^I@LiMc&|#{iY}8SNzED4DLMd$6iw;b4(^+a;D{veWu*zLM+J&ti~UEOij$K*@->u4TKjuq* z;J^H_cNE(BUPQ)Vd?w?MeWT3gTr9{EEYBZ%Ms>`M*@_+6gFp6*hMC853TJZ>f9w@) zFmLBR9_1PS*eAMWe!ypZ!_WM&M-;+&URXw9Y$oE5{h{>cY|P6dEX^N#Lp99x*^F)3 zg+KO%2AM~40;h8xmvRj^a~BWt1kdvt@A47<;d_2#Fz0un7=h6lk4c$^nV6FWSe)fp zm9^Q3E!lzH*^fgxhLbsq3%P>pxs7{ygr|9lH~ANz@-;v4zZ*OL_kQ#%!!R;qF(Feh z9kVhI3$qj}vO4RrDci6!dvPE~a6G4RE|+jMH*qHq@Ho%$D(~!{4B<@tioDs$QEqRZtTk;9L-6b$pu`_b==B5Jj_$P$Q!)RCw#?^{LbKE z0>{(ujKr8sz~oHJEX>V9EXfM2#=306*6hTd9Khim$Elpd#azXW+`;`k#F#FM%7Oue8~^|m%oGybPCOgjKTO!#y^;uxmb`TSe}2f4jZ!-JF*A+a~Q{R3TJZ>S8@Zl zb03fL3@`H*AMhF9@H2yi5A+Gau#CdkOvIE-&uq-gA}q~Htik$h#!wng4yhg<=FoXFMil8fIcn7GQCfV^!8>BerA* zc4t2h;EX-1@ z$m*=erfkE`?8Si`!SS5Nxm?24+{B$cz~el}tGvU9e8G48%Ao)IL-v22LNYv~F)ouZ zH8U~?^RpPsvI=XlAzQFLyRk2aa5N`zCKqry*KsTN@GwvDB5&|MpYRnw@;ie^4s`mR zkrug}GUXC0T*hSeH%Mnw{8_12~-HIF)m_n5(#vJGh_6c$Qaqn}72;-|`E8 zjuPne8^bXw<1jH(F$1$RAB(aKE3+mWusPeYEBkOTM{y!&a6XrDEw^wt5Ah@~@H+4D zF<X(E@!!Ff5}mHWM)=(=!|MvItAF5^JzNo3Smsur~*BBqwk>=W!|5 za5H!DAW!f-ukkJ)@gKhDHwOFPg&6<6Z--(8MrS-GWg2E;P8MKsmSa`cW+S#_2X<#a z4&@k5<}5Dc3a;li?&T4l<|W?bUwq2f{KWrm4E0~1Um1px8H)*-g6Wu*d03dGSdrCP zk4@Qzo!N^6IfCOkjdQt#tGS6gd4R`xj#qhy5BY-c_?1Eb_Ydsa4}bLBX@8=kMS(8@HYSEbH3#l{&z2? z|Bj>I7>-dHhl!br8JL~=oFd}8H4eejDIjQbFm;xusr`{9X4hwc4QCs=P-`t6wc-%uH*)8=RO|g z8D8csKHxLH;b#Vk8|V{)VHt(7nTRQwp4pg}MOd1ZScCQ1jBVM4y*Y>@If2tTk4w3R zo4Jbzd4lJ8jd%Ho|L{G(F<87nr%;T*=#0mtOv6mf$pS3Sa;(bQY{ZuA!0znFp&Y}> zoW+G)!S&q6y*$Fxyu_RQi%!{4B<@ ztioDs$QEqRZtTk;9L-6b$pu`_b==B5Jj_$P$Q!)RCw#?^{LbJB1D$?nB*tU{CTCh^ zVQv;;NmgJr)@2j6W+(RK01oFkPURdf<|=OF4({hMp5+zZ=HGnIxBSAN69xMG#&C?v zI84k`%)so-$D%C5%B;x-Y|eJ<%03*-QJlyboX=%k%Pri^Lp;d~yv}=k%$NMYfB8$| zK&Q}*$QX>zWc-7fnTrKkg5~)q>##9fu_Jr1KZkKFr*JkGaV0l!JNNM@&+syD@d2Ol z4L>tTl0csj49h5t%|uMe^vuS*EW*;P#2T#6W^BtY?9D+O$qAg!d0fgh+{|4($P+xz zYrM-x{D<%Pjlq%zI)!2cMrS-GWg2E;P8MKsmSa`cW+S#_2X<#a4&@k5<}5Dc3a;li z?&T4l<|W?bUwq2f{KTJ<1^WETFpSJtOvn^W$E?i5!Ysv#tj>CD$~NrGUL42~9M5T- z%OzaRP29-?JkE2x$~%0>7ktOB44OR9DI~))8sjnvQ!^uTFh7g2EUT~<8?pu4vm5(z z2uE`gXL13Ta~-#G4-fMcFY*TO^9f(^Bfm3via@8|8Hq8OfXSJbS(uxJSdtZ3jdj_C zt=Wk^Ie^1Cj#D{@i@Ay$xr6(8jAwa;xA`}p^DV#d=ahjyzcC!6G7b|n6*Dk9^RXz) zurh110h_ZOyRr`la}+0X2Iq4b*K!MY^AJz+01y`GCi{~FN?4=E3pRavl-j63wv`AM{)wEa~_v+4L5Ta5Ap=h^BV8+5&z+Peq*pS zfli?qfzcU{NtuS3n3DxqoaI=Rwb_U**@4~Jk3%_zlR1kExq|DtjeB{7r+JAt`4^w^ zH9zsc8@2!c`9H%jGGj3zQ!pK~G7k&06f3ei>#-@@urqscAV+XKr*STqa5Xn^ClByA z&+#hn@F8FD9ltVY+CZm}49{qc%Op(AjLgCOEXJ~|!dh&|7HrRM?8_k>%}Jce1zgT` z+{!&X%u~F`8@$gae8rFa&fw_+oqlH|#$*B}XIf@qZWdxmR$w*$@7Y2Bf7~`vOz21IfI7Ve0CT1#TV0PwXQI=t4 z)?@=VXFGOf9}eayPUH;E=Q6J47VhRDp5z5y=RH2=OMc+L{3S!6Q)otH48~_N{=v-5 z#eyus^8Ax^*qE)@kv-U-!#I{xIGc;Ok{h_4`*@URc$v5OfY11bpBW@$pic;fWfaC{ zBBo?|W@BC!VQE%k4gT*TVgG;JHe*|MVQ&uNNKW8%&f`+9;b!jQL7w1wUgKRp;y--P zZw!_x@NPUb8w$CSzh67{>|rn%P;&nTj2Nojo}!TahRB?n1R`uk40IA zm06Pw*qrUym3=svqd1W>IG@Y7mRq=+hj@|~c%Aq7m@oN(|MHjYfli?rkueyb$@m8| zGZzc81k3YJ)?s6|Vn_C1e-7hVPT_1W;!1AdcJAX*p5bNQ;sZY88-8Yx9DzO|7?x2O zn~9i`>6wjrS%jroi8WZC&DfS**qehmk`p+c^SG32xS6|nkSBPa*LatY_z&On8-wKx zbPB}?jLvvW$~4TxoGifNEXS&>%|>j=4(!f;9Lh1A%voH>63Syo{!He?I7XE*lc5RT>~&g23v=Q?iX z9vO9H(*) z7jqRiatHVG7|-$wZ}V?H=UaZ^f9L-Hef`F8jLJAn%v8+4?99iaEW^sI$p&oBcI?VN z9L!Oi$Qhi^Wn9ZG+|5Hg$qT&Bdwk57{J?+tOTIv-(2U3!jL&5JgPEC&1zCdS`6uhJ zFw#pYaVpGf4hGpAZboD2&ZSOv&`j#=I=T z(yYW9tj}g_%P#EAK^(~moX&Y%$~D}~T|CGWJkM*q%SZf&@A-|v3IsZZVgyEKJSJrt zW@1hjU~!gXRn}%Bwqyr(XFm?*7*6IaF60WX=Qi%;5uWBH-sE3=%GdnF{~iqc^Z#CR zzcLIXGZqsv1=BGr^RO^Wu_CLp9-FcaJF^!Das32qAOeSD*rezl9W+9ej1y*BSHeqXaVowg>aE{|t&f#LN;zsV^ zejejlUg2&2&F6f}FZ}OW#{a$Eeq%UBWgI4EDrR7I=3`NoVP)2212$(nc4Z$9<|t0& z49@2=uH_c)<{_Ts1zzVpKITh);J^H(XrNPQMq~`eXEOf5%*@4tEWz^plXcjbt=N%0 z*q_5VmQy&Ji@1^-xSjiWlxKLExA=h1_=cYuq*$O&2!>@8#%3a>WO`;}UKU|#R$>j- zXEU~C7xv~Lj^qSR=R7Xu8gAw;9^?t0=QZBtBmTqp{KjC#1D!%K0;4k?lQIo6F((VK zILomrYqJqsvID!bABS=bCvz4Tas}6O8~5@EPxBIQ@-IH+YkuNSB?5hZWf(?gEGA?M zrejv-VPTeHMOJ4$Hf0-jW-kup2#)78&gBxW<|gjs0UqZ$UgaG=tck zyi}mm?~KHlOu*z!%Ph>zLM+J&tj4-*!q)7>o*cm89LK4g!^K?1joiWgJjS!U!rT0t z&-s>L_;cw%pWhgcQ5lDcnTi>ho%vXlWmuUt*?`U2j$PS@gE@*5IfL`LjBB}tyLpHw zd4bn?kB|A1ANVhSDHG@vnh_a;@tKT&Ff((pAWN`3|70CDW-E4N5BBFUj^z~2<|3}- z25#p*9_1Nc<}E(pGrr+x1}Pip6M|tGg|V54DVd(xn3qLZnw40C_1TPV*@eA1h$A_H z(>aezxrUp$iwAjv=Xs5H`H27UJ-;znxj?5-jKJuO$D~ZdOw7pwEY5PQ%Gzwimh8ap z?8l)T!^xb*g4DPU1{1;Bv0xR_@_pp5jH`;C(*fD}Lm62Co?C^gAOlCKE6@ z(=rQlvk*(N0;{nuo3J%Iu_p&`ILC1+=WsDsaU*wdKacS&ukbei=5xN~7yeu+(C0UX zV^qdrVy0pSW@kPYWf@jxO*UY2wqsZJ;b4y9M9$!RF5_Bm;cgz{NnYS}-s5Aw4v$=>Xxq;ick4JfimwAg1 z_>6D(nL(-q`h;LuMqz9wVoIiGHs)m!mS!c^V0|`YTXtb@4&q2o;B?O8Qm)}HQ@qFw#pYaVpGf1sK zpAZboD2&ZSOv&`j#=I=T(yYW9tj}g_%P#EAK^(~moX&Y%$~D}~T|CGWJkM*q%SZf& z@A-|vY6m)nVgyEKJSJrtW@1hjU~!gXRn}%Bwqyr(XFm?*7*6IaF60WX=Qi%;5uWBH z-sE3=%GdnFpXvnq{K_zl%vemw6immg%)`Pg#fq%XdTh!z?95&q$PpaRX`IU?T+L0~ z$pbvjbG*tse8?Ak$FB@pH_$00!!sJ=G6_>NBXcl6i?J-LuofG#1>3V5`*H|Ja}sBA z0heN2J5pK+p-ILa}Y;z0;h8xmvRj^a~BWt1kdvt@A47<;d_2#uttGSp%{VD z8IMVshMAa?1z4QrSe3Qeh%MQH-Pw;rIfj!tiwn7e>$#14d4#8Vi8uKdpYk<7@u$Xt zKEE;yBQq8gG6mByEAy~0OR*xWvmTqW4Lh?J2XX|*a~kJz30HFyck%#_^Bk}84j=Lb z-|;JhHVJeJ$?%NExJ<&-%*Y(f&tfdgDy+qZY{B;I#=acF(VWDYT)^dA$F1DM!#u@{ zyutf?!dLvr?+o5F(CK$ZVoWAra;9Y#=4K(5WCd1ZT{dBBc4AKs;Bb!PRL$CSzh67{>|rn%P;)7S)k8v49BR9!^BL*49w1aEXp#h%$jV#=4{8V?8Ctv#fhB3 z`CP`e+``>F#FM%7Oue8~^|m%lU*bPCOgjKTO!#y^;uxmb`TSe}2f4jZ!-JF*A+ za~Q{R3TJZ>S8@Zlb03fL3@`H*AMhF9@H2z72=ocTu#CdkOvIE-&uq-gA}q~Htik$h z#$hb&f-F@;CgQ3ULN6TUgAyu#ixADPyDG>pwF)i!^n)qgiOJ7 z%*s40%u=k#>a546Y{Sm%#ep2b@tnrFT*B4d#GO3A<2=W!yu*il!FT-1psfR)LNYv~ zF)ouZH8U~?^RpPsvI=XlAzQFLyRk2aa5N`zCKqry*KsTN@GwvDB5&|MpYRnw@;igK z33U3Mkrug}GUXC0T*hSeH%Mnw{8_12~-HIF)m_n5(#vJGh_6c$Qaqn}72; z-|`E8ZX4+H8^bXw<1jH(F$1$RAB(aKE3+mWusPeYEBkOTM{y!&a6XrDEw^wt5Ah@~ z@H+4DF<X?E`&6Ff5}mHWM)=(=!|MvItAF5^JzNo3Smsur~*BBqwk> z=W!|5a5H!DAW!f-ukkJ)@gKhDHwNnv=oE?(7@hH$lxdiWIaz?kS&mg%n~m6#9oU`y zIFw^JnX|Z%E4ZH9xR*zGnwNN!fAJ|_^AmsS80hmW!!R;qF(Feh9kVhI3$qj}vO4Rr zDci6!dvPE~a6G4RE|+jMH*qHq@Ho%$D(~Em z*FdMxjK~;_&t&|AnVE|PS%T&HC+n~=Td^a1us?@!ET?cb7jY#wa69+$D9`XRZ}9=2 z@eMySNVhPUb8wqcRQ?GZiy1JM*z9 z%dj$QvH_d39lNp*2XhoBat7yf8P{?Pck>WW@&d2(9v|~1Kk#4v(kIXeIQ%vS8k9_-Iy9Lp)3%|%?v4cyLsJjye?%v*fGXMDrY4AM8yCj`SX z3S%=7Q!+iXF)xd-G%K+N>$4f#vI~225Jz$Xr*j^cat$|g7Z36T&+{7Z@)7^xdwyfE zet}M*7=h6lk4c$^nV6FWSe)fpm9^Q3E!lzH*^fgxhLbsq3%P>pxs7{ygr|9lH~ANz z@-;v4r~ZLHzcLIXGZqsv1=BGr^RO^Wu_CLp9-FcaJF^!Das>32qAOeSD*rezl9W+9ej1y*BSHeqXaVowg>aE{|t z&f#LN;zsV^ejejlUg2&2&F6f}FZ_8>pwDj%$Eb|M#7xBu%+7o)$}+6Xnry)4Y{#zb z!@(TIiJZatT*kHB!reT?lf1y|yvN6U$q)ROzYGp^3eAX&!T3zZKbV=hSdb-Ho`13q z8?zNVvIqNf7{_u7XLAu(as#(>ACK}3FY^{3@EPCmGlL8X^a;VRjKbJV#FR|WY|P6d zEX_)+!TM~*w(P>*9K?~F!0DXFrCh_!+{J@D!SlSvyL`ld_@3VwY-pfUC`Mp(#$!^Z zVJ7Be0TyRDR%LBAVoP>lclP5@j^Sj^;zF+AdT!%h9^q+T;!Xa=r+m#%{ApOA&#w%_ z$c)8=Ou=-_$~-L0Qmn}8tjDHo!_Mr*fgHi{oW{9a!qwcwojkzfJjbiN!-ssqcl^qr z!vmc{GCZR(E|V}dGcpJBvlz>=3Tv?;Td+O5u`h>kG$(N;7jQY(aVz)mFi-I!Z}2{! z@D)GuJA;o1bo!l<7?TN@oN1Ybxmk!MS%KA9mrdB3o!FBDIGp1+m2u`Ro> zHwSSfCvZCFaVghuGk5VIPw+gi@h%_nAHL@|1{)LT6p9fTo$;8IX_$#QS%Ae^j#XKk zjo6YM*q!}2lw&xVv$&8exSrd%mq&P-mw1zZ@hM;P6Mq^T=<_SXFfwB?AyY6Nvoa40 zvlJ_`I_t41+psfxaUe%!{4B<@tioDs$QEqRZtTk;9L-6b$pu`_b==B5Jj_$P$Q!)RCw#?^{LbLx1D$?n zB*tU{CTCh^VQv;;NmgJr)@2j6W+(RK01oFkPURdf<|=OF4({hMp5+zZ=HGnIxBSAN zCj|QZ#&C?vI84k`%)so-$D%C5%B;x-Y|eJ<%03*-QJlyboX=%k%Pri^Lp;d~yv}=k z%$NMYfBDPAK&Q}*$QX>zWc-7fnTrKkg5~)q>##9fu_Jr1KZkKFr*JkGaV0l!JNNM@ z&+syD@d2Ol4L>u;q(Gk#49h5t%|uMe^vuS*EW*;P#2T#6W^BtY?9D+O$qAg!d0fgh z+{|4($P+xzYrM-x{D<%Pjlm`dI)!2cMrS-GWg2E;P8MKsmSa`cW+S#_2X<#a4&@k5 z<}5Dc3a;li?&T4l<|W?bUwq2f{KTK81p55SFpSJtOvn^W$E?i5!Ysv#tj>CD$~NrG zUL42~9M5T-%OzaRP29-?JkE2x$~%0>7ktOB3_3N?DI~))8sjnvQ!^uTFh7g2EUT~< z8?pu4vm5(z2uE`gXL13Ta~-#G4-fMcFY*TO^9f(^Bfm5Fv_Pld8Hq8OfXSJbS(uxJ zSdtZ3jdj_Ct=Wk^Ie^1Cj#D{@i@Ay$xr6(8jAwa;xA`}p^DV#d=jnkyzcC!6G7b|n z6*Dk9^RXz)urh110h_ZOyRr`la}+0X2Iq4b*K!MY^AJz+01y`GCi{~FN?4=E3pRavl-j63wv`AM{)wEa~_v+4L5Ta5Ap=h^BV8+ z5&z+Peq*p%fli?qfzcU{NtuS3n3DxqoaI=Rwb_U**@4~Jk3%_zlR1kExq|DtjeB{7 zr+JAt`4^w^H9zsE*?~U4G7KX#785cB(=jXaurN!pBCE3=o3af%vlj<)1jln4=W+>G za}#&+0FUz=uksEb@&(`VD}&AnbPCDvjK;W3!qm*j9L&#REXyja#fEIb_Uy*K9Kz9@ z#F<>c#f!Yb`+UMz{K)SNJ~zn3=g) zkR@22f3gl6vlTnC2m5mv$8rj1a}if^1GjS@kMayJ^A;cQ8Q<_TgDeR23Bj<8!q`m2 zluXZT%*!Gy%}T7n`fSFw?84q0#F3o9>72)Yq23)usyr6FNbh6Cvheha5>j;EBEj) zPw^se@IIgL6+iMjgD(km`kj#&lL?rdX_p?!xR5Kjp4+&WM|hf-c$0teDPQvwe_9#n^DDzJGGj3z zQ!pK~G7k&06f3ei>#-@@urqscAV+XKr*STqa5Xn^ClByA&+#hn@F8FD9ltW@sz9fZ z49{qc%Op(AjLgCOEXJ~|!dh&|7HrRM?8_k>%}Jce1zgT`+{!&X%u~F`8@$gae8rFa z&fu#9oqlH|#$*B}XIf@qZWdxmR$w*OWfQh$C-&q34(B*dv(k{DYa9iv?MN<@qP;urXV)BYUtvhjA>Ya5fil zB{y(8_wgvt@G@`l0iW>=KQqX>K%Wo{%P5S^L`=!_%*MPd!qTk78m!M|Y|Ad}%|RT= z37pP(T*@`v%w0Ul6Fkpryvs-Yhwu4~!PW;lg<=FoXFMil8fIcn7GQCfV^!8>BerA* zc4t2hf;2gYF1)3d!({#<)zv)Xc~n%+F#h%POqJhHSz1 z?8d$v!qJ?>nOwl-T*s~4!^1qqi@d@6e8N}!$nOlkGtlXGMq*4RU~;Bq7UpIlmShE1 zV_i03Yj$E!4&ZQ(<5bS!Vy@yw?%;kN<5^zeZT`*Ye9JHVc~_v%Zw$w%jKjoC#SF~O zd@RZ`tjwBhz~*enuI$6X9L0&8!TDUqwcNtpJj9c{!0Wun$9%~T{FlG%4s;65h>XGb zOvXQ$nYmbyC0L$+vJM-w6+5yA`*Rq_atdd25m#~pw{stl@(eHY79a2#-|#bo>9Y{s_i!rmOjk(|KkoX4eH!_C~qgFM0WyvDnH#DDmn z-xzFfpi?MDV06Y~Ql?=h=41gDXE|17Z8l;{c3^k*<4}&_WX|G3uHbrZ<6a)&X7(!%}@MkU!c#g48zEb#e_`3bj->;EX-1@$m*=erfkE`?8Si`!SS5Nxm?24+{B$c zz~el}tGvU9e8G48%AorLokB7^qcJX%Ff}tW2lKNS%d!e^jI_GgI*Kjj;@gPs|Jg@OCAMqc)=QjpB66h3)5g48E zn3QRli8)z-#aWJ3S(}a6k{#Hc{Wz3kIGMA!kSn;J+qjoUc$$}ZlYj9kU-J`xIvVKn zE5k4{V=*C9Fdefp4-2ytE3!K4u_@cIGkb9$M{qo+aW0o|H8*i55AZn8@hb1|Az$zv zzcT2tK&Oxl&uEOxBuveW%)$ID#HQ@qF< zyw4|m#gF{X;Ku`w#pYaVpGsvkxpAZboD2&ZSOv&`j#=I=T(yYW9tj}g_ z%P#EAK^(~moX&Y%$~D}~T|CGWJkM*q%SZf&@A-|vP6s-LVgyEKJSJrtW@1hjU~!gX zRn}%Bwqyr(XFm?*7*6IaF60WX=Qi%;5uWBH-sE3=%GdnFpUwpO{K_zl%vemw6immg z%)`Pg#fq%XdTh!z?95&q$PpaRX`IU?T+L0~$pbvjbG*tse8?Ak$FB@}Hqa>~!!sJ= zG6_>NBXcl6i?J-LuofG#1>3V5`*H|Ja}sBA0heN2J5pK+p-ILa}Y;z0;h8x zmvRj^a~BWt1kdvt@A47<;d_2#uuFkXp%{VD8IMVshMAa?1z4QrSe3Qeh%MQH-Pw;r zIfj!tiwn7e>$#14d4#8Vi8uKdpYk<7@u$myKEE;yBQq8gG6mByEAy~0OR*xWvmTqW z4Lh?J2XX|*a~kJz30HFyck%#_^Bk}84j=Lb-|;JhUI}yx$?%NExJ<&-%*Y(f&tfdg zDy+qZY{B;I#=acF(VWDYT)^dA$F1DM!#u@{yutf?!dLvr?+ku5(CK$ZVoWAra;9Y# z=4K(5WCd1ZT{dBBc4AKs;Bb!PRL$CSzh67{>|rn%P;)-TAF#FM%7Oue8~^|m%m&O zbPCOgjKTO!#y^;uxmb`TSe}2f4jZ!-JF*A+a~Q{R3TJZ>S8@Zlb03fL3@`H*AMhF9 z@H2zl2=ocTu#CdkOvIE-&uq-gA}q~Htik$h#$hb&f-F@;CgQ3 zULN6TUgAyu#ixADPyFdtpwF)i!^n)qgiOJ7%*s40%u=k#>a546Y{Sm%#ep2b@tnrF zT*B4d#GO3A<2=W!yu*il!FT-1ptl2^LNYv~F)ouZH8U~?^RpPsvI=XlAzQFLyRk2a za5N`zCKqry*KsTN@GwvDB5&|MpYRnw@;igy33U3Mkrug}GUXC0T*hSeH%M znw{8_12~-HIF)m_n5+1I?cE8uO?BHa@NFKBnKH{vnPnI_r34;T;F%S|I0eRz4p5Iz5eT7 zYp-eVb3Dr}e2K5|AP@5>zu>n#&EJ{+lW2XiF%Ju}1k159FXiQI!dC3SZtTqg9LiCg z$Z4F-`CP)~e2|avDQ@I;?%{sE%@6n~zv4-r;UCQOX|zr`n4d*hiWOOnb=Z*2*@m6i zgMB%Oi5$zxoWWbUh|9QwtGSLFxS2coDi81wKjP;+!BhN=={}3rCo6OFLKbIPR$@(F z#>Q;P_Uy`D?9c0Y11E4QZ{h7+%zOC&ALV*J&u!ezeSC}W^AjHD_xzdXnDJP&PI1h~ z!Ys)OtjgMKz-GLPSMwV7;Xn@O7~aU6IhPB07w_l8T+3(p0$=1Se1q@uLmuNd{E@#h z@_DpAS(u9#uo%nm64qcnHsY0R$1d#2ejLJ)9M79Li?{Jk-osT~!zcM1w{jQv@=da}uX>4i|7K@8d&!oKJHT zckpGt&Ubi(pYdz{z+d<$Gk+PaQ%)9OQI_V#tj@Z;f-TsVop~+eIhZ3jj#D_3^LPjE z=1M-oC-^M4@Fl*+gFMWm{DR-|G=FFM#!l4vkg13 z2m5jm6FHWXIfJ)y5tnfVS92XVa5H!ERUY6We#Fmtf~WW!(|sMSPgdsUg)Gjpti+nU zjE&in?b(&R*q_()22S8q-oo3tnD_DlKFalcp4+&a`}h{$=O;YQ@A)&&G2=JUI>j*` z3$r9Euqtb_0h{qEUd?ORhXXmBV|XKP=3Fl1UA&(Ub1k3Y3w)8U@D0Ap4|$B=@JIg2 z$cbouvM?7fU@?~AC9J`EY{VOOo$v4nKjYW@fxqxiX8tZ(r<^RnqAbmeS)Fxx1zWH!JM&t`b1+A69H($5=kX5S z&6RwFPw-i8;Y)mt2YHxB`31k_Y5vai-$(0{jd@s*C0LG?c_}Yv6SiUpc4Kc2;82d@ zL{8&u&gT*?=YxEVPjMr+a}W3PZGON{`4vy{4F6!JlhHcmV15>1DOO}P)?q_7XB&26 z5BB9CCUPt%a|UnaA}-?!uI4&!;AZaRt31F%{D`0P1W)ldru!jUpRCNy3t60HS&21y z85^@D+p{Zsu|Kcp4V=KKyoI-OG4JIAe3a|?JhyQ-_wg;h&rf)q-}7glW5yq&b&6v? z7G_CSU{%&;12*GTyqedr4+nBM$M8np%(-01yLdkz=2||(7x*Gy;TwFHAMzN#;g9^4 zkyFw7WMM8|z+x=JOIU;T*oarM9lNk6`*8?Iay)P1EZ)XDc@I}{4WHz5+{#_t%QyKR zKjxSGjz94%Gn|grDLeDB5HDhRR$(pHXH&LjM|S6ROyDq%<|Iz%94_Ee-p7adIG^Sw z?%>OOo$v4nKjYW@fxqxiX8tK!r<^RnqAbmeS)Fxx1zWH!JM&t`b1+A69H($5=kX5S z&6RwFPw-i8;Y)mt2YHxB`31k_Y5vaiKS%46jd@s*C0LG?c_}Yv6SiUpc4Kc2;82d@ zL{8&u&gT*?=YxEVPjMr+a}W3PZGON{`4vy{4F6!JGtoNbV15>1DOO}P)?q_7XB&26 z5BB9CCUPt%a|UnaA}-?!uI4&!;AZaRt31F%{D`0P1W)ldru!vYpRCNy3t60HS&21y z85^@D+p{Zsu|Kcp4V=KKyoI-OG4JIAe3a|?JhyQ-_wg;h&rf)q-}7glW5!>jb&6v? z7G_CSU{%&;12*GTyqedr4+nBM$M8np%(-01yLdkz=2||(7x*Gy;TwFHAMzN#;g9^4 zk>8^A$--Q`fW=sbm#_xwu@SFiJ9c4D_TvzaMr3bGd*^crRD+5w7Di+{EqN&AmLxL;R4z$J&wfjU$oZV}K-s+a*Z` zr1W?`2j!WS3Jox{DYa&N9&h^`B{XeSdrCOhYi`BZPU-CQt#Iwv0 z9GJs8WoKR%;zcaaDy+r&Y|7T`$nLz32^_}JoW$vz!v$Q*`}hza=hNK89ekOu^Bo@H zXZ)H!@E88c%vqv!%E0OHCmr+%)^2#!E&t3OL;k)uoXM78+&sAhjJ7ravEoIK9_Jg zALL_viW|9|d$^x(^8+iH*+Un8c#6LWO0^dCD!C+Y|NHy&#vsn z{=A+yZ~~|D7T(Uqyq6E~QLg9n+{WG9$G7-CKjCqH&!2gY8G{R&aK9bLd@Rh8tiY#-59WIJ|YPxj*wj^udW#96$Jck&*t;u=25=eU)-xR-D8J$}qD`5k}a zS!T!?ty6a9Wg%X~@~pyItk0%w&5rEO>zKe{9L-6b&N*DbrM!<1@o_%QP29nk`8wa> z5q`$6`2&C9pUj*qTBn>Wz@jY8i&>p@c?DarEj#mC#&a-7a2%&_Cg<@E-p!SKgir8U zZsALOjR$#{NBIT6L$-A%4Wqd4i|-8`A|h=)&V#R_5k~EY7m5#G1T}joFgz z*_FN6pV#vSPT*AD!rQr+_woTg%JqDn+qj$i_!i&iCp^yY`7_TkW4>se;+T(xS&|i4 zm9^P`&3F~B<~8iYfgH{;ypcC^E*J7H-p_}*me247zQ|Yj2H)j}JjQSMBY$Nif3!YX zn2Q&%7|ZYy)?ht0;+1U2F6_yE9Kw+t&zm@lxA9Ki!&O|vC;1$=au@gVO}@vE`6a*O zPdv*E!HxLv{g$11S%??0Jgcx4>$53avm?9nIwo)!M{^RVa}F19DevP$e4I~n6L;`s zzRq`egrD(i{=i@OCo^9Vty4}GU{RLl#jMV{yn-#*mYsPm<2jfkIF3^|lk<27@8(KA z!YBAFx9}yt#)CY}qx^#3@-%;E`U|7=$;Lb^$Pz5a%Dj}9vk6U=oAD}M&1=|)138>ycq4D-TrT8Yyq^zqEuY~Fe37s44Zh0{d5quiNB+u4 zk!XFgFc&XiF_z&atigJ0#4Fj3UD%WTID{iPo;Pt8Z{wZ3hpV`TPx3i#zKe{9L-6b&N*DbrM!<1@o_%Q zP29nk`8wa>5q`$6`2&C9pUhk=TBn>Wz@jY8i&>p@c?DarEj#mC#&a-7a2%&_Cg<@E z-p!SKgir8UZsALOjR$#{NBIT65yRawwaR^6pJa6JG-o`t54_9#wpX77g%3a*c zH~Ahv=9m1AKk+Oxl#bRZJM*#-FJgICVJ+5YQ?_PDcIS0W;4qHnBu?iXF5pt$$A|bh zpXMg+;LCiS@9+peR;+xrEF4ARpsX+{o?R!~J}lAMjIt#gjb4KbWapv`#sgpG8=T6gS6F8N(@OCcdy?lU=ay_5tHtyy=zQy*dCSRq=c zIObzvmShE1Wo!FTx~kMSG+ z$X^+$7_Cnh=Hdk`#xlHwHCT_0cqQAh3wyF3hj1jv^Cr&XZM>8Ba240^Nj}G|+{L|o zlkf3ke#!6n6VEck#nC!tXI>WKMJ&%Mti}3l%GT`2?!1l(9LCX{#Oa*F1zgJe_z)lG z)7-=ze3`HF9UkFl{F*=T7yil2mqhE7lLc6mrFk){vo5b-3$|rvUdwn6<_M1C6wc&4 z-od-Ml8^8SKFck9iLdb>5A!I$;I}-@-XAzcSMOI@SHe_?Q zVJG%rUk+j-$8s`f@K!G3GOpliuHy!7=1#uK13bi!_&HDT6n|s7D$)96Wo}-`;w;Nb ztjWvRm@V0!UD=EMc|C971Wx5Gyq$}AFCXBeT+ipZjk~#zZ}EM8!sGm&Kl2)aC0T)0S(^>mj92k$Uc){d$l)Br8+kM5av|^H{d|~f`3zs+i+qJ|@Lhh$WBi6c z@>fQxMeCD=xp)DKu?#O^4c22LUdeXs!k+BMAsor^yos}T8}H;jT*WnflFxA~cX2P@ zU-CQt#Iwv$JzA&i%*#T&h~-&@wOF4`*_s{Mo!2pe!#J9gIGuC2fJ=EFAL8SD znwz+TFY|T2!z28RU-Jk4!ate0Mzl^jS%5`ZnisP=>+%Y=U|V+PwT$Orj^H>>;Y`ls z9lV<>`3Rrjv)sa$_!ywRnSdb-Hj+J>SFJ}|BVh46(Zw}y4 zj^ad4<80375-#V1e2hb;`l~EW%Q($ZD*^hHTC@ z?8F}I%Rx-!SWe~)-pWN>#uZ%6b=<(s+{ssYfQR@IKj#Ua;%`h>D_Wnd%*_i~oMl;w zHF+5uvnAWJD|@j&Gex5FjbmO0AGb%+H;zPt+wMsQm)}VShv6iHmnT`DP1%|q*`3!h zfx|eOlQ^AoxPVJ}A0Oi5e43lMgD>-SzQZH@j9>Ey{=z?*IbC#lW54%Xz<5!X=Ebbe z*zfyZVY~&~vNNw`?Du>J8y~@OoWhw*ZT$sbD~Y6U9Ek)Uza<&mu1qqxtV=RD3?^Bd z|LS`Duby8M^KZot?8e?4z@Z$)iJZpSoX;g(&IkDzpW;St=N|6o+x&o^@++R?8UDdc z)>96~eqX$Z@lveFYOKT9?};}z-iDpngMAtM{qRKNV>y{Kcqk`sj9;mAQE#i?b{%u_iBLW42^_c4aU2=k>gS6F8N(@OCcdy?lU= zay_5tHtyy=zQy*dCm?2uHIObzvmShE1Wo!FTx~kMSG+$X^-B7_Cnh=Hdk`#xlHwHCT_0cqQAh3wyF3 zhj1jv^Cr&XZM>8Ba240^Nj}G|+{L|olkf3ke#!6n6VEb3umexuIQZTZ^Rf^xVtH0! zE!JmKwq{3m=XFfrFplOVPUjph;8Nblhxj<3<|YOtEmz9(nADDg!R@=G_~0}?$$D(W zE7^`+*pvM@gd;hgH*pqke61z41&c`>WAF0Wt-_?ncjXk8}qOrORyX(^HN^UCTztH?8e?4z@Z$)iJZpSoX;g(&IkDzpW;St=N|6o z+x&o^@++R?8UDdc_PaTlpG8=T6-rYHwSPiNAbV=??wG* zkH@j?A+_t$ChFIcvEy=VyXfKhK1^WjdhrJ1vEy@W`{5b>qFpS24DotTVoW zo4J#(@&FI!*DTD%3s{V0cnNE;9vd;X9&*T^pG8=T6&c%))-m3Y z&Dn;X7~6mLH9m-m9Lvd!?Kf{VzKF}Xf~)!O+FxF%e#Kdql~|LPu`ye+J-f0O`}2C< zzzLknTX;Jc^Ikr{N4cKQGq&F2)G;p$vN+4K693irckH;E@;vNcoo^ZQi{<&xZg>B; z=JUV1egB{KueSQsXA}Oj^O(Nk{^xxdJx>0+--p}0A9r&f-{SlHgva?kf95%6bR8YX zd@Rh8tiYi1)iyL3 zPr46UGMJz7r1OC?L7j{*4-J-gqwy`F!Ezrqek3$l{$Grr4Grp0D13hh`HO`H^{8h& zX+IFurHk=vLc=0d9X)aQnD~ByV@5?C9D6h-VZxY5)dBHi;v-f2jUFAT8a`3AWA{#d zI*dygHEcxufbIhmJlm>C+dkox<_WD6hXk)m3XMJ4A~C+-u!N>VyN+zqzkkACnPQWh z4;h{2^kyRx2M!t3v0L-=rv3Z#^8I~6v>)B$hbD9#*>Ol>igaF<+T<3AV-iMnZrh?o z$95wI1dBZ?VOYwg38g;-84TK1_VP!L&~_u!Sk`Wgf!yXCW{-GMqIe>iRBxVMqJpZ zSlr+=;=&Td;)bLVH#u2ccsxjLdFLdH8=6L3xUY=OcUT&6E0e_yPa|$^vbe-F;x;CW z8<9rbu4HjxjZ$0Q1IgmT<6~-Z;l4k%yra^HJDx0VbQ*D|lf{imBQ89)#O6CTjkp}i z;==pgsVzsLWO3uuhzpNpvH4C&Bd&U~xQS`RHAogWDUG=B-gRugH>MHSC0Sg!ZKt-p zeUrsaNh5ApvbdYlh?|fsE1o6*PZoD`8gXlq#mz_~ZbP!T znQ6rBNESCMSzOWJaWE;8IT*qgUi&0(!R|Jxl?r}_lQKj{{}vZ}S%qMFa2oed<0=O+ z;cJr5H%~AgYq9w@4W39I7oI~^j0FXT>n&{EgCTibcnwx4X-f1*EG~RcC65cwxy~22 zG(}vkAa2Wf@;#9v?qn+Y_N0i*8Wi$;^F5j(u4E8b?>zGjuWgbqNBA9|^Tiblf|AFD z-{m=9T*DM`;dgchoM*n_y|iq>^NmeAT|IjwTyNp=w|X#ybq?2mj}-YT2NS~Su@+k& z;rlT7_t$pNE0|C$78DqZTb3ejLMm~aQp7DzCGJp)xb>;Th2Lch{{7XzeL-B=^Ykyg z2avoj8Ea%uszX?px|SoXOTl3KNS^OxkT2X%##%5rsfG6f!njxqzvELe_GSs5j7_T% z#3i3^j$poxgLN0q_wrx}UY694CMoij4X&HQKF3<@VfY<}*yC_ok(`mpnpjX^Y+8pD z^KDxzdt_NKJ)CdDV2I6kV2XS@gM8s}Bi3U1`lZNsEXcPo2nzEx3Wiv|Nh$I*$Q6kk zizNx-Vh_XbSR}8@nA+JRCxeM$z9#3(7sQ9HWUw)>$sT6^0f}~h4YNH)cQ9w$hR^G z3S-*^Lu&my6y&=)m>z4XbRI7;;DR^-d$-9l`yc+s?(ZrM^BE_s$;K zQ7TYpf2TLcMRo)e!~Vst&$9-P|JvVsA59KEoa+@lA8V=Q+psk* zGBOAX^Tn>u&zJ9TkZ)V2Shm#rS9V)m(*4jd-;iKPZF!dtNf&u1oT#PNzb(7sBH{O9 z!+f#p^Yis@Xkxm^-dK_#Huf-O{hGfP7s=}V8*UG&^{>vzbddtFBx&SpyDu(sO%NCM zFLr%?zW!Ymd^j3@-!j%>4^#HCA=dtVa^W~ct!O$mn7w!aeN(Ih%;$ja|u8&=Z;v&<6iDAAOY2>SOW4g$*!Sq;5 zEnoBZ;v$EGpfKO8V2JfE{7!J}HDQi#f_yiHD@uz^n;pa@Ki@6(e%xQ@&$ENrSiZaD zi(QKi32ty~Tl|lNVZLw(e+MQs7FVHg_DJ(!Jl0}yPp0VKupn+^@La5g^9|eM!E?#` zw>Ics$skF%yz_z~*1s)5T!!GIpzt+eJ5n@zq)PN*($8?dVGB(*n@Emg*(2+NYnlbY v^N$5Xm@iK-g!2sY{nfTq$Q}v*->F!O<;xp9kvwkS2XT?`_jzJ17WcmZ6*K(* literal 0 HcmV?d00001 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.su b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.su new file mode 100644 index 0000000..2ef22d2 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.su @@ -0,0 +1,18 @@ +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:117:13:PWR_OverloadWfe 4 static,ignoring_inline_asm +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:156:6:HAL_PWR_DeInit 4 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:169:6:HAL_PWR_EnableBkUpAccess 4 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:182:6:HAL_PWR_DisableBkUpAccess 4 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:316:6:HAL_PWR_ConfigPVD 16 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:359:6:HAL_PWR_EnablePVD 4 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:369:6:HAL_PWR_DisablePVD 4 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:382:6:HAL_PWR_EnableWakeUpPin 24 static,ignoring_inline_asm +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:397:6:HAL_PWR_DisableWakeUpPin 24 static,ignoring_inline_asm +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:417:6:HAL_PWR_EnterSLEEPMode 16 static,ignoring_inline_asm +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:463:6:HAL_PWR_EnterSTOPMode 16 static,ignoring_inline_asm +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:503:6:HAL_PWR_EnterSTANDBYMode 4 static,ignoring_inline_asm +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:528:6:HAL_PWR_EnableSleepOnExit 4 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:541:6:HAL_PWR_DisableSleepOnExit 4 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:554:6:HAL_PWR_EnableSEVOnPend 4 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:567:6:HAL_PWR_DisableSEVOnPend 4 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:580:6:HAL_PWR_PVD_IRQHandler 8 static +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c:597:13:HAL_PWR_PVDCallback 4 static diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.cyclo b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.cyclo new file mode 100644 index 0000000..100f2bb --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.cyclo @@ -0,0 +1,15 @@ +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:202:19:HAL_RCC_DeInit 10 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:347:19:HAL_RCC_OscConfig 60 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:813:19:HAL_RCC_ClockConfig 19 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:1002:6:HAL_RCC_MCOConfig 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:1039:6:HAL_RCC_EnableCSS 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:1048:6:HAL_RCC_DisableCSS 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:1082:10:HAL_RCC_GetSysClockFreq 4 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:1176:10:HAL_RCC_GetHCLKFreq 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:1187:10:HAL_RCC_GetPCLK1Freq 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:1199:10:HAL_RCC_GetPCLK2Freq 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:1212:6:HAL_RCC_GetOscConfig 8 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:1312:6:HAL_RCC_GetClockConfig 1 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:1347:6:HAL_RCC_NMI_IRQHandler 2 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:1365:13:RCC_Delay 2 +../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c:1379:13:HAL_RCC_CSSCallback 1 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.d b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.d new file mode 100644 index 0000000..39ecb7d --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.d @@ -0,0 +1,46 @@ +Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o: \ + ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.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/stm32f103xe.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_flash.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.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/stm32f103xe.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_flash.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: +../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o new file mode 100644 index 0000000000000000000000000000000000000000..5eb4626b378732a248d48ecdb269b1b6ed5ccd6f GIT binary patch literal 787796 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%0AL1sFA1vc!aG4-y4pivt;%;p5i58m><*6fFxf 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�dYpgR~1XgQpAh&haJ-Hy(TQ|&vLWA}B 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

    yfpwrl;HpI5oO?|F}6*Jnm6te>9aRm(> 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

    +Br8g8WzR?@HO2`&y|{&XK%Wn3MJVVduHG$@ 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%0D!bF^EHv&KC;qKDJSDaOPP|=VGR?$Ij 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�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:ceEo0Gz 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%0A;?qn2usT`!(03^8JhF&q+b<5N&jVg5v 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

    X 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%0A<8(bYlh}pw;SYdL3IC`2t2T) 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⪚DFA7ZKs<&=AJ-X?$OS-KBsXN%% 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�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

    2Z}zX|F-I;d{4{hoKQ}TnQ9ZgB#4* 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 literal 0 HcmV?d00001 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.su b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.su new file mode 100644 index 0000000..e69de29 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/subdir.mk b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/subdir.mk new file mode 100644 index 0000000..b8bfc65 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/Drivers/STM32F1xx_HAL_Driver/Src/subdir.mk @@ -0,0 +1,63 @@ +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +# 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_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_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 + +OBJS += \ +./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.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_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 + +C_DEPS += \ +./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.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_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 + + +# Each subdirectory must supply rules for building sources it contributes +Drivers/STM32F1xx_HAL_Driver/Src/%.o Drivers/STM32F1xx_HAL_Driver/Src/%.su Drivers/STM32F1xx_HAL_Driver/Src/%.cyclo: ../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 -DSTM32F103xE -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 -fcyclomatic-complexity -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.cyclo ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.su ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.cyclo ./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_cortex.su ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.cyclo ./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_dma.su ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.cyclo ./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_exti.su ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.cyclo ./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.su ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.cyclo ./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_flash_ex.su ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.cyclo ./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.su ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.cyclo ./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_gpio_ex.su ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.cyclo ./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_pwr.su ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.cyclo ./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.su ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.cyclo ./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_rcc_ex.su ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.cyclo ./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.su ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.cyclo ./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_tim_ex.su + +.PHONY: clean-Drivers-2f-STM32F1xx_HAL_Driver-2f-Src + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/lcd.elf b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/lcd.elf new file mode 100755 index 0000000000000000000000000000000000000000..103d602b9ab0b66df9eee18c2444d646cd6529c4 GIT binary patch literal 808960 zcmeFad3;k<`agbdk|v>qHf>o#TWDx2TLDu*EVM#sp)5sRs1qDVo#OZjP|0$$eBaM=Ptum6GxK?U{`kFKKhxfm zcb%!A;5QHa z=7HZl@S6vI^T2N&_{{^qdEhq>{N{n*Jn(<#fi_{Mz5Z+*C*xR(<7^z~<2bsIOCY;O z%5T8)9XJmD|Li#0C;wl6eQv;ekZiQ>NLr9rH|Y&SMaIj9xi20TZY3|T#<~laW9)Q( z?s{Q1@6cCdy{w<7=kw-WBp-Ww2h7o3{cxnS|aPUQrfXHlpAgqdCLw6ZRDMp64is_svfK9RIv)&0Zh6Qy2N z{|~%2?pO7v-RBdjHqR+OCFQY$F~e&=i*+l1c3xrFeQxI|DVNMFKVUSLcK&|E%+95! zR(Af*?(95gVP)r^CcJtuVrlZc^|SY~;d|dcC@RgKb2}HNEJS^09x$9*vkRq^mv<_P zvr{Kvo$~5|vkdQgK0RPbn%PO`$u?M!qLhfk&$m|u zaag3D0eVT$GsN{+XXZh1RDLew&?%j|6qIwA$|>vA>A~$ItMGitj&cRc>siiS@Lp;M za+Et!b45w(a_5*mN{PRHW~WiPn|)g|N00N1MA-qoK0`ZylE1yI)2OeRL+xlmd)hqI znwIv3oimNpdS%9r4)Pn74L^yRU3A9iv6c@lr?W%bNmJK>)}E5lLApsDX!9xAoFh4* zJJT1PIkT%q(KxhMbxO^y2Jq^P$*Cdp39KQgb{@I)!Cv zr_QpjbLCm4Bw7U-w*6YWZs1EO)0)2P^gKJB8SQ){eiPGQP>< z*p=oJm6e@JVP%&)dqHPfp|0IoT6JKilEHHQqy?QBlXUHiO3yn`rl*pH?@9M#2NlC- z2kj{X_US??;as$W+eU4r52XN=Aqvi%nc{sM5s`vi%2>$5qdg0JIt!g^vz>b2?`z<* z*{07Zy1qOpEY}|p;!?EC%Rjqwvi7|Ev&gaRnP)z?(;+H5ODqPISJ^phQTosBRJX6$ z{Z>4dE%8{M*_os`cAeX~z~Y=qEv%G`_7K-Uci(~5HF%VAVShQ)a2Sy{>CuDz^{*VX z>nvYbCYry}9UN$R_n<|mge<-hA>BcX7ZTlG&$|ch76q^EAxrp6&&*DXvf24<<|7^j zJ!edrW7lP!218CsHsU`e9{)Nm_H~DyoqB;-JUkn*;fO~$&gv+_`Rtf-$1aLmdZy^y zfDypxX+VEdCMzeM@;$Yu%|k6Z1~C+G@1%BWZ-ZxOxfObMbm~)wd&CG~r>Bv9+fd?Bes-rhc9E}V_lPmaF5=H*9x5Z-)4yC-jwqdM13%@`1c`M4B>v5J+p6SR_idOtasq8Gop{vR9 zr2E#DZSk$EZ1A~Gt(h~?x31LeshL9(gNMr1%5q&nc8@@9vcUoCbd(ELp!8&K_iIG( zY~5#C)K*Fh&+WY9tQlQ ztXs+`v4{cd92bPGMIk3c` z>%i#mh)di%nqCqwnhsj^A~(~u%+>7r!Zo>K`>ILv%Y1hIma0NvJ&@{Bt0w@DhujKz z0n4rWR#$8FXy8$h8z4W9%AVA-=b2<`9Rl5YG+FlMJSe@>aLnq&5r%6EO~vjOxbbmO&L?xH2SX8gp6` zoP8~5g#~7r+jx`(1LGE;PH`KkE_E*9sjpr(e633qggQ{;gstu!H{yKdkyvfL3%+$J zd8$hfuN4m)T5f}%=0t5Mi!2^2Egnd(QG1;|=5LRsR&1}{-lDEgsc^yUI07WMGy6!>(q^wLE3QlYd>cqUK{VC6WOzo0_oe&HG;bC2TO z$I0AzGVchP*Uou|%e>i~H&f<4+EZ#%R&sO8KvI+5UW=L+ufGP0ibQ@FTX>GleHQ0lCUc)5bDt)2FRsXHQi?Ov7lZ#)sZq%q zr$~(jQe(cnNwJY+aI}v zXQC{}A@jF#%Z!Icfz%ko8lzlME+d1$u4sb=iJ#cH?==mgZB3cJP)c^&h`G~ zeoYZT8i)Ya=*Jpb>-QdA;;nzxe&Ola{;SbHW*@RHqWS64ZCB^$~ z>#z3PdwccU1vFyy@t^u%`;YoV@P@=yXsJ}x1Lb>iL=o-A1g&1l4;`Fk)l21<=|)<~13kpIXg%n>qw zf3~Tg%x&V_Niw(aKc)!He$wVJQs6=QjpYfc4Efp*RhP}i^&~l zBxDmh)N4!y1$&i876tNr!c&+g%qQYF2}c=@c{nO@EXA=LhcQoGGtg^7n&veiP4Oln z?eE3>xW?>7*=v%#dZaopRwHYKhuBY$?0cYpD~_!=9>(!3jvY8WI6lImZYuM+^=jiV zFCiz8jZqs=1|vIA3L_U#KSmD$85ntigl7usZcmH?Sh;nbvADG{3zB(_Y-_^U z)LfdqI|*ZReWSi&S(C0J)2+;}-?Z4B#<6`La&6~a{XV~!b8SPet;lr`=ei5r@v-W~ zhC9#$S~qN#(RN!r8W3%p5IZ-^XlUYSxG510jX)GV>t+51o`=`T+}CmLdYQXUj#Kp; zu9l@-DYa-stVJnnq~2w$cZt*!o{NB}6wHPkqt#r>`7-x;oEvi?_nLE2ijGG^jHujm zmP;)f4bMa=r%S!1tjA+2xP^!2LMo+F=3gM^$pz5Ch|0ZfF6+#ZWz9ladX%NE$C%1x zVMJvMRg6{Bp@*4}^`@~Nj|yBCjj2=?Mg-1Z$Yo9Bo_D;|8P7W7WLaZqG+2+BkjueL z$a*v;=A)cksbgoI9H}EbG#64imFxop)S&dqCFjnmI3z2(UqTXy3ni7hUbYfFB0lQ}Z>59qZ+K zsd~P8&6YJP_R;5eoL}L~&2&>we(3UL?yAK6Jg|dyc8*1v4QJtb^rB_dVqN1FH8)UC z_FbOoMo;dV3mv<6Nn*v2)^TdZxZKQ!%8G*AWeulPjLmIsK#OsHn$IY|**ll>l;iBO zhS|v3+)$>Ki?vEpyAycMAzGi9I?$J4S0;A%#Iejh73bz1G3vIIp5H+&Ms`q7Cf>8W z)M}L5fjTX7<2saFYYgn57Nfe1!86r`+KlQ#Z8jGgXfx&?=^X(rZS|AXK0HxcT1OV! zJd|y=vCV^}?m($)_NH?lE9Xh&JhYa=dWY+k3>>eQiFGpFNq8o|3tU0j8WJ8e_Z)41 z=ic!J+UspxDcdElrnPEU({!evU#)%g=cj5jU2&9E{VLAABJ;i6E8jDTe9zQoRX>As zPs@By_R9BMBHwe!_YlrKDD&OlE8h!=d@ms1Jveu_%(taizLygDUP8W2ICl&3nQ`@R zBj+>AdbA|+wIJVmoNGWn1^L!-K1JqxHIeUC~TC7st4sSxb1$ zd^)q(RoUgnxg~{4-Uop*I6bRS59}&5{rpVr(DLfJNxm<_=u6Q0oTOVSRTbcKH{snRBE5 z5mBwBpQzn~-byo@8@(NCJ06wd=dzlbTTZ|jiv2Q=4TU^5@Y;^YhNyo)R9~K1KB1!7 z9rc?S7cf>Bj|RpLuqjK|+;SYte~wW8T*xxYnp^CU9 zw(DWl7DP}J5EyfmJ%ivn9(5?y6_!WyOg66rGIp0&9 z?*-uJrNz&({63aHB`tmevd4kv9$K`B_B)SM&@QOijp&y9A>n(rL94}MwV$FE+hr~8 z?Ny7%xE6P#7F%R3?%-P7POoGw&gGJCW-HEQd=ulvj2nSBNJ|@7K8NMkOG~eXtR7e! zErib{t$LJOoOUhL;4^3IPI3H#ZQB5DX=zf3E!ZGr6Vf4YMfF3J>h3YR31`9)PF~K5s(gOQ`iio2f8V& z02zSRhc)j$TwB>SyEM~{xtVJcpPS=nDN0U4O=zU2D4EJN;WeA|?~82NL|BA(8`$FG zfi?X{Y8M<*7G=6I&NDm4`5rO&2>a?4?+=Vr<7W_DZ&;(FV_JOo(Vs|w$} zvYdywHPU4%SRwT&M5IZjSm-=28@}_ujWe{Z2m9f-_P7G{!FizaVS+9Lp!L z{Ap?9laM_Dtj&jW+BHu+So<)d_+e?`gS{+#kS*K}3lZJyhpp^~dwRr6Sf%#g%;g6@EV@}^;Ia1tKn+EIFO6%%+ zS$7*-cLl7wTv}Jd*3phc>tl8HBwsk7)${h+DPX!#GM(Rx>2_wS0@JyY>1<}Am5jzD z>`{N3sxfV@od%|*l4)@-rp?S$2`1i^AaW|0340RBlmw<9LmJZ^wJl&edS4ztM-g5E zrfJe9?Mi2Ngj>M$L5R}#LuB7Op-D*J=CoCoaA)mKlrUD>id{*M_`8#B?YlD{p0M=< z@ZBSsw$!$Q3A=LcFEnF%M4l zuhOE<4yM0Irfs#q2h(+uslFG}HfFjKOc?jMpVl%H_X{4cQo;1HWV*Mu9ZVNVrd7R| z?q#O)z;vEus$wSY7tHh+m^K9;M!He*HP?E=Ge$gEn&CEyrp;Gdl%zPDzI<|vp zWsu^xDyTzxPSAvOc`zC28Nty=mj)?%76oS^tqhhTT@W-Pofk|&S{_VCS{59L)EOLt z^dxE5_S*fh3%hlWGpuTQ*tMPQ8Uwp9^0UW!zjr4*WS5QY8pL*`vt6ldmxb->7c4{` zV{i#leQ*v^!4^dV*}$Oy+2RjmA?*qbM|x0>MEBK>gpcPL8CwD~kZzXT57dqUcZ%djFYm$q0CStc-TSH&*9Q?~@O8c3eckB|jQQH? z(CK@4!=Lk>4AeP}?!h}DYi@ZNj4w)SpJ!{I?PYCg;2l^vBj7+<68IOGu5vsoEu`6v ze6|y^=9UM*bf08uW+tB9IJ#Ftdssk^G&4YPH6+l0bYS2I@Ll1!UGm+U;JX5RH-oQt z556H`*$wuH|L2$$>7m$Kr2iB97)+Ntu9ZwQvuT!H4yIpw|8**~+hgO9{xK$y{vkFQ z=?5_#()VM2u+}(^p51mr_UrHC*`fV-tP|RoI*#taJ0WXs>H7{W&ur{1vg1a!W<#tE z92YyvWxa5{P1fsTaFoJBxa!RDJe@sWlJHO#I9A5qf%a<0iBkK7g!XD^PlPsISD|&- z1lAs(&{m*5JEo1b?%LlWDo09=e8~|%N3*FNOgy`RsrUQu!s7swJx1v;$=6W(0r-x+ zc5C1$|FyN-PA~;{7iPrXr04avM}J<=Yms-PrI_1#^q=+2+zLzIkagb4b$%^T=ec11 zSnlsO@LB}@g2y<_Z9SMaFw@gudQvhy&P?bPas*ilrY9s*W9`eRE&2sBVQ%Ze)W}Tt zfaxyDbSE?2kzk@oXozMayB2=s2bNU{qZJh3kXfeOBmgYZN^SMzT z^$Qwl;^(M8^nHgrJ5f*K-WC~z^zO(Iq<2P4NN9-)BHb7%Kzd{3G^86MB}m0el6gYglrrwC-k}pA0?TgE&Q6itB$pEWMfi*!L3xWxXsdnD1+o<>ZS(vB5H;B2@IZciH4DKU1;MnVUT5@0{;X3Yw zthwcJaPVk?@$_Nlcrd~7HMHx(BamJhJ_wG#IJQX+>>ee@U%+t}IPR2oY-SFul4Y+Y zJ5CG#4cebNHcIWA655|ayAj&!rM8>3*Cn(m3Qr8b5AEHKYozwo3GLm`rWG@;kZ|j) zVeQKj+P6d77XCf7+a0(*!hNVZq1_Jc^Pzp7)YewX7)yGLH$n9qa2(*`uH8b9-jt9Pr@g3?(z_&5JMLiq1iSZ4L*E3$Hz6=}x;J~_) zYnYX&;U8e*P}FdUtYPo>b%njPdE}J-|yCpQ^Ti`$LCOavKudAA-C0 z{;?e;wab$J#4Y>BgfGbt1Fq>Gzeh=Lfcux` zX5x-uHy-haIQ4Vd#pyv#f8z82r$2D|4^F?~^lzMg$?4~u{)N*$oVIiNM^691=?9$B z{y&2KKc#PT+REwcp;u9l_Z_tFq&Z+yq8{&~9yg&L=uI4NH?WTy6F#CAxR*KZ2~i7d zVZ1r?Fz~I6Zw~DM_qz`2QN(>^g8N-?*MPf5a$m~amn68!=NB}oXXe|S_#~bu`#p>SkG95o&%0x*NFBHeu>o2xGPu#e30=^ z!Og%282=DF0Q?We-*EoFG5#|6I&6Q-arDfx6EdwA4VAVJ;rb6w_?AlE#T;*Px|7pa zIenSa7dU;E)2D)OqMSF6(WBmUbniQxTRw-!KbIx`l}r3AQDQzyY-F|uPOs;*K1eJ2 z*Bu|r7W^pDg0G_nzXRXzB;R|?hqZ7QtxoXCYVe)K9A{!@jq#uH;$RGTA>)&S?}Ga^ z2WBshj+O-XYv6tX+%HJ(=a~DM1UIdnCNM`qkfLogwBdK z^Ov-h);vb$&GL6vh<+AMjkpvjaBZQpPg^ zj{%o3p33qmj3)&aLhfKZK41YJ%Xk#7(nS3Ej7J3S1|H5hD{vUt#&}TRJK%K2se#|2 zPA@sIisRVJNYv>i)QR4;N|muUfMX9=d1S0iw1@pZ?3Kg*f5m1Y?PUCY?0n#FfxG)# z*#BkhDo8))9Dj*50qE=JYyF*Ty~s-!qQqq^;35ra^^UL)1{m)ihTsWr;f3Tdung zX+EbTI33Pu7N<5&2XUItX)31{PWy3cjCo<#6As#u(p-gEPuBAZ*mVi)x=7Y@72Ab1 zq^##)*!6vstot^ajdVZbucIS?@f{PSd!tj3e#Urrv>f=)j6aDk0{)2c@1rY$-(%bs zT?@R6@te_GfOj%}HF_`b%Zy)$J_YGIJ@uabxr_a0BD(qx<2H#~c%+KgK2e@fiF;S6oL)e;mjD$nWKkbD85T z_Q#owPmAV)dokmM?2nTf&yUWAd=BGT?2nm@r?Wqb85glXPGCHd{c$|waqN#Vj7PFR z@)+CU5A;L%J&Ca2#?nFTnRLdf>=_H=e(V_|V|{cltPzYO5%Nq3`^B)|A0f|lF+Ldi z2A+Au@ptK&{Rz)J0?+&np7~08W*>WoXI!2Wlfbc?IsP2!5Bv$^k0M#XwEsu@MJN)sG1A9j9 zIrk_0@eusc_g%-k6Olsxn9m$@a6KgKpT&4)gnH3*#>J6Iz(tHtV1G<=^JB=(1naV$*!2#2X1f?@K<5ypqZ zp8@+A|0_)X=w$qTnBwDG#{0wH!XFPfmP>zNjVniz2jGv>5g$usd@SbpI5pu98pYpb z4o{fyTa4cb>wsTl{7QH%@Jo!J50?Nx!}!T?1@L2x9}b@l`~c(a;VXc*F}^$82z)2w z+rwLcH!;E($p*fDZ^(40$a#GQ~ew`9N{Y0@95?2iEne~|a5F~^CVPUf_b{V{=Y zL3j-Ej0W!6-|g&~VVonAJu`&yK=w=;;}rHxf5v9^OcG-qdnShcBidgj&jcACQOPrh z8T(Z7%)c0Ss^ppP8GoyiXZADxS|!iyW4u@W68JO5yVb+Me`frN`W-ye?D$%G=F5a< zn&BB*tz(72`?}BAGoL0rlLn6Gnd2FiMvNyJKc=1r{4nDO)T@BEGv20N4SYA_JJkz- zZ)dzor4eHz;~Q0)TQ)FutF6G-F<#5^s~KOxx@#C;sxC#Iix^ikKA-UlmB#aP8K0$= z0iVhEG?hlP#f%rK-=p5!j@oXqtzF*b0$6~@sJ`9sBiFzgS6$bUaGJ`|#Q{14+FL*(y& zGX5@<2mE)&Uc7f7_J76rixBzauZ%wp(fd#LIF7z%y%VzLmb1~`7&ExN&*b(#BhlVu z#SZ3ZVY^;r{9K6Y@igNnLe!RzGJc5dy`OP&h}s*UF+_S7=edLNZJ}o%xrK34h}!!G z#_O4X9ph_R_Zr4mg{Zx28P_nrgz;+j$AyenGOl8L4(D0U_>9m$QSZAPSR?QVkei6} zyHM|6d;gMboXQ+iIGx0)BP76gr^71wQWAW3g0Jtl2XLiHuGNSyEky56Zg%v%X8o3A zqHC<$*t8i;ucJj?lP&Tpw+QyAl8OBJBld}Ce@?&S^zWQ{IsJ;$FF5@xr=N1#!Renk z{g~4aIsF}{?{ezl^sS%|mfq&TjLCl6lCbVJShpG0@#+|B-3aZz?>3Ysv{%}7zTMF=&~9{`B(;kZ+KtdIf+wa(PiUVGpOnx(0eb5l$4kBO z3BC2u8w5b{t(`O9SJ; zwAO*ynzgY*mY!b=?Y{4F=%u#Kx3|aV2Jq=+`58l}@9*oWEp>%2NyZlvjJm?+mgis( zUjah2KgISuk+7!@ZTVwl3baKbeMW%dl2)TyBnW8V2kmBAo1;JHGZ(cn1tL{(T^kNK@D2uBUX>_20PS;7HhLD%Da*KQtVX-ESX7{W zON_429&s#|+E|N9uN{H*uYLY48QK@e9znV)MptON9OzqY0j~c@jxKQY{bpKG!h+vJ zdw%QdV=jou>IP5c29z>ElO9XIvvkSZF<*Ei{(yeKY{u@ChPME*9S4*rL`&5Soos4u8U#x_5ode~x)TEUUTth#6la4cd$8pgZ#sy`Sx0qGI!K2`tW2-)I`j70h`yg#n` zJ0s~xzmJSV`fX$)()|${4Zd;EY(ln7P1y1cY&j9OoFHwP#I_*fr7b1UewVeq4!Yh# z+G7*iUTBYkHqRy)iSk$*F)y`OLHkkce|5eK)Df`YYX_p9IWV6{Z+s1o!QdDuEl6h$ z#JuF7`S8nQjOkxO@0Z7P#rG5ch6+C4hR?X^wfC;^xqGMYm75g)o~HKcan*lyMEmr( zit7m4r^gXT5$)6Cs=qp-eR^E=pBEW`&zn1(s{b6I3VhyN^`FT|2ec$I8E2>9Y$XuR zx-gC~(gDq8-9nsoYPwd{U##f@O<~;=akfy?tx<6ufmn1vqapLB^d2+VfXKa3HL zHnvDU&KBWp22jNjvMPlUS=EoM@0x+LhDa*VB%oM0l~^3AKg37}^mCZ3pNg|SAh1|f z{{coipzr9j^j#<5?0z8VE>!(rGSUJ4HLSl#CR?Tf{SgQ(cGdqOBeL|pFx8_3 zXWtIj(OIB3Agef{1A3Luo&@xwb{5RIjzDLD9_O>uarU9`O44yygMmhe{{Yz#puDgS$Obf=OB)I_lx3Mf16d;rD3xW|K*{Wb zVL(YN8xADG7lI`RNL7i?4s=9q1R4Q!kY%|*KdO&GmIw4b%kqJ~QFlUi9MD%R8ws>m z{WD~vfcCI#G|->auOS-)^byO(0==&uf~)|@!?JNeZ>mwq#slq8^*|GVUQ(?<#{)gf zG6&ETDz$GR(8Da72y~x%31pLiwyG3Yix3BQaz2W>TOmUn05z!`2SB)v02z(y*Q*={ zK-aL$2y}(YaR77~%V?Bct#TXy;W`3zX?@{RISzo9vy8^%(^QTFpi@~!qxAxn;{a%m z%5eZxs&X6voy0O4rHfRK1E5JPqnT!c%5eZRhGjH^=BpeBKsoF`8&D>fMswgGmSqB2 zStARmKg+U#jO>G9Knlx-1BF8z2SEN1#{tlx5XS+~zgU(F^h1c_0O;>5%Ln>8#Bl)h zIm>9~`833F0Q6^;jRyKdh~oh0cPtwV)E4460BU6!%~7v~I1Yeb4sjd+Js09Q0D6*T z4xmRu90x%6vy5i8Z6S^WAbgGhaj@8_`fuZWG{S9!3~>O|7~(hp!gU0S1E94bjsu`8 zS!M*P32__%;d2DYX9l_;#Bl(G>j)GFKxc(G4uDQ)nFVN3h~oh0WR|4>%?)uJ0F{L} z4uGbII1YfOvMe2Fa){#q=y;Y51R5LSH~>11WrKn2A&vu}EcTxbXfT&H6ex{lnLrlS z$O1C4EE`D2J{SfR2~wL62MPo^4uB4`%ntNZkmCU8pDfD-`ZmaM0Q5JOQTS1Nkpq(rm2h5UH7qj% zT^!^%0J@N6W}p>8jsu{xS(XfRMv&tGXfewyK&J#b4uIydECpy*kmCSoMv&tGXj+it z0O$mkr2{#F90x!JEE@R|WE^R2#0G4F}nOP$XNYAot zplE=6FbpUd;5Y#43UC|%{SV9RK%D`O1E7DfEEmWd;5Y!<$Fh8&zXUiAfI3(<66liv z#{tj>EE^50hJ(04J81EBpZ%LV!}#&H1jSC-`i?T&FA0R53=BY{4QaU1}> z$Fk8tZ^t+efZkx)SfE#990x!zvTPjCGck?>pvPkz2S5+SI1Yfev&;c>PmJRL=nj@m z1lkniH~_jSMsaYOGvr^-`4m^kkIxZM901j^5A;B_EHeOI8sj(sTE#LW(8?Ic0noWD zGXpJ)aU1~Qa|GZ^23i>7H~^|(nFXjk#&G~NlVvGDB{7Zzpc7*p2S5{J90x$-S(Xko zI>vDTl*h7xK*M7k2S7tvHW+ANjN+FmH+pAc=w*?EwSLB0jpjfMRA(S<-dpd3bepiD*vph0AF*OG-Hzm;oQ z4b&gMK-#qU$$+u2@1EO;>yN*-=dSF^ho+&>B6sV_iQT#ZntgZOy7+G0H|g#8XB^(6 z?_crnV>o@L#u#?-QwlwjZ&!kE3i$ed0%%8^&l9tw-$u3}U59T5g#6b=-U8F)!sjIu zU60bPs!RscQ@D=6*I;oi;xWFC@MwZbf%e(>o&fqSKCKY)pB^FZCHP!F+Ktmw@CgX? zTUBC-os zPb{SCQFH~R`~8iHu=>~D-yrLBkvyca@NA^v@P$Z&crPCPHcaxvEcdbeU*We=j-&8= zSq@!+)x6_CIeou{ygcC@vh`2Q`f>PK;19ztq`wR2B7K)r52tT&`Ua=3h3Ru$6AI}a z4ysl6r|>4AwApBjGU7*D%;dJ{{uJI6ux<_0cL>H6PLtZW1}kkH2kj})o-DPsZznnu zwyuMAU6@+($}oL5Y-}N}z_JDS{Ey@q3y$N!ktaDuumw2@4$?j?OzpimoQ!l~I1HxI zg?&E}Fd9thV8T0lT$dDP>i$H48QO*XO@fhyxB|;|Bqi(^32pk$W$(|Be;~Pj$6W6x ztfE$+_y0qFGpF?aKiZ$um}&;VzHW;adyuv7PiT`JZ{uC)kiV7F*KtAO$$-5O*KN7R z-R}e1!SrkI1Fi?hz5H4J;e|Iy?F|V#hC{mncA%$lEqeck9=%%?@~>4hkY3H{73v|_ zkzH6Tnbstjvcc5%or+b78o9x-R5c)7q&ksSs-uxEQ0ddfnT6*{zOxg2nc(Yt)pluu zZwR!<ica*%po$4Nc#;g=d}>E!z*0EOI+sjp)5$A39Ui;BwO?trw@my z9uKfZ+d1bp#&@$_cjA`@LjK#?u1%qy?}3knjROn&e*SSFZ2Yy)Ka!2~{y)}jAsQ*G zLVrVgPN)EU>4kl-$ftvkKKp;VY>TBF{oPmOiD?G&mEd~?A?(|8kWLBFJ9O4#jDJ?} z{o44q6xu^V^zLBFF~+|XX#d*yN7e-RU1m#Rfowk-0kx6d0_~Bg3qIMvJt&v!G9uA_ zb#~!wYl%kAulwp-+9K86|b#pv5Z(+WpRZg^Psj%ncjwcmTu zgXsZg-5#TF1{EE{!$siuwa;FXP1nX&qLp%B4PApU!glux{$>9f;Y$t(559eSb^QJb z+IxT6y#(mK33LyKQTXM~;;Q5DYnGYi#jA9x{%~;>-Q^>MYbAF6MM|s@c||i!)=kAP zQuh4>41W%V*HyxkK~?}`lw@yEITmjU-<1J7DE4(S`?`LWGO505?W*Ec&80u>;Zc$~ z;`bfs`CWePH!2O~=JGWB3Q`{I*W(v7`Kj^d7l&Ei&_?a| zHG}>~VtJ@daRbfkWE;kRwyhYo>HFz6yc;Vc59^M+)&`rG#(&a7-B>Sue(~x(M|}f@ z>xMk7_{H+phBr6XZ)`68W{-+jYC~vaF@B%vPe+RO6-EPJ23I1~3T34WcE42C* zub9?^yGvxM_(qb(NN<7mtbw#MU9&**SR?6vlPbTtJ7en6aQg4M%ZV27l ziuP|V{nJ3LpXbLnH-y*i;;TN&bi6m_3Yj7u!8j2x!vX(s6TDQ-G!pWf`J|- zPvq@u$(XgT<;}W9=G`sSd+KY|I(xBN(^_XK9#|j_-Rn;LmieW^Y`U!bC_CzP&vS$; z|IPU-oDbDylrI+<}#wlJpyN}O0SdxUZ+m#87DX#0UoaL>* zZW>x7t4_TVaen1w@7CZDhbS<9@#d{>pf^!#KORo@ZVikkX@|WcvpO!nH>_T_T&P#J zHX+*GSr|dyM1<$=#&6ng+@0B4*Ib(1p>Ax&{Z!D_?hK4GA)GhuN%yv12aPLRuQL^V z@VUUR64c{${grF4tFK27*+ciBB55|qgYZ0u`<>Zu!hP#+73PbZ`964d>O0hSzZ@y( z8@1G55S?!7FYu0glsD8=&o-#_s(Wj|j!#U`8TuVw>Yeu8^{X@MAa`<%-KuO6d0Lzu zh*Iw590A0sy6acN<`wm;v+AxdNZL!!IR$^-OLoWm_xOLlRC(J=h8OW$j3MEh5)Ass zhH=d>fpVnd{1CpN0tjV{gO(SPzlE`GI^u;S z4-ylY{}RT!>4*u;nclgF9FY7md}aj@Bx&9ShiqVeKfI&@2+U@0#Stg+w1yW}03na? zz^*dgmXj-#EjD=EmiJ-q=n=#1G5-MEQ;5#Y!5J&gSaGJD&j@*@G;wBS?lL}eI6A$e zqK{|zFR0F|F=6DKR#A+$x;Oix^6c`8;jLB4B%XK*Pm7O2y%R0}f zt?c|zN9XP=-`?Zg$2hkP=l-DUUv8R&aX>tOKtI6ntib4+f)Q8mOV!n{K6CgrD@IS8 zHY+_aI(zM^jwQvbv(l(kQSh%Xv|3=cleH*;trwtv_eUwh-p<>ddk@?0j=;0EV#}_) zj@+#ys1+N-#fY@x6~(J91qzMXD=ND}F5xQ=K3=}>JN$IB-9`5U#BnW-CLDB+B=?TZ z7}rb(ZTiu#bNTV5TV^rsFau;+IOboCd5soan#qUG7)K ziHs1Lg0?rUUEoi?VbVs?>^ot5P6$FW!TDuIz){y_oJoh2Pq) zR&n<#`Yl;{rr(iOU55E;^X0rLjT7kN7Gr)Rvs&@kzJ+osasp5*z-3q+pc&2SkeK2oagiTVE#!|!s&V)%R- z?l*(H+B zJJEHnbd1C46B?KH_hg2un@jzBDK4~MB*%=* z+&3^!eKpOpstZw2-RgR?8l#*(!-;i6b*8ShI-{)2=Q*#eOH67-6o9Q~6nMnHgqP}J zfNoYY@x(1fX?#w*Z`f3qx@K$8gn2D_Uvc#pEtYxoDqY##(tp;5fXGYslGHp;y$1bT zZz$HzWM0*MS1$1F$B56IbYHB1>kZdh*vPhHP4(VElipA;+G9XpQ&$-#84GlutE=?I z&_S<3n@nt7r3>i~e^J(2o$0J!)$D|<5TgWSpO@8F_jhKL*~;U0Sc$hi?#fpD%0c%! zWsj1V>P<$AD#eRk_%s{ZIOg9ROTrw`>@rlC(Az0?;=fyM^};VQe(I`Y{&`phY3JfQ z0=6Ejo%*Vn|D0G|)!OPes_Rw}r>=Z!Fx8>`Qa#@9^Jweyo@_7Sm)a9$p`YKv?Kl+{ z)MM>hyyBYuN^bpXs;yd8T%A=NT7~wkdUF-6IGw)ghT`hw)%VQbQhHANT}ZFoOX(Ty zcOt!PFQtpxHzQrOm(m68w;?@mFQw(}n~uc)kM1j72ZBu=9CZeOhDbqlxd&JRtY8~1L^K6HbclkH<=u0$zQoG;e zz7sR0-eQ$vn4~r)R1f?HzbLSEtOLHDVxu+#zWYqoTE0W=+4B1R zS0*%ksO`RL1$$6L)oMf)Vm@QVc(lSkj?LAOu9~06(hGqv05%{;Hs?q}^j1OYf*wiF z0X|!D^!F~ut7TI64B*qHuEsqGk$D5`ONN&kqc>+O5n4s{UZpE2@0cW8Y=-nzvE=N%7 zjuHXy`lyXoQ%^Q`Yq_pa&)g%u#_rr5!>J9>n@kvGhT=CL5LY$A=|XJb&Plvh zL{z}Stkun>#ts!RQUmLj;}!Kknn@COB89G7t~IB+;-g@@7p-4StFCESRa!qs`=h^_ zbmz}2#=O(tbzYCN#P~YwiT89n^>pY`JSVlE346{!RC>=_40e)JPfKcF4EZ9+U5gjH z76Rw_d>9S3SD(zD({j=n>;&6#M5(C*_sB#&Xx18pTCYQi%d2&e&tzMumHI(m>!q

    jQE^?yJ#*w(19zukVs$b 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

    >Wt>;Y+Vm9(CwR!Q5_5@S70t&+AC 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%0AbAr8%^oXGit~w!r@OUBnjJ-SPD&bFn@5 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

      BLW==3h8k0AKgGIEG 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 literal 0 HcmV?d00001 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/lcd.list b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/lcd.list new file mode 100644 index 0000000..2ae0641 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/lcd.list @@ -0,0 +1,17462 @@ + +lcd.elf: file format elf32-littlearm + +Sections: +Idx Name Size VMA LMA File off Algn + 0 .isr_vector 000001e4 08000000 08000000 00001000 2**0 + CONTENTS, ALLOC, LOAD, READONLY, DATA + 1 .text 00008078 080001e8 080001e8 000011e8 2**3 + CONTENTS, ALLOC, LOAD, READONLY, CODE + 2 .rodata 00002fdc 08008260 08008260 00009260 2**2 + CONTENTS, ALLOC, LOAD, READONLY, DATA + 3 .ARM.extab 00000000 0800b23c 0800b23c 0000d010 2**0 + CONTENTS + 4 .ARM 00000000 0800b23c 0800b23c 0000d010 2**0 + CONTENTS + 5 .preinit_array 00000000 0800b23c 0800b23c 0000d010 2**0 + CONTENTS, ALLOC, LOAD, DATA + 6 .init_array 00000004 0800b23c 0800b23c 0000c23c 2**2 + CONTENTS, ALLOC, LOAD, READONLY, DATA + 7 .fini_array 00000004 0800b240 0800b240 0000c240 2**2 + CONTENTS, ALLOC, LOAD, READONLY, DATA + 8 .data 00000010 20000000 0800b244 0000d000 2**2 + CONTENTS, ALLOC, LOAD, DATA + 9 .bss 00000030 20000010 0800b254 0000d010 2**2 + ALLOC + 10 ._user_heap_stack 00000600 20000040 0800b254 0000d040 2**0 + ALLOC + 11 .ARM.attributes 00000029 00000000 00000000 0000d010 2**0 + CONTENTS, READONLY + 12 .debug_info 0000527d 00000000 00000000 0000d039 2**0 + CONTENTS, READONLY, DEBUGGING, OCTETS + 13 .debug_abbrev 000012da 00000000 00000000 000122b6 2**0 + CONTENTS, READONLY, DEBUGGING, OCTETS + 14 .debug_aranges 000004e8 00000000 00000000 00013590 2**3 + CONTENTS, READONLY, DEBUGGING, OCTETS + 15 .debug_rnglists 00000399 00000000 00000000 00013a78 2**0 + CONTENTS, READONLY, DEBUGGING, OCTETS + 16 .debug_macro 00018ae7 00000000 00000000 00013e11 2**0 + CONTENTS, READONLY, DEBUGGING, OCTETS + 17 .debug_line 000075c5 00000000 00000000 0002c8f8 2**0 + CONTENTS, READONLY, DEBUGGING, OCTETS + 18 .debug_str 0008dac0 00000000 00000000 00033ebd 2**0 + CONTENTS, READONLY, DEBUGGING, OCTETS + 19 .comment 00000043 00000000 00000000 000c197d 2**0 + CONTENTS, READONLY + 20 .debug_frame 000012dc 00000000 00000000 000c19c0 2**2 + CONTENTS, READONLY, DEBUGGING, OCTETS + 21 .debug_line_str 00000095 00000000 00000000 000c2c9c 2**0 + CONTENTS, READONLY, DEBUGGING, OCTETS + +Disassembly of section .text: + +080001e8 <__do_global_dtors_aux>: + 80001e8: b510 push {r4, lr} + 80001ea: 4c05 ldr r4, [pc, #20] @ (8000200 <__do_global_dtors_aux+0x18>) + 80001ec: 7823 ldrb r3, [r4, #0] + 80001ee: b933 cbnz r3, 80001fe <__do_global_dtors_aux+0x16> + 80001f0: 4b04 ldr r3, [pc, #16] @ (8000204 <__do_global_dtors_aux+0x1c>) + 80001f2: b113 cbz r3, 80001fa <__do_global_dtors_aux+0x12> + 80001f4: 4804 ldr r0, [pc, #16] @ (8000208 <__do_global_dtors_aux+0x20>) + 80001f6: f3af 8000 nop.w + 80001fa: 2301 movs r3, #1 + 80001fc: 7023 strb r3, [r4, #0] + 80001fe: bd10 pop {r4, pc} + 8000200: 20000010 .word 0x20000010 + 8000204: 00000000 .word 0x00000000 + 8000208: 08008248 .word 0x08008248 + +0800020c : + 800020c: b508 push {r3, lr} + 800020e: 4b03 ldr r3, [pc, #12] @ (800021c ) + 8000210: b11b cbz r3, 800021a + 8000212: 4903 ldr r1, [pc, #12] @ (8000220 ) + 8000214: 4803 ldr r0, [pc, #12] @ (8000224 ) + 8000216: f3af 8000 nop.w + 800021a: bd08 pop {r3, pc} + 800021c: 00000000 .word 0x00000000 + 8000220: 20000014 .word 0x20000014 + 8000224: 08008248 .word 0x08008248 + +08000228 <__aeabi_dmul>: + 8000228: b570 push {r4, r5, r6, lr} + 800022a: f04f 0cff mov.w ip, #255 @ 0xff + 800022e: f44c 6ce0 orr.w ip, ip, #1792 @ 0x700 + 8000232: ea1c 5411 ands.w r4, ip, r1, lsr #20 + 8000236: bf1d ittte ne + 8000238: ea1c 5513 andsne.w r5, ip, r3, lsr #20 + 800023c: ea94 0f0c teqne r4, ip + 8000240: ea95 0f0c teqne r5, ip + 8000244: f000 f8de bleq 8000404 <__aeabi_dmul+0x1dc> + 8000248: 442c add r4, r5 + 800024a: ea81 0603 eor.w r6, r1, r3 + 800024e: ea21 514c bic.w r1, r1, ip, lsl #21 + 8000252: ea23 534c bic.w r3, r3, ip, lsl #21 + 8000256: ea50 3501 orrs.w r5, r0, r1, lsl #12 + 800025a: bf18 it ne + 800025c: ea52 3503 orrsne.w r5, r2, r3, lsl #12 + 8000260: f441 1180 orr.w r1, r1, #1048576 @ 0x100000 + 8000264: f443 1380 orr.w r3, r3, #1048576 @ 0x100000 + 8000268: d038 beq.n 80002dc <__aeabi_dmul+0xb4> + 800026a: fba0 ce02 umull ip, lr, r0, r2 + 800026e: f04f 0500 mov.w r5, #0 + 8000272: fbe1 e502 umlal lr, r5, r1, r2 + 8000276: f006 4200 and.w r2, r6, #2147483648 @ 0x80000000 + 800027a: fbe0 e503 umlal lr, r5, r0, r3 + 800027e: f04f 0600 mov.w r6, #0 + 8000282: fbe1 5603 umlal r5, r6, r1, r3 + 8000286: f09c 0f00 teq ip, #0 + 800028a: bf18 it ne + 800028c: f04e 0e01 orrne.w lr, lr, #1 + 8000290: f1a4 04ff sub.w r4, r4, #255 @ 0xff + 8000294: f5b6 7f00 cmp.w r6, #512 @ 0x200 + 8000298: f564 7440 sbc.w r4, r4, #768 @ 0x300 + 800029c: d204 bcs.n 80002a8 <__aeabi_dmul+0x80> + 800029e: ea5f 0e4e movs.w lr, lr, lsl #1 + 80002a2: 416d adcs r5, r5 + 80002a4: eb46 0606 adc.w r6, r6, r6 + 80002a8: ea42 21c6 orr.w r1, r2, r6, lsl #11 + 80002ac: ea41 5155 orr.w r1, r1, r5, lsr #21 + 80002b0: ea4f 20c5 mov.w r0, r5, lsl #11 + 80002b4: ea40 505e orr.w r0, r0, lr, lsr #21 + 80002b8: ea4f 2ece mov.w lr, lr, lsl #11 + 80002bc: f1b4 0cfd subs.w ip, r4, #253 @ 0xfd + 80002c0: bf88 it hi + 80002c2: f5bc 6fe0 cmphi.w ip, #1792 @ 0x700 + 80002c6: d81e bhi.n 8000306 <__aeabi_dmul+0xde> + 80002c8: f1be 4f00 cmp.w lr, #2147483648 @ 0x80000000 + 80002cc: bf08 it eq + 80002ce: ea5f 0e50 movseq.w lr, r0, lsr #1 + 80002d2: f150 0000 adcs.w r0, r0, #0 + 80002d6: eb41 5104 adc.w r1, r1, r4, lsl #20 + 80002da: bd70 pop {r4, r5, r6, pc} + 80002dc: f006 4600 and.w r6, r6, #2147483648 @ 0x80000000 + 80002e0: ea46 0101 orr.w r1, r6, r1 + 80002e4: ea40 0002 orr.w r0, r0, r2 + 80002e8: ea81 0103 eor.w r1, r1, r3 + 80002ec: ebb4 045c subs.w r4, r4, ip, lsr #1 + 80002f0: bfc2 ittt gt + 80002f2: ebd4 050c rsbsgt r5, r4, ip + 80002f6: ea41 5104 orrgt.w r1, r1, r4, lsl #20 + 80002fa: bd70 popgt {r4, r5, r6, pc} + 80002fc: f441 1180 orr.w r1, r1, #1048576 @ 0x100000 + 8000300: f04f 0e00 mov.w lr, #0 + 8000304: 3c01 subs r4, #1 + 8000306: f300 80ab bgt.w 8000460 <__aeabi_dmul+0x238> + 800030a: f114 0f36 cmn.w r4, #54 @ 0x36 + 800030e: bfde ittt le + 8000310: 2000 movle r0, #0 + 8000312: f001 4100 andle.w r1, r1, #2147483648 @ 0x80000000 + 8000316: bd70 pople {r4, r5, r6, pc} + 8000318: f1c4 0400 rsb r4, r4, #0 + 800031c: 3c20 subs r4, #32 + 800031e: da35 bge.n 800038c <__aeabi_dmul+0x164> + 8000320: 340c adds r4, #12 + 8000322: dc1b bgt.n 800035c <__aeabi_dmul+0x134> + 8000324: f104 0414 add.w r4, r4, #20 + 8000328: f1c4 0520 rsb r5, r4, #32 + 800032c: fa00 f305 lsl.w r3, r0, r5 + 8000330: fa20 f004 lsr.w r0, r0, r4 + 8000334: fa01 f205 lsl.w r2, r1, r5 + 8000338: ea40 0002 orr.w r0, r0, r2 + 800033c: f001 4200 and.w r2, r1, #2147483648 @ 0x80000000 + 8000340: f021 4100 bic.w r1, r1, #2147483648 @ 0x80000000 + 8000344: eb10 70d3 adds.w r0, r0, r3, lsr #31 + 8000348: fa21 f604 lsr.w r6, r1, r4 + 800034c: eb42 0106 adc.w r1, r2, r6 + 8000350: ea5e 0e43 orrs.w lr, lr, r3, lsl #1 + 8000354: bf08 it eq + 8000356: ea20 70d3 biceq.w r0, r0, r3, lsr #31 + 800035a: bd70 pop {r4, r5, r6, pc} + 800035c: f1c4 040c rsb r4, r4, #12 + 8000360: f1c4 0520 rsb r5, r4, #32 + 8000364: fa00 f304 lsl.w r3, r0, r4 + 8000368: fa20 f005 lsr.w r0, r0, r5 + 800036c: fa01 f204 lsl.w r2, r1, r4 + 8000370: ea40 0002 orr.w r0, r0, r2 + 8000374: f001 4100 and.w r1, r1, #2147483648 @ 0x80000000 + 8000378: eb10 70d3 adds.w r0, r0, r3, lsr #31 + 800037c: f141 0100 adc.w r1, r1, #0 + 8000380: ea5e 0e43 orrs.w lr, lr, r3, lsl #1 + 8000384: bf08 it eq + 8000386: ea20 70d3 biceq.w r0, r0, r3, lsr #31 + 800038a: bd70 pop {r4, r5, r6, pc} + 800038c: f1c4 0520 rsb r5, r4, #32 + 8000390: fa00 f205 lsl.w r2, r0, r5 + 8000394: ea4e 0e02 orr.w lr, lr, r2 + 8000398: fa20 f304 lsr.w r3, r0, r4 + 800039c: fa01 f205 lsl.w r2, r1, r5 + 80003a0: ea43 0302 orr.w r3, r3, r2 + 80003a4: fa21 f004 lsr.w r0, r1, r4 + 80003a8: f001 4100 and.w r1, r1, #2147483648 @ 0x80000000 + 80003ac: fa21 f204 lsr.w r2, r1, r4 + 80003b0: ea20 0002 bic.w r0, r0, r2 + 80003b4: eb00 70d3 add.w r0, r0, r3, lsr #31 + 80003b8: ea5e 0e43 orrs.w lr, lr, r3, lsl #1 + 80003bc: bf08 it eq + 80003be: ea20 70d3 biceq.w r0, r0, r3, lsr #31 + 80003c2: bd70 pop {r4, r5, r6, pc} + 80003c4: f094 0f00 teq r4, #0 + 80003c8: d10f bne.n 80003ea <__aeabi_dmul+0x1c2> + 80003ca: f001 4600 and.w r6, r1, #2147483648 @ 0x80000000 + 80003ce: 0040 lsls r0, r0, #1 + 80003d0: eb41 0101 adc.w r1, r1, r1 + 80003d4: f411 1f80 tst.w r1, #1048576 @ 0x100000 + 80003d8: bf08 it eq + 80003da: 3c01 subeq r4, #1 + 80003dc: d0f7 beq.n 80003ce <__aeabi_dmul+0x1a6> + 80003de: ea41 0106 orr.w r1, r1, r6 + 80003e2: f095 0f00 teq r5, #0 + 80003e6: bf18 it ne + 80003e8: 4770 bxne lr + 80003ea: f003 4600 and.w r6, r3, #2147483648 @ 0x80000000 + 80003ee: 0052 lsls r2, r2, #1 + 80003f0: eb43 0303 adc.w r3, r3, r3 + 80003f4: f413 1f80 tst.w r3, #1048576 @ 0x100000 + 80003f8: bf08 it eq + 80003fa: 3d01 subeq r5, #1 + 80003fc: d0f7 beq.n 80003ee <__aeabi_dmul+0x1c6> + 80003fe: ea43 0306 orr.w r3, r3, r6 + 8000402: 4770 bx lr + 8000404: ea94 0f0c teq r4, ip + 8000408: ea0c 5513 and.w r5, ip, r3, lsr #20 + 800040c: bf18 it ne + 800040e: ea95 0f0c teqne r5, ip + 8000412: d00c beq.n 800042e <__aeabi_dmul+0x206> + 8000414: ea50 0641 orrs.w r6, r0, r1, lsl #1 + 8000418: bf18 it ne + 800041a: ea52 0643 orrsne.w r6, r2, r3, lsl #1 + 800041e: d1d1 bne.n 80003c4 <__aeabi_dmul+0x19c> + 8000420: ea81 0103 eor.w r1, r1, r3 + 8000424: f001 4100 and.w r1, r1, #2147483648 @ 0x80000000 + 8000428: f04f 0000 mov.w r0, #0 + 800042c: bd70 pop {r4, r5, r6, pc} + 800042e: ea50 0641 orrs.w r6, r0, r1, lsl #1 + 8000432: bf06 itte eq + 8000434: 4610 moveq r0, r2 + 8000436: 4619 moveq r1, r3 + 8000438: ea52 0643 orrsne.w r6, r2, r3, lsl #1 + 800043c: d019 beq.n 8000472 <__aeabi_dmul+0x24a> + 800043e: ea94 0f0c teq r4, ip + 8000442: d102 bne.n 800044a <__aeabi_dmul+0x222> + 8000444: ea50 3601 orrs.w r6, r0, r1, lsl #12 + 8000448: d113 bne.n 8000472 <__aeabi_dmul+0x24a> + 800044a: ea95 0f0c teq r5, ip + 800044e: d105 bne.n 800045c <__aeabi_dmul+0x234> + 8000450: ea52 3603 orrs.w r6, r2, r3, lsl #12 + 8000454: bf1c itt ne + 8000456: 4610 movne r0, r2 + 8000458: 4619 movne r1, r3 + 800045a: d10a bne.n 8000472 <__aeabi_dmul+0x24a> + 800045c: ea81 0103 eor.w r1, r1, r3 + 8000460: f001 4100 and.w r1, r1, #2147483648 @ 0x80000000 + 8000464: f041 41fe orr.w r1, r1, #2130706432 @ 0x7f000000 + 8000468: f441 0170 orr.w r1, r1, #15728640 @ 0xf00000 + 800046c: f04f 0000 mov.w r0, #0 + 8000470: bd70 pop {r4, r5, r6, pc} + 8000472: f041 41fe orr.w r1, r1, #2130706432 @ 0x7f000000 + 8000476: f441 0178 orr.w r1, r1, #16252928 @ 0xf80000 + 800047a: bd70 pop {r4, r5, r6, pc} + +0800047c <__aeabi_drsub>: + 800047c: f081 4100 eor.w r1, r1, #2147483648 @ 0x80000000 + 8000480: e002 b.n 8000488 <__adddf3> + 8000482: bf00 nop + +08000484 <__aeabi_dsub>: + 8000484: f083 4300 eor.w r3, r3, #2147483648 @ 0x80000000 + +08000488 <__adddf3>: + 8000488: b530 push {r4, r5, lr} + 800048a: ea4f 0441 mov.w r4, r1, lsl #1 + 800048e: ea4f 0543 mov.w r5, r3, lsl #1 + 8000492: ea94 0f05 teq r4, r5 + 8000496: bf08 it eq + 8000498: ea90 0f02 teqeq r0, r2 + 800049c: bf1f itttt ne + 800049e: ea54 0c00 orrsne.w ip, r4, r0 + 80004a2: ea55 0c02 orrsne.w ip, r5, r2 + 80004a6: ea7f 5c64 mvnsne.w ip, r4, asr #21 + 80004aa: ea7f 5c65 mvnsne.w ip, r5, asr #21 + 80004ae: f000 80e2 beq.w 8000676 <__adddf3+0x1ee> + 80004b2: ea4f 5454 mov.w r4, r4, lsr #21 + 80004b6: ebd4 5555 rsbs r5, r4, r5, lsr #21 + 80004ba: bfb8 it lt + 80004bc: 426d neglt r5, r5 + 80004be: dd0c ble.n 80004da <__adddf3+0x52> + 80004c0: 442c add r4, r5 + 80004c2: ea80 0202 eor.w r2, r0, r2 + 80004c6: ea81 0303 eor.w r3, r1, r3 + 80004ca: ea82 0000 eor.w r0, r2, r0 + 80004ce: ea83 0101 eor.w r1, r3, r1 + 80004d2: ea80 0202 eor.w r2, r0, r2 + 80004d6: ea81 0303 eor.w r3, r1, r3 + 80004da: 2d36 cmp r5, #54 @ 0x36 + 80004dc: bf88 it hi + 80004de: bd30 pophi {r4, r5, pc} + 80004e0: f011 4f00 tst.w r1, #2147483648 @ 0x80000000 + 80004e4: ea4f 3101 mov.w r1, r1, lsl #12 + 80004e8: f44f 1c80 mov.w ip, #1048576 @ 0x100000 + 80004ec: ea4c 3111 orr.w r1, ip, r1, lsr #12 + 80004f0: d002 beq.n 80004f8 <__adddf3+0x70> + 80004f2: 4240 negs r0, r0 + 80004f4: eb61 0141 sbc.w r1, r1, r1, lsl #1 + 80004f8: f013 4f00 tst.w r3, #2147483648 @ 0x80000000 + 80004fc: ea4f 3303 mov.w r3, r3, lsl #12 + 8000500: ea4c 3313 orr.w r3, ip, r3, lsr #12 + 8000504: d002 beq.n 800050c <__adddf3+0x84> + 8000506: 4252 negs r2, r2 + 8000508: eb63 0343 sbc.w r3, r3, r3, lsl #1 + 800050c: ea94 0f05 teq r4, r5 + 8000510: f000 80a7 beq.w 8000662 <__adddf3+0x1da> + 8000514: f1a4 0401 sub.w r4, r4, #1 + 8000518: f1d5 0e20 rsbs lr, r5, #32 + 800051c: db0d blt.n 800053a <__adddf3+0xb2> + 800051e: fa02 fc0e lsl.w ip, r2, lr + 8000522: fa22 f205 lsr.w r2, r2, r5 + 8000526: 1880 adds r0, r0, r2 + 8000528: f141 0100 adc.w r1, r1, #0 + 800052c: fa03 f20e lsl.w r2, r3, lr + 8000530: 1880 adds r0, r0, r2 + 8000532: fa43 f305 asr.w r3, r3, r5 + 8000536: 4159 adcs r1, r3 + 8000538: e00e b.n 8000558 <__adddf3+0xd0> + 800053a: f1a5 0520 sub.w r5, r5, #32 + 800053e: f10e 0e20 add.w lr, lr, #32 + 8000542: 2a01 cmp r2, #1 + 8000544: fa03 fc0e lsl.w ip, r3, lr + 8000548: bf28 it cs + 800054a: f04c 0c02 orrcs.w ip, ip, #2 + 800054e: fa43 f305 asr.w r3, r3, r5 + 8000552: 18c0 adds r0, r0, r3 + 8000554: eb51 71e3 adcs.w r1, r1, r3, asr #31 + 8000558: f001 4500 and.w r5, r1, #2147483648 @ 0x80000000 + 800055c: d507 bpl.n 800056e <__adddf3+0xe6> + 800055e: f04f 0e00 mov.w lr, #0 + 8000562: f1dc 0c00 rsbs ip, ip, #0 + 8000566: eb7e 0000 sbcs.w r0, lr, r0 + 800056a: eb6e 0101 sbc.w r1, lr, r1 + 800056e: f5b1 1f80 cmp.w r1, #1048576 @ 0x100000 + 8000572: d31b bcc.n 80005ac <__adddf3+0x124> + 8000574: f5b1 1f00 cmp.w r1, #2097152 @ 0x200000 + 8000578: d30c bcc.n 8000594 <__adddf3+0x10c> + 800057a: 0849 lsrs r1, r1, #1 + 800057c: ea5f 0030 movs.w r0, r0, rrx + 8000580: ea4f 0c3c mov.w ip, ip, rrx + 8000584: f104 0401 add.w r4, r4, #1 + 8000588: ea4f 5244 mov.w r2, r4, lsl #21 + 800058c: f512 0f80 cmn.w r2, #4194304 @ 0x400000 + 8000590: f080 809a bcs.w 80006c8 <__adddf3+0x240> + 8000594: f1bc 4f00 cmp.w ip, #2147483648 @ 0x80000000 + 8000598: bf08 it eq + 800059a: ea5f 0c50 movseq.w ip, r0, lsr #1 + 800059e: f150 0000 adcs.w r0, r0, #0 + 80005a2: eb41 5104 adc.w r1, r1, r4, lsl #20 + 80005a6: ea41 0105 orr.w r1, r1, r5 + 80005aa: bd30 pop {r4, r5, pc} + 80005ac: ea5f 0c4c movs.w ip, ip, lsl #1 + 80005b0: 4140 adcs r0, r0 + 80005b2: eb41 0101 adc.w r1, r1, r1 + 80005b6: 3c01 subs r4, #1 + 80005b8: bf28 it cs + 80005ba: f5b1 1f80 cmpcs.w r1, #1048576 @ 0x100000 + 80005be: d2e9 bcs.n 8000594 <__adddf3+0x10c> + 80005c0: f091 0f00 teq r1, #0 + 80005c4: bf04 itt eq + 80005c6: 4601 moveq r1, r0 + 80005c8: 2000 moveq r0, #0 + 80005ca: fab1 f381 clz r3, r1 + 80005ce: bf08 it eq + 80005d0: 3320 addeq r3, #32 + 80005d2: f1a3 030b sub.w r3, r3, #11 + 80005d6: f1b3 0220 subs.w r2, r3, #32 + 80005da: da0c bge.n 80005f6 <__adddf3+0x16e> + 80005dc: 320c adds r2, #12 + 80005de: dd08 ble.n 80005f2 <__adddf3+0x16a> + 80005e0: f102 0c14 add.w ip, r2, #20 + 80005e4: f1c2 020c rsb r2, r2, #12 + 80005e8: fa01 f00c lsl.w r0, r1, ip + 80005ec: fa21 f102 lsr.w r1, r1, r2 + 80005f0: e00c b.n 800060c <__adddf3+0x184> + 80005f2: f102 0214 add.w r2, r2, #20 + 80005f6: bfd8 it le + 80005f8: f1c2 0c20 rsble ip, r2, #32 + 80005fc: fa01 f102 lsl.w r1, r1, r2 + 8000600: fa20 fc0c lsr.w ip, r0, ip + 8000604: bfdc itt le + 8000606: ea41 010c orrle.w r1, r1, ip + 800060a: 4090 lslle r0, r2 + 800060c: 1ae4 subs r4, r4, r3 + 800060e: bfa2 ittt ge + 8000610: eb01 5104 addge.w r1, r1, r4, lsl #20 + 8000614: 4329 orrge r1, r5 + 8000616: bd30 popge {r4, r5, pc} + 8000618: ea6f 0404 mvn.w r4, r4 + 800061c: 3c1f subs r4, #31 + 800061e: da1c bge.n 800065a <__adddf3+0x1d2> + 8000620: 340c adds r4, #12 + 8000622: dc0e bgt.n 8000642 <__adddf3+0x1ba> + 8000624: f104 0414 add.w r4, r4, #20 + 8000628: f1c4 0220 rsb r2, r4, #32 + 800062c: fa20 f004 lsr.w r0, r0, r4 + 8000630: fa01 f302 lsl.w r3, r1, r2 + 8000634: ea40 0003 orr.w r0, r0, r3 + 8000638: fa21 f304 lsr.w r3, r1, r4 + 800063c: ea45 0103 orr.w r1, r5, r3 + 8000640: bd30 pop {r4, r5, pc} + 8000642: f1c4 040c rsb r4, r4, #12 + 8000646: f1c4 0220 rsb r2, r4, #32 + 800064a: fa20 f002 lsr.w r0, r0, r2 + 800064e: fa01 f304 lsl.w r3, r1, r4 + 8000652: ea40 0003 orr.w r0, r0, r3 + 8000656: 4629 mov r1, r5 + 8000658: bd30 pop {r4, r5, pc} + 800065a: fa21 f004 lsr.w r0, r1, r4 + 800065e: 4629 mov r1, r5 + 8000660: bd30 pop {r4, r5, pc} + 8000662: f094 0f00 teq r4, #0 + 8000666: f483 1380 eor.w r3, r3, #1048576 @ 0x100000 + 800066a: bf06 itte eq + 800066c: f481 1180 eoreq.w r1, r1, #1048576 @ 0x100000 + 8000670: 3401 addeq r4, #1 + 8000672: 3d01 subne r5, #1 + 8000674: e74e b.n 8000514 <__adddf3+0x8c> + 8000676: ea7f 5c64 mvns.w ip, r4, asr #21 + 800067a: bf18 it ne + 800067c: ea7f 5c65 mvnsne.w ip, r5, asr #21 + 8000680: d029 beq.n 80006d6 <__adddf3+0x24e> + 8000682: ea94 0f05 teq r4, r5 + 8000686: bf08 it eq + 8000688: ea90 0f02 teqeq r0, r2 + 800068c: d005 beq.n 800069a <__adddf3+0x212> + 800068e: ea54 0c00 orrs.w ip, r4, r0 + 8000692: bf04 itt eq + 8000694: 4619 moveq r1, r3 + 8000696: 4610 moveq r0, r2 + 8000698: bd30 pop {r4, r5, pc} + 800069a: ea91 0f03 teq r1, r3 + 800069e: bf1e ittt ne + 80006a0: 2100 movne r1, #0 + 80006a2: 2000 movne r0, #0 + 80006a4: bd30 popne {r4, r5, pc} + 80006a6: ea5f 5c54 movs.w ip, r4, lsr #21 + 80006aa: d105 bne.n 80006b8 <__adddf3+0x230> + 80006ac: 0040 lsls r0, r0, #1 + 80006ae: 4149 adcs r1, r1 + 80006b0: bf28 it cs + 80006b2: f041 4100 orrcs.w r1, r1, #2147483648 @ 0x80000000 + 80006b6: bd30 pop {r4, r5, pc} + 80006b8: f514 0480 adds.w r4, r4, #4194304 @ 0x400000 + 80006bc: bf3c itt cc + 80006be: f501 1180 addcc.w r1, r1, #1048576 @ 0x100000 + 80006c2: bd30 popcc {r4, r5, pc} + 80006c4: f001 4500 and.w r5, r1, #2147483648 @ 0x80000000 + 80006c8: f045 41fe orr.w r1, r5, #2130706432 @ 0x7f000000 + 80006cc: f441 0170 orr.w r1, r1, #15728640 @ 0xf00000 + 80006d0: f04f 0000 mov.w r0, #0 + 80006d4: bd30 pop {r4, r5, pc} + 80006d6: ea7f 5c64 mvns.w ip, r4, asr #21 + 80006da: bf1a itte ne + 80006dc: 4619 movne r1, r3 + 80006de: 4610 movne r0, r2 + 80006e0: ea7f 5c65 mvnseq.w ip, r5, asr #21 + 80006e4: bf1c itt ne + 80006e6: 460b movne r3, r1 + 80006e8: 4602 movne r2, r0 + 80006ea: ea50 3401 orrs.w r4, r0, r1, lsl #12 + 80006ee: bf06 itte eq + 80006f0: ea52 3503 orrseq.w r5, r2, r3, lsl #12 + 80006f4: ea91 0f03 teqeq r1, r3 + 80006f8: f441 2100 orrne.w r1, r1, #524288 @ 0x80000 + 80006fc: bd30 pop {r4, r5, pc} + 80006fe: bf00 nop + +08000700 <__aeabi_ui2d>: + 8000700: f090 0f00 teq r0, #0 + 8000704: bf04 itt eq + 8000706: 2100 moveq r1, #0 + 8000708: 4770 bxeq lr + 800070a: b530 push {r4, r5, lr} + 800070c: f44f 6480 mov.w r4, #1024 @ 0x400 + 8000710: f104 0432 add.w r4, r4, #50 @ 0x32 + 8000714: f04f 0500 mov.w r5, #0 + 8000718: f04f 0100 mov.w r1, #0 + 800071c: e750 b.n 80005c0 <__adddf3+0x138> + 800071e: bf00 nop + +08000720 <__aeabi_i2d>: + 8000720: f090 0f00 teq r0, #0 + 8000724: bf04 itt eq + 8000726: 2100 moveq r1, #0 + 8000728: 4770 bxeq lr + 800072a: b530 push {r4, r5, lr} + 800072c: f44f 6480 mov.w r4, #1024 @ 0x400 + 8000730: f104 0432 add.w r4, r4, #50 @ 0x32 + 8000734: f010 4500 ands.w r5, r0, #2147483648 @ 0x80000000 + 8000738: bf48 it mi + 800073a: 4240 negmi r0, r0 + 800073c: f04f 0100 mov.w r1, #0 + 8000740: e73e b.n 80005c0 <__adddf3+0x138> + 8000742: bf00 nop + +08000744 <__aeabi_f2d>: + 8000744: 0042 lsls r2, r0, #1 + 8000746: ea4f 01e2 mov.w r1, r2, asr #3 + 800074a: ea4f 0131 mov.w r1, r1, rrx + 800074e: ea4f 7002 mov.w r0, r2, lsl #28 + 8000752: bf1f itttt ne + 8000754: f012 437f andsne.w r3, r2, #4278190080 @ 0xff000000 + 8000758: f093 4f7f teqne r3, #4278190080 @ 0xff000000 + 800075c: f081 5160 eorne.w r1, r1, #939524096 @ 0x38000000 + 8000760: 4770 bxne lr + 8000762: f032 427f bics.w r2, r2, #4278190080 @ 0xff000000 + 8000766: bf08 it eq + 8000768: 4770 bxeq lr + 800076a: f093 4f7f teq r3, #4278190080 @ 0xff000000 + 800076e: bf04 itt eq + 8000770: f441 2100 orreq.w r1, r1, #524288 @ 0x80000 + 8000774: 4770 bxeq lr + 8000776: b530 push {r4, r5, lr} + 8000778: f44f 7460 mov.w r4, #896 @ 0x380 + 800077c: f001 4500 and.w r5, r1, #2147483648 @ 0x80000000 + 8000780: f021 4100 bic.w r1, r1, #2147483648 @ 0x80000000 + 8000784: e71c b.n 80005c0 <__adddf3+0x138> + 8000786: bf00 nop + +08000788 <__aeabi_ul2d>: + 8000788: ea50 0201 orrs.w r2, r0, r1 + 800078c: bf08 it eq + 800078e: 4770 bxeq lr + 8000790: b530 push {r4, r5, lr} + 8000792: f04f 0500 mov.w r5, #0 + 8000796: e00a b.n 80007ae <__aeabi_l2d+0x16> + +08000798 <__aeabi_l2d>: + 8000798: ea50 0201 orrs.w r2, r0, r1 + 800079c: bf08 it eq + 800079e: 4770 bxeq lr + 80007a0: b530 push {r4, r5, lr} + 80007a2: f011 4500 ands.w r5, r1, #2147483648 @ 0x80000000 + 80007a6: d502 bpl.n 80007ae <__aeabi_l2d+0x16> + 80007a8: 4240 negs r0, r0 + 80007aa: eb61 0141 sbc.w r1, r1, r1, lsl #1 + 80007ae: f44f 6480 mov.w r4, #1024 @ 0x400 + 80007b2: f104 0432 add.w r4, r4, #50 @ 0x32 + 80007b6: ea5f 5c91 movs.w ip, r1, lsr #22 + 80007ba: f43f aed8 beq.w 800056e <__adddf3+0xe6> + 80007be: f04f 0203 mov.w r2, #3 + 80007c2: ea5f 0cdc movs.w ip, ip, lsr #3 + 80007c6: bf18 it ne + 80007c8: 3203 addne r2, #3 + 80007ca: ea5f 0cdc movs.w ip, ip, lsr #3 + 80007ce: bf18 it ne + 80007d0: 3203 addne r2, #3 + 80007d2: eb02 02dc add.w r2, r2, ip, lsr #3 + 80007d6: f1c2 0320 rsb r3, r2, #32 + 80007da: fa00 fc03 lsl.w ip, r0, r3 + 80007de: fa20 f002 lsr.w r0, r0, r2 + 80007e2: fa01 fe03 lsl.w lr, r1, r3 + 80007e6: ea40 000e orr.w r0, r0, lr + 80007ea: fa21 f102 lsr.w r1, r1, r2 + 80007ee: 4414 add r4, r2 + 80007f0: e6bd b.n 800056e <__adddf3+0xe6> + 80007f2: bf00 nop + +080007f4 <__aeabi_d2uiz>: + 80007f4: 004a lsls r2, r1, #1 + 80007f6: d211 bcs.n 800081c <__aeabi_d2uiz+0x28> + 80007f8: f512 1200 adds.w r2, r2, #2097152 @ 0x200000 + 80007fc: d211 bcs.n 8000822 <__aeabi_d2uiz+0x2e> + 80007fe: d50d bpl.n 800081c <__aeabi_d2uiz+0x28> + 8000800: f46f 7378 mvn.w r3, #992 @ 0x3e0 + 8000804: ebb3 5262 subs.w r2, r3, r2, asr #21 + 8000808: d40e bmi.n 8000828 <__aeabi_d2uiz+0x34> + 800080a: ea4f 23c1 mov.w r3, r1, lsl #11 + 800080e: f043 4300 orr.w r3, r3, #2147483648 @ 0x80000000 + 8000812: ea43 5350 orr.w r3, r3, r0, lsr #21 + 8000816: fa23 f002 lsr.w r0, r3, r2 + 800081a: 4770 bx lr + 800081c: f04f 0000 mov.w r0, #0 + 8000820: 4770 bx lr + 8000822: ea50 3001 orrs.w r0, r0, r1, lsl #12 + 8000826: d102 bne.n 800082e <__aeabi_d2uiz+0x3a> + 8000828: f04f 30ff mov.w r0, #4294967295 @ 0xffffffff + 800082c: 4770 bx lr + 800082e: f04f 0000 mov.w r0, #0 + 8000832: 4770 bx lr + +08000834 : + * Output + * EVENT_OUT + * EXTI +*/ +void MX_GPIO_Init(void) +{ + 8000834: b580 push {r7, lr} + 8000836: b088 sub sp, #32 + 8000838: af00 add r7, sp, #0 + + GPIO_InitTypeDef GPIO_InitStruct = {0}; + 800083a: f107 0310 add.w r3, r7, #16 + 800083e: 2200 movs r2, #0 + 8000840: 601a str r2, [r3, #0] + 8000842: 605a str r2, [r3, #4] + 8000844: 609a str r2, [r3, #8] + 8000846: 60da str r2, [r3, #12] + + /* GPIO Ports Clock Enable */ + __HAL_RCC_GPIOD_CLK_ENABLE(); + 8000848: 4b34 ldr r3, [pc, #208] @ (800091c ) + 800084a: 699b ldr r3, [r3, #24] + 800084c: 4a33 ldr r2, [pc, #204] @ (800091c ) + 800084e: f043 0320 orr.w r3, r3, #32 + 8000852: 6193 str r3, [r2, #24] + 8000854: 4b31 ldr r3, [pc, #196] @ (800091c ) + 8000856: 699b ldr r3, [r3, #24] + 8000858: f003 0320 and.w r3, r3, #32 + 800085c: 60fb str r3, [r7, #12] + 800085e: 68fb ldr r3, [r7, #12] + __HAL_RCC_GPIOC_CLK_ENABLE(); + 8000860: 4b2e ldr r3, [pc, #184] @ (800091c ) + 8000862: 699b ldr r3, [r3, #24] + 8000864: 4a2d ldr r2, [pc, #180] @ (800091c ) + 8000866: f043 0310 orr.w r3, r3, #16 + 800086a: 6193 str r3, [r2, #24] + 800086c: 4b2b ldr r3, [pc, #172] @ (800091c ) + 800086e: 699b ldr r3, [r3, #24] + 8000870: f003 0310 and.w r3, r3, #16 + 8000874: 60bb str r3, [r7, #8] + 8000876: 68bb ldr r3, [r7, #8] + __HAL_RCC_GPIOA_CLK_ENABLE(); + 8000878: 4b28 ldr r3, [pc, #160] @ (800091c ) + 800087a: 699b ldr r3, [r3, #24] + 800087c: 4a27 ldr r2, [pc, #156] @ (800091c ) + 800087e: f043 0304 orr.w r3, r3, #4 + 8000882: 6193 str r3, [r2, #24] + 8000884: 4b25 ldr r3, [pc, #148] @ (800091c ) + 8000886: 699b ldr r3, [r3, #24] + 8000888: f003 0304 and.w r3, r3, #4 + 800088c: 607b str r3, [r7, #4] + 800088e: 687b ldr r3, [r7, #4] + + /*Configure GPIO pin Output Level */ + HAL_GPIO_WritePin(LED0_GPIO_Port, LED0_Pin, GPIO_PIN_SET); + 8000890: 2201 movs r2, #1 + 8000892: f44f 7180 mov.w r1, #256 @ 0x100 + 8000896: 4822 ldr r0, [pc, #136] @ (8000920 ) + 8000898: f007 f8aa bl 80079f0 + + /*Configure GPIO pin Output Level */ + HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET); + 800089c: 2201 movs r2, #1 + 800089e: 2104 movs r1, #4 + 80008a0: 4820 ldr r0, [pc, #128] @ (8000924 ) + 80008a2: f007 f8a5 bl 80079f0 + + /*Configure GPIO pin : PtPin */ + GPIO_InitStruct.Pin = KEY0_Pin; + 80008a6: 2320 movs r3, #32 + 80008a8: 613b str r3, [r7, #16] + GPIO_InitStruct.Mode = GPIO_MODE_INPUT; + 80008aa: 2300 movs r3, #0 + 80008ac: 617b str r3, [r7, #20] + GPIO_InitStruct.Pull = GPIO_PULLUP; + 80008ae: 2301 movs r3, #1 + 80008b0: 61bb str r3, [r7, #24] + HAL_GPIO_Init(KEY0_GPIO_Port, &GPIO_InitStruct); + 80008b2: f107 0310 add.w r3, r7, #16 + 80008b6: 4619 mov r1, r3 + 80008b8: 481b ldr r0, [pc, #108] @ (8000928 ) + 80008ba: f006 ff05 bl 80076c8 + + /*Configure GPIO pin : PtPin */ + GPIO_InitStruct.Pin = LED0_Pin; + 80008be: f44f 7380 mov.w r3, #256 @ 0x100 + 80008c2: 613b str r3, [r7, #16] + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + 80008c4: 2301 movs r3, #1 + 80008c6: 617b str r3, [r7, #20] + GPIO_InitStruct.Pull = GPIO_NOPULL; + 80008c8: 2300 movs r3, #0 + 80008ca: 61bb str r3, [r7, #24] + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 80008cc: 2302 movs r3, #2 + 80008ce: 61fb str r3, [r7, #28] + HAL_GPIO_Init(LED0_GPIO_Port, &GPIO_InitStruct); + 80008d0: f107 0310 add.w r3, r7, #16 + 80008d4: 4619 mov r1, r3 + 80008d6: 4812 ldr r0, [pc, #72] @ (8000920 ) + 80008d8: f006 fef6 bl 80076c8 + + /*Configure GPIO pin : PtPin */ + GPIO_InitStruct.Pin = KEY1_Pin; + 80008dc: f44f 4300 mov.w r3, #32768 @ 0x8000 + 80008e0: 613b str r3, [r7, #16] + GPIO_InitStruct.Mode = GPIO_MODE_INPUT; + 80008e2: 2300 movs r3, #0 + 80008e4: 617b str r3, [r7, #20] + GPIO_InitStruct.Pull = GPIO_PULLUP; + 80008e6: 2301 movs r3, #1 + 80008e8: 61bb str r3, [r7, #24] + HAL_GPIO_Init(KEY1_GPIO_Port, &GPIO_InitStruct); + 80008ea: f107 0310 add.w r3, r7, #16 + 80008ee: 4619 mov r1, r3 + 80008f0: 480b ldr r0, [pc, #44] @ (8000920 ) + 80008f2: f006 fee9 bl 80076c8 + + /*Configure GPIO pin : PtPin */ + GPIO_InitStruct.Pin = LED1_Pin; + 80008f6: 2304 movs r3, #4 + 80008f8: 613b str r3, [r7, #16] + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + 80008fa: 2301 movs r3, #1 + 80008fc: 617b str r3, [r7, #20] + GPIO_InitStruct.Pull = GPIO_NOPULL; + 80008fe: 2300 movs r3, #0 + 8000900: 61bb str r3, [r7, #24] + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 8000902: 2302 movs r3, #2 + 8000904: 61fb str r3, [r7, #28] + HAL_GPIO_Init(LED1_GPIO_Port, &GPIO_InitStruct); + 8000906: f107 0310 add.w r3, r7, #16 + 800090a: 4619 mov r1, r3 + 800090c: 4805 ldr r0, [pc, #20] @ (8000924 ) + 800090e: f006 fedb bl 80076c8 + +} + 8000912: bf00 nop + 8000914: 3720 adds r7, #32 + 8000916: 46bd mov sp, r7 + 8000918: bd80 pop {r7, pc} + 800091a: bf00 nop + 800091c: 40021000 .word 0x40021000 + 8000920: 40010800 .word 0x40010800 + 8000924: 40011400 .word 0x40011400 + 8000928: 40011000 .word 0x40011000 + +0800092c : + * ʡ����ռ�. + * @param data : Ҫд������� + * @retval �� + */ +void lcd_wr_xdata(uint16_t data) +{ + 800092c: b480 push {r7} + 800092e: b083 sub sp, #12 + 8000930: af00 add r7, sp, #0 + 8000932: 4603 mov r3, r0 + 8000934: 80fb strh r3, [r7, #6] + LCD_RS(1); + 8000936: 4b0d ldr r3, [pc, #52] @ (800096c ) + 8000938: f44f 7280 mov.w r2, #256 @ 0x100 + 800093c: 611a str r2, [r3, #16] + LCD_CS(0); + 800093e: 4b0b ldr r3, [pc, #44] @ (800096c ) + 8000940: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000944: 611a str r2, [r3, #16] + LCD_DATA_OUT(data); + 8000946: 4a0a ldr r2, [pc, #40] @ (8000970 ) + 8000948: 88fb ldrh r3, [r7, #6] + 800094a: 60d3 str r3, [r2, #12] + LCD_WR(0); + 800094c: 4b07 ldr r3, [pc, #28] @ (800096c ) + 800094e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000952: 611a str r2, [r3, #16] + LCD_WR(1); + 8000954: 4b05 ldr r3, [pc, #20] @ (800096c ) + 8000956: 2280 movs r2, #128 @ 0x80 + 8000958: 611a str r2, [r3, #16] + LCD_CS(1); + 800095a: 4b04 ldr r3, [pc, #16] @ (800096c ) + 800095c: f44f 7200 mov.w r2, #512 @ 0x200 + 8000960: 611a str r2, [r3, #16] +} + 8000962: bf00 nop + 8000964: 370c adds r7, #12 + 8000966: 46bd mov sp, r7 + 8000968: bc80 pop {r7} + 800096a: 4770 bx lr + 800096c: 40011000 .word 0x40011000 + 8000970: 40010c00 .word 0x40010c00 + +08000974 : + * @param regno:�Ĵ������/��ַ + * @param data:Ҫд������� + * @retval �� + */ +void lcd_write_reg(uint16_t regno, uint16_t data) +{ + 8000974: b480 push {r7} + 8000976: b085 sub sp, #20 + 8000978: af00 add r7, sp, #0 + 800097a: 4603 mov r3, r0 + 800097c: 460a mov r2, r1 + 800097e: 80fb strh r3, [r7, #6] + 8000980: 4613 mov r3, r2 + 8000982: 80bb strh r3, [r7, #4] + 8000984: 88fb ldrh r3, [r7, #6] + 8000986: 81fb strh r3, [r7, #14] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8000988: 4b19 ldr r3, [pc, #100] @ (80009f0 ) + 800098a: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800098e: 611a str r2, [r3, #16] + LCD_CS(0); + 8000990: 4b17 ldr r3, [pc, #92] @ (80009f0 ) + 8000992: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000996: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8000998: 89fb ldrh r3, [r7, #14] + 800099a: b29a uxth r2, r3 + 800099c: 4b15 ldr r3, [pc, #84] @ (80009f4 ) + 800099e: 60da str r2, [r3, #12] + LCD_WR(0); + 80009a0: 4b13 ldr r3, [pc, #76] @ (80009f0 ) + 80009a2: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80009a6: 611a str r2, [r3, #16] + LCD_WR(1); + 80009a8: 4b11 ldr r3, [pc, #68] @ (80009f0 ) + 80009aa: 2280 movs r2, #128 @ 0x80 + 80009ac: 611a str r2, [r3, #16] + LCD_CS(1); + 80009ae: 4b10 ldr r3, [pc, #64] @ (80009f0 ) + 80009b0: f44f 7200 mov.w r2, #512 @ 0x200 + 80009b4: 611a str r2, [r3, #16] +} + 80009b6: bf00 nop + lcd_wr_regno(regno); /* д��Ҫд�ļĴ������ */ + lcd_wr_data(data); /* д������ */ + 80009b8: 4b0d ldr r3, [pc, #52] @ (80009f0 ) + 80009ba: f44f 7280 mov.w r2, #256 @ 0x100 + 80009be: 611a str r2, [r3, #16] + 80009c0: 4b0b ldr r3, [pc, #44] @ (80009f0 ) + 80009c2: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80009c6: 611a str r2, [r3, #16] + 80009c8: 4a0a ldr r2, [pc, #40] @ (80009f4 ) + 80009ca: 88bb ldrh r3, [r7, #4] + 80009cc: 60d3 str r3, [r2, #12] + 80009ce: 4b08 ldr r3, [pc, #32] @ (80009f0 ) + 80009d0: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80009d4: 611a str r2, [r3, #16] + 80009d6: 4b06 ldr r3, [pc, #24] @ (80009f0 ) + 80009d8: 2280 movs r2, #128 @ 0x80 + 80009da: 611a str r2, [r3, #16] + 80009dc: 4b04 ldr r3, [pc, #16] @ (80009f0 ) + 80009de: f44f 7200 mov.w r2, #512 @ 0x200 + 80009e2: 611a str r2, [r3, #16] +} + 80009e4: bf00 nop + 80009e6: 3714 adds r7, #20 + 80009e8: 46bd mov sp, r7 + 80009ea: bc80 pop {r7} + 80009ec: 4770 bx lr + 80009ee: bf00 nop + 80009f0: 40011000 .word 0x40011000 + 80009f4: 40010c00 .word 0x40010c00 + +080009f8 : + * @brief LCD��ʱ����,�����ڲ�����mdk -O1ʱ���Ż�ʱ��Ҫ���õĵط� + * @param t:��ʱ����ֵ + * @retval �� + */ +static void lcd_opt_delay(uint32_t i) +{ + 80009f8: b480 push {r7} + 80009fa: b083 sub sp, #12 + 80009fc: af00 add r7, sp, #0 + 80009fe: 6078 str r0, [r7, #4] + while (i--); + 8000a00: bf00 nop + 8000a02: 687b ldr r3, [r7, #4] + 8000a04: 1e5a subs r2, r3, #1 + 8000a06: 607a str r2, [r7, #4] + 8000a08: 2b00 cmp r3, #0 + 8000a0a: d1fa bne.n 8000a02 +} + 8000a0c: bf00 nop + 8000a0e: bf00 nop + 8000a10: 370c adds r7, #12 + 8000a12: 46bd mov sp, r7 + 8000a14: bc80 pop {r7} + 8000a16: 4770 bx lr + +08000a18 : + * @brief LCD������ + * @param �� + * @retval ��ȡ�������� + */ +static uint16_t lcd_rd_data(void) +{ + 8000a18: b580 push {r7, lr} + 8000a1a: b086 sub sp, #24 + 8000a1c: af00 add r7, sp, #0 + volatile uint16_t ram; /* ��ֹ���Ż� */ + + GPIO_InitTypeDef gpio_init_struct; + /* LCD_DATA ����ģʽ����, ��������, ׼���������� */ + gpio_init_struct.Pin = LCD_DATA_GPIO_PIN; + 8000a1e: f64f 73ff movw r3, #65535 @ 0xffff + 8000a22: 607b str r3, [r7, #4] + gpio_init_struct.Mode = GPIO_MODE_INPUT; + 8000a24: 2300 movs r3, #0 + 8000a26: 60bb str r3, [r7, #8] + gpio_init_struct.Pull = GPIO_PULLUP; + 8000a28: 2301 movs r3, #1 + 8000a2a: 60fb str r3, [r7, #12] + gpio_init_struct.Speed = GPIO_SPEED_FREQ_HIGH; + 8000a2c: 2303 movs r3, #3 + 8000a2e: 613b str r3, [r7, #16] + HAL_GPIO_Init(LCD_DATA_GPIO_PORT, &gpio_init_struct); + 8000a30: 1d3b adds r3, r7, #4 + 8000a32: 4619 mov r1, r3 + 8000a34: 4818 ldr r0, [pc, #96] @ (8000a98 ) + 8000a36: f006 fe47 bl 80076c8 + + LCD_RS(1); /* RS=1,��ʾ�������� */ + 8000a3a: 4b18 ldr r3, [pc, #96] @ (8000a9c ) + 8000a3c: f44f 7280 mov.w r2, #256 @ 0x100 + 8000a40: 611a str r2, [r3, #16] + LCD_CS(0); + 8000a42: 4b16 ldr r3, [pc, #88] @ (8000a9c ) + 8000a44: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000a48: 611a str r2, [r3, #16] + LCD_RD(0); + 8000a4a: 4b14 ldr r3, [pc, #80] @ (8000a9c ) + 8000a4c: f44f 0280 mov.w r2, #4194304 @ 0x400000 + 8000a50: 611a str r2, [r3, #16] + lcd_opt_delay(2); + 8000a52: 2002 movs r0, #2 + 8000a54: f7ff ffd0 bl 80009f8 + ram = LCD_DATA_IN; /* ��ȡ���� */ + 8000a58: 4b0f ldr r3, [pc, #60] @ (8000a98 ) + 8000a5a: 689b ldr r3, [r3, #8] + 8000a5c: b29b uxth r3, r3 + 8000a5e: 82fb strh r3, [r7, #22] + LCD_RD(1); + 8000a60: 4b0e ldr r3, [pc, #56] @ (8000a9c ) + 8000a62: 2240 movs r2, #64 @ 0x40 + 8000a64: 611a str r2, [r3, #16] + LCD_CS(1); + 8000a66: 4b0d ldr r3, [pc, #52] @ (8000a9c ) + 8000a68: f44f 7200 mov.w r2, #512 @ 0x200 + 8000a6c: 611a str r2, [r3, #16] + + /* LCD_DATA ����ģʽ����, �������, �ָ����״̬ */ + gpio_init_struct.Pin = LCD_DATA_GPIO_PIN; + 8000a6e: f64f 73ff movw r3, #65535 @ 0xffff + 8000a72: 607b str r3, [r7, #4] + gpio_init_struct.Mode = GPIO_MODE_OUTPUT_PP; + 8000a74: 2301 movs r3, #1 + 8000a76: 60bb str r3, [r7, #8] + gpio_init_struct.Pull = GPIO_PULLUP; + 8000a78: 2301 movs r3, #1 + 8000a7a: 60fb str r3, [r7, #12] + gpio_init_struct.Speed = GPIO_SPEED_FREQ_HIGH; + 8000a7c: 2303 movs r3, #3 + 8000a7e: 613b str r3, [r7, #16] + HAL_GPIO_Init(LCD_DATA_GPIO_PORT, &gpio_init_struct); + 8000a80: 1d3b adds r3, r7, #4 + 8000a82: 4619 mov r1, r3 + 8000a84: 4804 ldr r0, [pc, #16] @ (8000a98 ) + 8000a86: f006 fe1f bl 80076c8 + + return ram; + 8000a8a: 8afb ldrh r3, [r7, #22] + 8000a8c: b29b uxth r3, r3 +} + 8000a8e: 4618 mov r0, r3 + 8000a90: 3718 adds r7, #24 + 8000a92: 46bd mov sp, r7 + 8000a94: bd80 pop {r7, pc} + 8000a96: bf00 nop + 8000a98: 40010c00 .word 0x40010c00 + 8000a9c: 40011000 .word 0x40011000 + +08000aa0 : + * @brief ���ù��λ��(��RGB����Ч) + * @param x,y: ���� + * @retval �� + */ +void lcd_set_cursor(uint16_t x, uint16_t y) +{ + 8000aa0: b480 push {r7} + 8000aa2: b089 sub sp, #36 @ 0x24 + 8000aa4: af00 add r7, sp, #0 + 8000aa6: 4603 mov r3, r0 + 8000aa8: 460a mov r2, r1 + 8000aaa: 80fb strh r3, [r7, #6] + 8000aac: 4613 mov r3, r2 + 8000aae: 80bb strh r3, [r7, #4] + if (lcddev.id == 0X1963) + 8000ab0: 4b44 ldr r3, [pc, #272] @ (8000bc4 ) + 8000ab2: 889b ldrh r3, [r3, #4] + 8000ab4: f641 1263 movw r2, #6499 @ 0x1963 + 8000ab8: 4293 cmp r3, r2 + 8000aba: f040 8189 bne.w 8000dd0 + { + if (lcddev.dir == 0) /* ����ģʽ, x������Ҫ�任 */ + 8000abe: 4b41 ldr r3, [pc, #260] @ (8000bc4 ) + 8000ac0: 799b ldrb r3, [r3, #6] + 8000ac2: 2b00 cmp r3, #0 + 8000ac4: f040 8084 bne.w 8000bd0 + { + x = lcddev.width - 1 - x; + 8000ac8: 4b3e ldr r3, [pc, #248] @ (8000bc4 ) + 8000aca: 881a ldrh r2, [r3, #0] + 8000acc: 88fb ldrh r3, [r7, #6] + 8000ace: 1ad3 subs r3, r2, r3 + 8000ad0: b29b uxth r3, r3 + 8000ad2: 3b01 subs r3, #1 + 8000ad4: 80fb strh r3, [r7, #6] + lcd_wr_regno(lcddev.setxcmd); + 8000ad6: 4b3b ldr r3, [pc, #236] @ (8000bc4 ) + 8000ad8: 895b ldrh r3, [r3, #10] + 8000ada: 81fb strh r3, [r7, #14] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8000adc: 4b3a ldr r3, [pc, #232] @ (8000bc8 ) + 8000ade: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8000ae2: 611a str r2, [r3, #16] + LCD_CS(0); + 8000ae4: 4b38 ldr r3, [pc, #224] @ (8000bc8 ) + 8000ae6: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000aea: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8000aec: 89fb ldrh r3, [r7, #14] + 8000aee: b29a uxth r2, r3 + 8000af0: 4b36 ldr r3, [pc, #216] @ (8000bcc ) + 8000af2: 60da str r2, [r3, #12] + LCD_WR(0); + 8000af4: 4b34 ldr r3, [pc, #208] @ (8000bc8 ) + 8000af6: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000afa: 611a str r2, [r3, #16] + LCD_WR(1); + 8000afc: 4b32 ldr r3, [pc, #200] @ (8000bc8 ) + 8000afe: 2280 movs r2, #128 @ 0x80 + 8000b00: 611a str r2, [r3, #16] + LCD_CS(1); + 8000b02: 4b31 ldr r3, [pc, #196] @ (8000bc8 ) + 8000b04: f44f 7200 mov.w r2, #512 @ 0x200 + 8000b08: 611a str r2, [r3, #16] +} + 8000b0a: bf00 nop + lcd_wr_data(0); + 8000b0c: 4b2e ldr r3, [pc, #184] @ (8000bc8 ) + 8000b0e: f44f 7280 mov.w r2, #256 @ 0x100 + 8000b12: 611a str r2, [r3, #16] + 8000b14: 4b2c ldr r3, [pc, #176] @ (8000bc8 ) + 8000b16: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000b1a: 611a str r2, [r3, #16] + 8000b1c: 4b2b ldr r3, [pc, #172] @ (8000bcc ) + 8000b1e: 2200 movs r2, #0 + 8000b20: 60da str r2, [r3, #12] + 8000b22: 4b29 ldr r3, [pc, #164] @ (8000bc8 ) + 8000b24: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000b28: 611a str r2, [r3, #16] + 8000b2a: 4b27 ldr r3, [pc, #156] @ (8000bc8 ) + 8000b2c: 2280 movs r2, #128 @ 0x80 + 8000b2e: 611a str r2, [r3, #16] + 8000b30: 4b25 ldr r3, [pc, #148] @ (8000bc8 ) + 8000b32: f44f 7200 mov.w r2, #512 @ 0x200 + 8000b36: 611a str r2, [r3, #16] + lcd_wr_data(0); + 8000b38: 4b23 ldr r3, [pc, #140] @ (8000bc8 ) + 8000b3a: f44f 7280 mov.w r2, #256 @ 0x100 + 8000b3e: 611a str r2, [r3, #16] + 8000b40: 4b21 ldr r3, [pc, #132] @ (8000bc8 ) + 8000b42: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000b46: 611a str r2, [r3, #16] + 8000b48: 4b20 ldr r3, [pc, #128] @ (8000bcc ) + 8000b4a: 2200 movs r2, #0 + 8000b4c: 60da str r2, [r3, #12] + 8000b4e: 4b1e ldr r3, [pc, #120] @ (8000bc8 ) + 8000b50: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000b54: 611a str r2, [r3, #16] + 8000b56: 4b1c ldr r3, [pc, #112] @ (8000bc8 ) + 8000b58: 2280 movs r2, #128 @ 0x80 + 8000b5a: 611a str r2, [r3, #16] + 8000b5c: 4b1a ldr r3, [pc, #104] @ (8000bc8 ) + 8000b5e: f44f 7200 mov.w r2, #512 @ 0x200 + 8000b62: 611a str r2, [r3, #16] + lcd_wr_data(x >> 8); + 8000b64: 4b18 ldr r3, [pc, #96] @ (8000bc8 ) + 8000b66: f44f 7280 mov.w r2, #256 @ 0x100 + 8000b6a: 611a str r2, [r3, #16] + 8000b6c: 4b16 ldr r3, [pc, #88] @ (8000bc8 ) + 8000b6e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000b72: 611a str r2, [r3, #16] + 8000b74: 88fb ldrh r3, [r7, #6] + 8000b76: 0a1b lsrs r3, r3, #8 + 8000b78: b29a uxth r2, r3 + 8000b7a: 4b14 ldr r3, [pc, #80] @ (8000bcc ) + 8000b7c: 60da str r2, [r3, #12] + 8000b7e: 4b12 ldr r3, [pc, #72] @ (8000bc8 ) + 8000b80: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000b84: 611a str r2, [r3, #16] + 8000b86: 4b10 ldr r3, [pc, #64] @ (8000bc8 ) + 8000b88: 2280 movs r2, #128 @ 0x80 + 8000b8a: 611a str r2, [r3, #16] + 8000b8c: 4b0e ldr r3, [pc, #56] @ (8000bc8 ) + 8000b8e: f44f 7200 mov.w r2, #512 @ 0x200 + 8000b92: 611a str r2, [r3, #16] + lcd_wr_data(x & 0XFF); + 8000b94: 4b0c ldr r3, [pc, #48] @ (8000bc8 ) + 8000b96: f44f 7280 mov.w r2, #256 @ 0x100 + 8000b9a: 611a str r2, [r3, #16] + 8000b9c: 4b0a ldr r3, [pc, #40] @ (8000bc8 ) + 8000b9e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000ba2: 611a str r2, [r3, #16] + 8000ba4: 88fb ldrh r3, [r7, #6] + 8000ba6: 4a09 ldr r2, [pc, #36] @ (8000bcc ) + 8000ba8: b2db uxtb r3, r3 + 8000baa: 60d3 str r3, [r2, #12] + 8000bac: 4b06 ldr r3, [pc, #24] @ (8000bc8 ) + 8000bae: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000bb2: 611a str r2, [r3, #16] + 8000bb4: 4b04 ldr r3, [pc, #16] @ (8000bc8 ) + 8000bb6: 2280 movs r2, #128 @ 0x80 + 8000bb8: 611a str r2, [r3, #16] + 8000bba: 4b03 ldr r3, [pc, #12] @ (8000bc8 ) + 8000bbc: f44f 7200 mov.w r2, #512 @ 0x200 + 8000bc0: 611a str r2, [r3, #16] + 8000bc2: e081 b.n 8000cc8 + 8000bc4: 2000002c .word 0x2000002c + 8000bc8: 40011000 .word 0x40011000 + 8000bcc: 40010c00 .word 0x40010c00 + } + else /* ����ģʽ */ + { + lcd_wr_regno(lcddev.setxcmd); + 8000bd0: 4b7c ldr r3, [pc, #496] @ (8000dc4 ) + 8000bd2: 895b ldrh r3, [r3, #10] + 8000bd4: 823b strh r3, [r7, #16] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8000bd6: 4b7c ldr r3, [pc, #496] @ (8000dc8 ) + 8000bd8: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8000bdc: 611a str r2, [r3, #16] + LCD_CS(0); + 8000bde: 4b7a ldr r3, [pc, #488] @ (8000dc8 ) + 8000be0: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000be4: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8000be6: 8a3b ldrh r3, [r7, #16] + 8000be8: b29a uxth r2, r3 + 8000bea: 4b78 ldr r3, [pc, #480] @ (8000dcc ) + 8000bec: 60da str r2, [r3, #12] + LCD_WR(0); + 8000bee: 4b76 ldr r3, [pc, #472] @ (8000dc8 ) + 8000bf0: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000bf4: 611a str r2, [r3, #16] + LCD_WR(1); + 8000bf6: 4b74 ldr r3, [pc, #464] @ (8000dc8 ) + 8000bf8: 2280 movs r2, #128 @ 0x80 + 8000bfa: 611a str r2, [r3, #16] + LCD_CS(1); + 8000bfc: 4b72 ldr r3, [pc, #456] @ (8000dc8 ) + 8000bfe: f44f 7200 mov.w r2, #512 @ 0x200 + 8000c02: 611a str r2, [r3, #16] +} + 8000c04: bf00 nop + lcd_wr_data(x >> 8); + 8000c06: 4b70 ldr r3, [pc, #448] @ (8000dc8 ) + 8000c08: f44f 7280 mov.w r2, #256 @ 0x100 + 8000c0c: 611a str r2, [r3, #16] + 8000c0e: 4b6e ldr r3, [pc, #440] @ (8000dc8 ) + 8000c10: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000c14: 611a str r2, [r3, #16] + 8000c16: 88fb ldrh r3, [r7, #6] + 8000c18: 0a1b lsrs r3, r3, #8 + 8000c1a: b29a uxth r2, r3 + 8000c1c: 4b6b ldr r3, [pc, #428] @ (8000dcc ) + 8000c1e: 60da str r2, [r3, #12] + 8000c20: 4b69 ldr r3, [pc, #420] @ (8000dc8 ) + 8000c22: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000c26: 611a str r2, [r3, #16] + 8000c28: 4b67 ldr r3, [pc, #412] @ (8000dc8 ) + 8000c2a: 2280 movs r2, #128 @ 0x80 + 8000c2c: 611a str r2, [r3, #16] + 8000c2e: 4b66 ldr r3, [pc, #408] @ (8000dc8 ) + 8000c30: f44f 7200 mov.w r2, #512 @ 0x200 + 8000c34: 611a str r2, [r3, #16] + lcd_wr_data(x & 0XFF); + 8000c36: 4b64 ldr r3, [pc, #400] @ (8000dc8 ) + 8000c38: f44f 7280 mov.w r2, #256 @ 0x100 + 8000c3c: 611a str r2, [r3, #16] + 8000c3e: 4b62 ldr r3, [pc, #392] @ (8000dc8 ) + 8000c40: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000c44: 611a str r2, [r3, #16] + 8000c46: 88fb ldrh r3, [r7, #6] + 8000c48: 4a60 ldr r2, [pc, #384] @ (8000dcc ) + 8000c4a: b2db uxtb r3, r3 + 8000c4c: 60d3 str r3, [r2, #12] + 8000c4e: 4b5e ldr r3, [pc, #376] @ (8000dc8 ) + 8000c50: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000c54: 611a str r2, [r3, #16] + 8000c56: 4b5c ldr r3, [pc, #368] @ (8000dc8 ) + 8000c58: 2280 movs r2, #128 @ 0x80 + 8000c5a: 611a str r2, [r3, #16] + 8000c5c: 4b5a ldr r3, [pc, #360] @ (8000dc8 ) + 8000c5e: f44f 7200 mov.w r2, #512 @ 0x200 + 8000c62: 611a str r2, [r3, #16] + lcd_wr_data((lcddev.width - 1) >> 8); + 8000c64: 4b58 ldr r3, [pc, #352] @ (8000dc8 ) + 8000c66: f44f 7280 mov.w r2, #256 @ 0x100 + 8000c6a: 611a str r2, [r3, #16] + 8000c6c: 4b56 ldr r3, [pc, #344] @ (8000dc8 ) + 8000c6e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000c72: 611a str r2, [r3, #16] + 8000c74: 4b53 ldr r3, [pc, #332] @ (8000dc4 ) + 8000c76: 881b ldrh r3, [r3, #0] + 8000c78: 3b01 subs r3, #1 + 8000c7a: 121a asrs r2, r3, #8 + 8000c7c: 4b53 ldr r3, [pc, #332] @ (8000dcc ) + 8000c7e: 60da str r2, [r3, #12] + 8000c80: 4b51 ldr r3, [pc, #324] @ (8000dc8 ) + 8000c82: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000c86: 611a str r2, [r3, #16] + 8000c88: 4b4f ldr r3, [pc, #316] @ (8000dc8 ) + 8000c8a: 2280 movs r2, #128 @ 0x80 + 8000c8c: 611a str r2, [r3, #16] + 8000c8e: 4b4e ldr r3, [pc, #312] @ (8000dc8 ) + 8000c90: f44f 7200 mov.w r2, #512 @ 0x200 + 8000c94: 611a str r2, [r3, #16] + lcd_wr_data((lcddev.width - 1) & 0XFF); + 8000c96: 4b4c ldr r3, [pc, #304] @ (8000dc8 ) + 8000c98: f44f 7280 mov.w r2, #256 @ 0x100 + 8000c9c: 611a str r2, [r3, #16] + 8000c9e: 4b4a ldr r3, [pc, #296] @ (8000dc8 ) + 8000ca0: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000ca4: 611a str r2, [r3, #16] + 8000ca6: 4b47 ldr r3, [pc, #284] @ (8000dc4 ) + 8000ca8: 881b ldrh r3, [r3, #0] + 8000caa: 3b01 subs r3, #1 + 8000cac: 4a47 ldr r2, [pc, #284] @ (8000dcc ) + 8000cae: b2db uxtb r3, r3 + 8000cb0: 60d3 str r3, [r2, #12] + 8000cb2: 4b45 ldr r3, [pc, #276] @ (8000dc8 ) + 8000cb4: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000cb8: 611a str r2, [r3, #16] + 8000cba: 4b43 ldr r3, [pc, #268] @ (8000dc8 ) + 8000cbc: 2280 movs r2, #128 @ 0x80 + 8000cbe: 611a str r2, [r3, #16] + 8000cc0: 4b41 ldr r3, [pc, #260] @ (8000dc8 ) + 8000cc2: f44f 7200 mov.w r2, #512 @ 0x200 + 8000cc6: 611a str r2, [r3, #16] + } + + lcd_wr_regno(lcddev.setycmd); + 8000cc8: 4b3e ldr r3, [pc, #248] @ (8000dc4 ) + 8000cca: 899b ldrh r3, [r3, #12] + 8000ccc: 827b strh r3, [r7, #18] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8000cce: 4b3e ldr r3, [pc, #248] @ (8000dc8 ) + 8000cd0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8000cd4: 611a str r2, [r3, #16] + LCD_CS(0); + 8000cd6: 4b3c ldr r3, [pc, #240] @ (8000dc8 ) + 8000cd8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000cdc: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8000cde: 8a7b ldrh r3, [r7, #18] + 8000ce0: b29a uxth r2, r3 + 8000ce2: 4b3a ldr r3, [pc, #232] @ (8000dcc ) + 8000ce4: 60da str r2, [r3, #12] + LCD_WR(0); + 8000ce6: 4b38 ldr r3, [pc, #224] @ (8000dc8 ) + 8000ce8: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000cec: 611a str r2, [r3, #16] + LCD_WR(1); + 8000cee: 4b36 ldr r3, [pc, #216] @ (8000dc8 ) + 8000cf0: 2280 movs r2, #128 @ 0x80 + 8000cf2: 611a str r2, [r3, #16] + LCD_CS(1); + 8000cf4: 4b34 ldr r3, [pc, #208] @ (8000dc8 ) + 8000cf6: f44f 7200 mov.w r2, #512 @ 0x200 + 8000cfa: 611a str r2, [r3, #16] +} + 8000cfc: bf00 nop + lcd_wr_data(y >> 8); + 8000cfe: 4b32 ldr r3, [pc, #200] @ (8000dc8 ) + 8000d00: f44f 7280 mov.w r2, #256 @ 0x100 + 8000d04: 611a str r2, [r3, #16] + 8000d06: 4b30 ldr r3, [pc, #192] @ (8000dc8 ) + 8000d08: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000d0c: 611a str r2, [r3, #16] + 8000d0e: 88bb ldrh r3, [r7, #4] + 8000d10: 0a1b lsrs r3, r3, #8 + 8000d12: b29a uxth r2, r3 + 8000d14: 4b2d ldr r3, [pc, #180] @ (8000dcc ) + 8000d16: 60da str r2, [r3, #12] + 8000d18: 4b2b ldr r3, [pc, #172] @ (8000dc8 ) + 8000d1a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000d1e: 611a str r2, [r3, #16] + 8000d20: 4b29 ldr r3, [pc, #164] @ (8000dc8 ) + 8000d22: 2280 movs r2, #128 @ 0x80 + 8000d24: 611a str r2, [r3, #16] + 8000d26: 4b28 ldr r3, [pc, #160] @ (8000dc8 ) + 8000d28: f44f 7200 mov.w r2, #512 @ 0x200 + 8000d2c: 611a str r2, [r3, #16] + lcd_wr_data(y & 0XFF); + 8000d2e: 4b26 ldr r3, [pc, #152] @ (8000dc8 ) + 8000d30: f44f 7280 mov.w r2, #256 @ 0x100 + 8000d34: 611a str r2, [r3, #16] + 8000d36: 4b24 ldr r3, [pc, #144] @ (8000dc8 ) + 8000d38: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000d3c: 611a str r2, [r3, #16] + 8000d3e: 88bb ldrh r3, [r7, #4] + 8000d40: 4a22 ldr r2, [pc, #136] @ (8000dcc ) + 8000d42: b2db uxtb r3, r3 + 8000d44: 60d3 str r3, [r2, #12] + 8000d46: 4b20 ldr r3, [pc, #128] @ (8000dc8 ) + 8000d48: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000d4c: 611a str r2, [r3, #16] + 8000d4e: 4b1e ldr r3, [pc, #120] @ (8000dc8 ) + 8000d50: 2280 movs r2, #128 @ 0x80 + 8000d52: 611a str r2, [r3, #16] + 8000d54: 4b1c ldr r3, [pc, #112] @ (8000dc8 ) + 8000d56: f44f 7200 mov.w r2, #512 @ 0x200 + 8000d5a: 611a str r2, [r3, #16] + lcd_wr_data((lcddev.height - 1) >> 8); + 8000d5c: 4b1a ldr r3, [pc, #104] @ (8000dc8 ) + 8000d5e: f44f 7280 mov.w r2, #256 @ 0x100 + 8000d62: 611a str r2, [r3, #16] + 8000d64: 4b18 ldr r3, [pc, #96] @ (8000dc8 ) + 8000d66: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000d6a: 611a str r2, [r3, #16] + 8000d6c: 4b15 ldr r3, [pc, #84] @ (8000dc4 ) + 8000d6e: 885b ldrh r3, [r3, #2] + 8000d70: 3b01 subs r3, #1 + 8000d72: 121a asrs r2, r3, #8 + 8000d74: 4b15 ldr r3, [pc, #84] @ (8000dcc ) + 8000d76: 60da str r2, [r3, #12] + 8000d78: 4b13 ldr r3, [pc, #76] @ (8000dc8 ) + 8000d7a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000d7e: 611a str r2, [r3, #16] + 8000d80: 4b11 ldr r3, [pc, #68] @ (8000dc8 ) + 8000d82: 2280 movs r2, #128 @ 0x80 + 8000d84: 611a str r2, [r3, #16] + 8000d86: 4b10 ldr r3, [pc, #64] @ (8000dc8 ) + 8000d88: f44f 7200 mov.w r2, #512 @ 0x200 + 8000d8c: 611a str r2, [r3, #16] + lcd_wr_data((lcddev.height - 1) & 0XFF); + 8000d8e: 4b0e ldr r3, [pc, #56] @ (8000dc8 ) + 8000d90: f44f 7280 mov.w r2, #256 @ 0x100 + 8000d94: 611a str r2, [r3, #16] + 8000d96: 4b0c ldr r3, [pc, #48] @ (8000dc8 ) + 8000d98: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000d9c: 611a str r2, [r3, #16] + 8000d9e: 4b09 ldr r3, [pc, #36] @ (8000dc4 ) + 8000da0: 885b ldrh r3, [r3, #2] + 8000da2: 3b01 subs r3, #1 + 8000da4: 4a09 ldr r2, [pc, #36] @ (8000dcc ) + 8000da6: b2db uxtb r3, r3 + 8000da8: 60d3 str r3, [r2, #12] + 8000daa: 4b07 ldr r3, [pc, #28] @ (8000dc8 ) + 8000dac: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000db0: 611a str r2, [r3, #16] + 8000db2: 4b05 ldr r3, [pc, #20] @ (8000dc8 ) + 8000db4: 2280 movs r2, #128 @ 0x80 + 8000db6: 611a str r2, [r3, #16] + 8000db8: 4b03 ldr r3, [pc, #12] @ (8000dc8 ) + 8000dba: f44f 7200 mov.w r2, #512 @ 0x200 + 8000dbe: 611a str r2, [r3, #16] + lcd_wr_data(x & 0XFF); + lcd_wr_regno(lcddev.setycmd); + lcd_wr_data(y >> 8); + lcd_wr_data(y & 0XFF); + } +} + 8000dc0: e176 b.n 80010b0 + 8000dc2: bf00 nop + 8000dc4: 2000002c .word 0x2000002c + 8000dc8: 40011000 .word 0x40011000 + 8000dcc: 40010c00 .word 0x40010c00 + else if (lcddev.id == 0X5510) + 8000dd0: 4b6a ldr r3, [pc, #424] @ (8000f7c ) + 8000dd2: 889b ldrh r3, [r3, #4] + 8000dd4: f245 5210 movw r2, #21776 @ 0x5510 + 8000dd8: 4293 cmp r3, r2 + 8000dda: f040 80d5 bne.w 8000f88 + lcd_wr_regno(lcddev.setxcmd); + 8000dde: 4b67 ldr r3, [pc, #412] @ (8000f7c ) + 8000de0: 895b ldrh r3, [r3, #10] + 8000de2: 837b strh r3, [r7, #26] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8000de4: 4b66 ldr r3, [pc, #408] @ (8000f80 ) + 8000de6: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8000dea: 611a str r2, [r3, #16] + LCD_CS(0); + 8000dec: 4b64 ldr r3, [pc, #400] @ (8000f80 ) + 8000dee: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000df2: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8000df4: 8b7b ldrh r3, [r7, #26] + 8000df6: b29a uxth r2, r3 + 8000df8: 4b62 ldr r3, [pc, #392] @ (8000f84 ) + 8000dfa: 60da str r2, [r3, #12] + LCD_WR(0); + 8000dfc: 4b60 ldr r3, [pc, #384] @ (8000f80 ) + 8000dfe: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000e02: 611a str r2, [r3, #16] + LCD_WR(1); + 8000e04: 4b5e ldr r3, [pc, #376] @ (8000f80 ) + 8000e06: 2280 movs r2, #128 @ 0x80 + 8000e08: 611a str r2, [r3, #16] + LCD_CS(1); + 8000e0a: 4b5d ldr r3, [pc, #372] @ (8000f80 ) + 8000e0c: f44f 7200 mov.w r2, #512 @ 0x200 + 8000e10: 611a str r2, [r3, #16] +} + 8000e12: bf00 nop + lcd_wr_data(x >> 8); + 8000e14: 4b5a ldr r3, [pc, #360] @ (8000f80 ) + 8000e16: f44f 7280 mov.w r2, #256 @ 0x100 + 8000e1a: 611a str r2, [r3, #16] + 8000e1c: 4b58 ldr r3, [pc, #352] @ (8000f80 ) + 8000e1e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000e22: 611a str r2, [r3, #16] + 8000e24: 88fb ldrh r3, [r7, #6] + 8000e26: 0a1b lsrs r3, r3, #8 + 8000e28: b29a uxth r2, r3 + 8000e2a: 4b56 ldr r3, [pc, #344] @ (8000f84 ) + 8000e2c: 60da str r2, [r3, #12] + 8000e2e: 4b54 ldr r3, [pc, #336] @ (8000f80 ) + 8000e30: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000e34: 611a str r2, [r3, #16] + 8000e36: 4b52 ldr r3, [pc, #328] @ (8000f80 ) + 8000e38: 2280 movs r2, #128 @ 0x80 + 8000e3a: 611a str r2, [r3, #16] + 8000e3c: 4b50 ldr r3, [pc, #320] @ (8000f80 ) + 8000e3e: f44f 7200 mov.w r2, #512 @ 0x200 + 8000e42: 611a str r2, [r3, #16] + lcd_wr_regno(lcddev.setxcmd + 1); + 8000e44: 4b4d ldr r3, [pc, #308] @ (8000f7c ) + 8000e46: 895b ldrh r3, [r3, #10] + 8000e48: 3301 adds r3, #1 + 8000e4a: b29b uxth r3, r3 + 8000e4c: 833b strh r3, [r7, #24] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8000e4e: 4b4c ldr r3, [pc, #304] @ (8000f80 ) + 8000e50: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8000e54: 611a str r2, [r3, #16] + LCD_CS(0); + 8000e56: 4b4a ldr r3, [pc, #296] @ (8000f80 ) + 8000e58: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000e5c: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8000e5e: 8b3b ldrh r3, [r7, #24] + 8000e60: b29a uxth r2, r3 + 8000e62: 4b48 ldr r3, [pc, #288] @ (8000f84 ) + 8000e64: 60da str r2, [r3, #12] + LCD_WR(0); + 8000e66: 4b46 ldr r3, [pc, #280] @ (8000f80 ) + 8000e68: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000e6c: 611a str r2, [r3, #16] + LCD_WR(1); + 8000e6e: 4b44 ldr r3, [pc, #272] @ (8000f80 ) + 8000e70: 2280 movs r2, #128 @ 0x80 + 8000e72: 611a str r2, [r3, #16] + LCD_CS(1); + 8000e74: 4b42 ldr r3, [pc, #264] @ (8000f80 ) + 8000e76: f44f 7200 mov.w r2, #512 @ 0x200 + 8000e7a: 611a str r2, [r3, #16] +} + 8000e7c: bf00 nop + lcd_wr_data(x & 0XFF); + 8000e7e: 4b40 ldr r3, [pc, #256] @ (8000f80 ) + 8000e80: f44f 7280 mov.w r2, #256 @ 0x100 + 8000e84: 611a str r2, [r3, #16] + 8000e86: 4b3e ldr r3, [pc, #248] @ (8000f80 ) + 8000e88: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000e8c: 611a str r2, [r3, #16] + 8000e8e: 88fb ldrh r3, [r7, #6] + 8000e90: 4a3c ldr r2, [pc, #240] @ (8000f84 ) + 8000e92: b2db uxtb r3, r3 + 8000e94: 60d3 str r3, [r2, #12] + 8000e96: 4b3a ldr r3, [pc, #232] @ (8000f80 ) + 8000e98: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000e9c: 611a str r2, [r3, #16] + 8000e9e: 4b38 ldr r3, [pc, #224] @ (8000f80 ) + 8000ea0: 2280 movs r2, #128 @ 0x80 + 8000ea2: 611a str r2, [r3, #16] + 8000ea4: 4b36 ldr r3, [pc, #216] @ (8000f80 ) + 8000ea6: f44f 7200 mov.w r2, #512 @ 0x200 + 8000eaa: 611a str r2, [r3, #16] + lcd_wr_regno(lcddev.setycmd); + 8000eac: 4b33 ldr r3, [pc, #204] @ (8000f7c ) + 8000eae: 899b ldrh r3, [r3, #12] + 8000eb0: 82fb strh r3, [r7, #22] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8000eb2: 4b33 ldr r3, [pc, #204] @ (8000f80 ) + 8000eb4: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8000eb8: 611a str r2, [r3, #16] + LCD_CS(0); + 8000eba: 4b31 ldr r3, [pc, #196] @ (8000f80 ) + 8000ebc: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000ec0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8000ec2: 8afb ldrh r3, [r7, #22] + 8000ec4: b29a uxth r2, r3 + 8000ec6: 4b2f ldr r3, [pc, #188] @ (8000f84 ) + 8000ec8: 60da str r2, [r3, #12] + LCD_WR(0); + 8000eca: 4b2d ldr r3, [pc, #180] @ (8000f80 ) + 8000ecc: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000ed0: 611a str r2, [r3, #16] + LCD_WR(1); + 8000ed2: 4b2b ldr r3, [pc, #172] @ (8000f80 ) + 8000ed4: 2280 movs r2, #128 @ 0x80 + 8000ed6: 611a str r2, [r3, #16] + LCD_CS(1); + 8000ed8: 4b29 ldr r3, [pc, #164] @ (8000f80 ) + 8000eda: f44f 7200 mov.w r2, #512 @ 0x200 + 8000ede: 611a str r2, [r3, #16] +} + 8000ee0: bf00 nop + lcd_wr_data(y >> 8); + 8000ee2: 4b27 ldr r3, [pc, #156] @ (8000f80 ) + 8000ee4: f44f 7280 mov.w r2, #256 @ 0x100 + 8000ee8: 611a str r2, [r3, #16] + 8000eea: 4b25 ldr r3, [pc, #148] @ (8000f80 ) + 8000eec: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000ef0: 611a str r2, [r3, #16] + 8000ef2: 88bb ldrh r3, [r7, #4] + 8000ef4: 0a1b lsrs r3, r3, #8 + 8000ef6: b29a uxth r2, r3 + 8000ef8: 4b22 ldr r3, [pc, #136] @ (8000f84 ) + 8000efa: 60da str r2, [r3, #12] + 8000efc: 4b20 ldr r3, [pc, #128] @ (8000f80 ) + 8000efe: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000f02: 611a str r2, [r3, #16] + 8000f04: 4b1e ldr r3, [pc, #120] @ (8000f80 ) + 8000f06: 2280 movs r2, #128 @ 0x80 + 8000f08: 611a str r2, [r3, #16] + 8000f0a: 4b1d ldr r3, [pc, #116] @ (8000f80 ) + 8000f0c: f44f 7200 mov.w r2, #512 @ 0x200 + 8000f10: 611a str r2, [r3, #16] + lcd_wr_regno(lcddev.setycmd + 1); + 8000f12: 4b1a ldr r3, [pc, #104] @ (8000f7c ) + 8000f14: 899b ldrh r3, [r3, #12] + 8000f16: 3301 adds r3, #1 + 8000f18: b29b uxth r3, r3 + 8000f1a: 82bb strh r3, [r7, #20] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8000f1c: 4b18 ldr r3, [pc, #96] @ (8000f80 ) + 8000f1e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8000f22: 611a str r2, [r3, #16] + LCD_CS(0); + 8000f24: 4b16 ldr r3, [pc, #88] @ (8000f80 ) + 8000f26: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000f2a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8000f2c: 8abb ldrh r3, [r7, #20] + 8000f2e: b29a uxth r2, r3 + 8000f30: 4b14 ldr r3, [pc, #80] @ (8000f84 ) + 8000f32: 60da str r2, [r3, #12] + LCD_WR(0); + 8000f34: 4b12 ldr r3, [pc, #72] @ (8000f80 ) + 8000f36: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000f3a: 611a str r2, [r3, #16] + LCD_WR(1); + 8000f3c: 4b10 ldr r3, [pc, #64] @ (8000f80 ) + 8000f3e: 2280 movs r2, #128 @ 0x80 + 8000f40: 611a str r2, [r3, #16] + LCD_CS(1); + 8000f42: 4b0f ldr r3, [pc, #60] @ (8000f80 ) + 8000f44: f44f 7200 mov.w r2, #512 @ 0x200 + 8000f48: 611a str r2, [r3, #16] +} + 8000f4a: bf00 nop + lcd_wr_data(y & 0XFF); + 8000f4c: 4b0c ldr r3, [pc, #48] @ (8000f80 ) + 8000f4e: f44f 7280 mov.w r2, #256 @ 0x100 + 8000f52: 611a str r2, [r3, #16] + 8000f54: 4b0a ldr r3, [pc, #40] @ (8000f80 ) + 8000f56: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000f5a: 611a str r2, [r3, #16] + 8000f5c: 88bb ldrh r3, [r7, #4] + 8000f5e: 4a09 ldr r2, [pc, #36] @ (8000f84 ) + 8000f60: b2db uxtb r3, r3 + 8000f62: 60d3 str r3, [r2, #12] + 8000f64: 4b06 ldr r3, [pc, #24] @ (8000f80 ) + 8000f66: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000f6a: 611a str r2, [r3, #16] + 8000f6c: 4b04 ldr r3, [pc, #16] @ (8000f80 ) + 8000f6e: 2280 movs r2, #128 @ 0x80 + 8000f70: 611a str r2, [r3, #16] + 8000f72: 4b03 ldr r3, [pc, #12] @ (8000f80 ) + 8000f74: f44f 7200 mov.w r2, #512 @ 0x200 + 8000f78: 611a str r2, [r3, #16] +} + 8000f7a: e099 b.n 80010b0 + 8000f7c: 2000002c .word 0x2000002c + 8000f80: 40011000 .word 0x40011000 + 8000f84: 40010c00 .word 0x40010c00 + lcd_wr_regno(lcddev.setxcmd); + 8000f88: 4b4c ldr r3, [pc, #304] @ (80010bc ) + 8000f8a: 895b ldrh r3, [r3, #10] + 8000f8c: 83fb strh r3, [r7, #30] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8000f8e: 4b4c ldr r3, [pc, #304] @ (80010c0 ) + 8000f90: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8000f94: 611a str r2, [r3, #16] + LCD_CS(0); + 8000f96: 4b4a ldr r3, [pc, #296] @ (80010c0 ) + 8000f98: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000f9c: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8000f9e: 8bfb ldrh r3, [r7, #30] + 8000fa0: b29a uxth r2, r3 + 8000fa2: 4b48 ldr r3, [pc, #288] @ (80010c4 ) + 8000fa4: 60da str r2, [r3, #12] + LCD_WR(0); + 8000fa6: 4b46 ldr r3, [pc, #280] @ (80010c0 ) + 8000fa8: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000fac: 611a str r2, [r3, #16] + LCD_WR(1); + 8000fae: 4b44 ldr r3, [pc, #272] @ (80010c0 ) + 8000fb0: 2280 movs r2, #128 @ 0x80 + 8000fb2: 611a str r2, [r3, #16] + LCD_CS(1); + 8000fb4: 4b42 ldr r3, [pc, #264] @ (80010c0 ) + 8000fb6: f44f 7200 mov.w r2, #512 @ 0x200 + 8000fba: 611a str r2, [r3, #16] +} + 8000fbc: bf00 nop + lcd_wr_data(x >> 8); + 8000fbe: 4b40 ldr r3, [pc, #256] @ (80010c0 ) + 8000fc0: f44f 7280 mov.w r2, #256 @ 0x100 + 8000fc4: 611a str r2, [r3, #16] + 8000fc6: 4b3e ldr r3, [pc, #248] @ (80010c0 ) + 8000fc8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000fcc: 611a str r2, [r3, #16] + 8000fce: 88fb ldrh r3, [r7, #6] + 8000fd0: 0a1b lsrs r3, r3, #8 + 8000fd2: b29a uxth r2, r3 + 8000fd4: 4b3b ldr r3, [pc, #236] @ (80010c4 ) + 8000fd6: 60da str r2, [r3, #12] + 8000fd8: 4b39 ldr r3, [pc, #228] @ (80010c0 ) + 8000fda: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8000fde: 611a str r2, [r3, #16] + 8000fe0: 4b37 ldr r3, [pc, #220] @ (80010c0 ) + 8000fe2: 2280 movs r2, #128 @ 0x80 + 8000fe4: 611a str r2, [r3, #16] + 8000fe6: 4b36 ldr r3, [pc, #216] @ (80010c0 ) + 8000fe8: f44f 7200 mov.w r2, #512 @ 0x200 + 8000fec: 611a str r2, [r3, #16] + lcd_wr_data(x & 0XFF); + 8000fee: 4b34 ldr r3, [pc, #208] @ (80010c0 ) + 8000ff0: f44f 7280 mov.w r2, #256 @ 0x100 + 8000ff4: 611a str r2, [r3, #16] + 8000ff6: 4b32 ldr r3, [pc, #200] @ (80010c0 ) + 8000ff8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8000ffc: 611a str r2, [r3, #16] + 8000ffe: 88fb ldrh r3, [r7, #6] + 8001000: 4a30 ldr r2, [pc, #192] @ (80010c4 ) + 8001002: b2db uxtb r3, r3 + 8001004: 60d3 str r3, [r2, #12] + 8001006: 4b2e ldr r3, [pc, #184] @ (80010c0 ) + 8001008: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800100c: 611a str r2, [r3, #16] + 800100e: 4b2c ldr r3, [pc, #176] @ (80010c0 ) + 8001010: 2280 movs r2, #128 @ 0x80 + 8001012: 611a str r2, [r3, #16] + 8001014: 4b2a ldr r3, [pc, #168] @ (80010c0 ) + 8001016: f44f 7200 mov.w r2, #512 @ 0x200 + 800101a: 611a str r2, [r3, #16] + lcd_wr_regno(lcddev.setycmd); + 800101c: 4b27 ldr r3, [pc, #156] @ (80010bc ) + 800101e: 899b ldrh r3, [r3, #12] + 8001020: 83bb strh r3, [r7, #28] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8001022: 4b27 ldr r3, [pc, #156] @ (80010c0 ) + 8001024: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8001028: 611a str r2, [r3, #16] + LCD_CS(0); + 800102a: 4b25 ldr r3, [pc, #148] @ (80010c0 ) + 800102c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001030: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8001032: 8bbb ldrh r3, [r7, #28] + 8001034: b29a uxth r2, r3 + 8001036: 4b23 ldr r3, [pc, #140] @ (80010c4 ) + 8001038: 60da str r2, [r3, #12] + LCD_WR(0); + 800103a: 4b21 ldr r3, [pc, #132] @ (80010c0 ) + 800103c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001040: 611a str r2, [r3, #16] + LCD_WR(1); + 8001042: 4b1f ldr r3, [pc, #124] @ (80010c0 ) + 8001044: 2280 movs r2, #128 @ 0x80 + 8001046: 611a str r2, [r3, #16] + LCD_CS(1); + 8001048: 4b1d ldr r3, [pc, #116] @ (80010c0 ) + 800104a: f44f 7200 mov.w r2, #512 @ 0x200 + 800104e: 611a str r2, [r3, #16] +} + 8001050: bf00 nop + lcd_wr_data(y >> 8); + 8001052: 4b1b ldr r3, [pc, #108] @ (80010c0 ) + 8001054: f44f 7280 mov.w r2, #256 @ 0x100 + 8001058: 611a str r2, [r3, #16] + 800105a: 4b19 ldr r3, [pc, #100] @ (80010c0 ) + 800105c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001060: 611a str r2, [r3, #16] + 8001062: 88bb ldrh r3, [r7, #4] + 8001064: 0a1b lsrs r3, r3, #8 + 8001066: b29a uxth r2, r3 + 8001068: 4b16 ldr r3, [pc, #88] @ (80010c4 ) + 800106a: 60da str r2, [r3, #12] + 800106c: 4b14 ldr r3, [pc, #80] @ (80010c0 ) + 800106e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001072: 611a str r2, [r3, #16] + 8001074: 4b12 ldr r3, [pc, #72] @ (80010c0 ) + 8001076: 2280 movs r2, #128 @ 0x80 + 8001078: 611a str r2, [r3, #16] + 800107a: 4b11 ldr r3, [pc, #68] @ (80010c0 ) + 800107c: f44f 7200 mov.w r2, #512 @ 0x200 + 8001080: 611a str r2, [r3, #16] + lcd_wr_data(y & 0XFF); + 8001082: 4b0f ldr r3, [pc, #60] @ (80010c0 ) + 8001084: f44f 7280 mov.w r2, #256 @ 0x100 + 8001088: 611a str r2, [r3, #16] + 800108a: 4b0d ldr r3, [pc, #52] @ (80010c0 ) + 800108c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001090: 611a str r2, [r3, #16] + 8001092: 88bb ldrh r3, [r7, #4] + 8001094: 4a0b ldr r2, [pc, #44] @ (80010c4 ) + 8001096: b2db uxtb r3, r3 + 8001098: 60d3 str r3, [r2, #12] + 800109a: 4b09 ldr r3, [pc, #36] @ (80010c0 ) + 800109c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80010a0: 611a str r2, [r3, #16] + 80010a2: 4b07 ldr r3, [pc, #28] @ (80010c0 ) + 80010a4: 2280 movs r2, #128 @ 0x80 + 80010a6: 611a str r2, [r3, #16] + 80010a8: 4b05 ldr r3, [pc, #20] @ (80010c0 ) + 80010aa: f44f 7200 mov.w r2, #512 @ 0x200 + 80010ae: 611a str r2, [r3, #16] +} + 80010b0: bf00 nop + 80010b2: 3724 adds r7, #36 @ 0x24 + 80010b4: 46bd mov sp, r7 + 80010b6: bc80 pop {r7} + 80010b8: 4770 bx lr + 80010ba: bf00 nop + 80010bc: 2000002c .word 0x2000002c + 80010c0: 40011000 .word 0x40011000 + 80010c4: 40010c00 .word 0x40010c00 + +080010c8 : + * + * @param dir:0~7,����8������(���嶨���lcd.h) + * @retval �� + */ +void lcd_scan_dir(uint8_t dir) +{ + 80010c8: b580 push {r7, lr} + 80010ca: b08a sub sp, #40 @ 0x28 + 80010cc: af00 add r7, sp, #0 + 80010ce: 4603 mov r3, r0 + 80010d0: 71fb strb r3, [r7, #7] + uint16_t regval = 0; + 80010d2: 2300 movs r3, #0 + 80010d4: 84fb strh r3, [r7, #38] @ 0x26 + uint16_t dirreg = 0; + 80010d6: 2300 movs r3, #0 + 80010d8: 84bb strh r3, [r7, #36] @ 0x24 + uint16_t temp; + + /* ����ʱ����1963���ı�ɨ�跽��, ����IC�ı�ɨ�跽������ʱ1963�ı䷽��, ����IC���ı�ɨ�跽�� */ + if ((lcddev.dir == 1 && lcddev.id != 0X1963) || (lcddev.dir == 0 && lcddev.id == 0X1963)) + 80010da: 4b5f ldr r3, [pc, #380] @ (8001258 ) + 80010dc: 799b ldrb r3, [r3, #6] + 80010de: 2b01 cmp r3, #1 + 80010e0: d105 bne.n 80010ee + 80010e2: 4b5d ldr r3, [pc, #372] @ (8001258 ) + 80010e4: 889b ldrh r3, [r3, #4] + 80010e6: f641 1263 movw r2, #6499 @ 0x1963 + 80010ea: 4293 cmp r3, r2 + 80010ec: d109 bne.n 8001102 + 80010ee: 4b5a ldr r3, [pc, #360] @ (8001258 ) + 80010f0: 799b ldrb r3, [r3, #6] + 80010f2: 2b00 cmp r3, #0 + 80010f4: d134 bne.n 8001160 + 80010f6: 4b58 ldr r3, [pc, #352] @ (8001258 ) + 80010f8: 889b ldrh r3, [r3, #4] + 80010fa: f641 1263 movw r2, #6499 @ 0x1963 + 80010fe: 4293 cmp r3, r2 + 8001100: d12e bne.n 8001160 + { + switch (dir) /* ����ת�� */ + 8001102: 79fb ldrb r3, [r7, #7] + 8001104: 2b07 cmp r3, #7 + 8001106: d82b bhi.n 8001160 + 8001108: a201 add r2, pc, #4 @ (adr r2, 8001110 ) + 800110a: f852 f023 ldr.w pc, [r2, r3, lsl #2] + 800110e: bf00 nop + 8001110: 08001131 .word 0x08001131 + 8001114: 08001137 .word 0x08001137 + 8001118: 0800113d .word 0x0800113d + 800111c: 08001143 .word 0x08001143 + 8001120: 08001149 .word 0x08001149 + 8001124: 0800114f .word 0x0800114f + 8001128: 08001155 .word 0x08001155 + 800112c: 0800115b .word 0x0800115b + { + case 0: + dir = 6; + 8001130: 2306 movs r3, #6 + 8001132: 71fb strb r3, [r7, #7] + break; + 8001134: e014 b.n 8001160 + + case 1: + dir = 7; + 8001136: 2307 movs r3, #7 + 8001138: 71fb strb r3, [r7, #7] + break; + 800113a: e011 b.n 8001160 + + case 2: + dir = 4; + 800113c: 2304 movs r3, #4 + 800113e: 71fb strb r3, [r7, #7] + break; + 8001140: e00e b.n 8001160 + + case 3: + dir = 5; + 8001142: 2305 movs r3, #5 + 8001144: 71fb strb r3, [r7, #7] + break; + 8001146: e00b b.n 8001160 + + case 4: + dir = 1; + 8001148: 2301 movs r3, #1 + 800114a: 71fb strb r3, [r7, #7] + break; + 800114c: e008 b.n 8001160 + + case 5: + dir = 0; + 800114e: 2300 movs r3, #0 + 8001150: 71fb strb r3, [r7, #7] + break; + 8001152: e005 b.n 8001160 + + case 6: + dir = 3; + 8001154: 2303 movs r3, #3 + 8001156: 71fb strb r3, [r7, #7] + break; + 8001158: e002 b.n 8001160 + + case 7: + dir = 2; + 800115a: 2302 movs r3, #2 + 800115c: 71fb strb r3, [r7, #7] + break; + 800115e: bf00 nop + } + } + + /* ����ɨ�跽ʽ ���� 0X36/0X3600 �Ĵ��� bit 5,6,7 λ��ֵ */ + switch (dir) + 8001160: 79fb ldrb r3, [r7, #7] + 8001162: 2b07 cmp r3, #7 + 8001164: d835 bhi.n 80011d2 + 8001166: a201 add r2, pc, #4 @ (adr r2, 800116c ) + 8001168: f852 f023 ldr.w pc, [r2, r3, lsl #2] + 800116c: 080011d3 .word 0x080011d3 + 8001170: 0800118d .word 0x0800118d + 8001174: 08001197 .word 0x08001197 + 8001178: 080011a1 .word 0x080011a1 + 800117c: 080011ab .word 0x080011ab + 8001180: 080011b5 .word 0x080011b5 + 8001184: 080011bf .word 0x080011bf + 8001188: 080011c9 .word 0x080011c9 + case L2R_U2D:/* ������,���ϵ��� */ + regval |= (0 << 7) | (0 << 6) | (0 << 5); + break; + + case L2R_D2U:/* ������,���µ��� */ + regval |= (1 << 7) | (0 << 6) | (0 << 5); + 800118c: 8cfb ldrh r3, [r7, #38] @ 0x26 + 800118e: f043 0380 orr.w r3, r3, #128 @ 0x80 + 8001192: 84fb strh r3, [r7, #38] @ 0x26 + break; + 8001194: e01d b.n 80011d2 + + case R2L_U2D:/* ���ҵ���,���ϵ��� */ + regval |= (0 << 7) | (1 << 6) | (0 << 5); + 8001196: 8cfb ldrh r3, [r7, #38] @ 0x26 + 8001198: f043 0340 orr.w r3, r3, #64 @ 0x40 + 800119c: 84fb strh r3, [r7, #38] @ 0x26 + break; + 800119e: e018 b.n 80011d2 + + case R2L_D2U:/* ���ҵ���,���µ��� */ + regval |= (1 << 7) | (1 << 6) | (0 << 5); + 80011a0: 8cfb ldrh r3, [r7, #38] @ 0x26 + 80011a2: f043 03c0 orr.w r3, r3, #192 @ 0xc0 + 80011a6: 84fb strh r3, [r7, #38] @ 0x26 + break; + 80011a8: e013 b.n 80011d2 + + case U2D_L2R:/* ���ϵ���,������ */ + regval |= (0 << 7) | (0 << 6) | (1 << 5); + 80011aa: 8cfb ldrh r3, [r7, #38] @ 0x26 + 80011ac: f043 0320 orr.w r3, r3, #32 + 80011b0: 84fb strh r3, [r7, #38] @ 0x26 + break; + 80011b2: e00e b.n 80011d2 + + case U2D_R2L:/* ���ϵ���,���ҵ��� */ + regval |= (0 << 7) | (1 << 6) | (1 << 5); + 80011b4: 8cfb ldrh r3, [r7, #38] @ 0x26 + 80011b6: f043 0360 orr.w r3, r3, #96 @ 0x60 + 80011ba: 84fb strh r3, [r7, #38] @ 0x26 + break; + 80011bc: e009 b.n 80011d2 + + case D2U_L2R:/* ���µ���,������ */ + regval |= (1 << 7) | (0 << 6) | (1 << 5); + 80011be: 8cfb ldrh r3, [r7, #38] @ 0x26 + 80011c0: f043 03a0 orr.w r3, r3, #160 @ 0xa0 + 80011c4: 84fb strh r3, [r7, #38] @ 0x26 + break; + 80011c6: e004 b.n 80011d2 + + case D2U_R2L:/* ���µ���,���ҵ��� */ + regval |= (1 << 7) | (1 << 6) | (1 << 5); + 80011c8: 8cfb ldrh r3, [r7, #38] @ 0x26 + 80011ca: f043 03e0 orr.w r3, r3, #224 @ 0xe0 + 80011ce: 84fb strh r3, [r7, #38] @ 0x26 + break; + 80011d0: bf00 nop + } + + dirreg = 0X36; /* �Ծ��󲿷�����IC, ��0X36�Ĵ������� */ + 80011d2: 2336 movs r3, #54 @ 0x36 + 80011d4: 84bb strh r3, [r7, #36] @ 0x24 + + if (lcddev.id == 0X5510) + 80011d6: 4b20 ldr r3, [pc, #128] @ (8001258 ) + 80011d8: 889b ldrh r3, [r3, #4] + 80011da: f245 5210 movw r2, #21776 @ 0x5510 + 80011de: 4293 cmp r3, r2 + 80011e0: d102 bne.n 80011e8 + { + dirreg = 0X3600; /* ����5510, ����������ic�ļĴ����в��� */ + 80011e2: f44f 5358 mov.w r3, #13824 @ 0x3600 + 80011e6: 84bb strh r3, [r7, #36] @ 0x24 + } + + /* 9341 & 7789 & 7796 Ҫ����BGRλ */ + if (lcddev.id == 0X9341 || lcddev.id == 0X7789 || lcddev.id == 0x7796) + 80011e8: 4b1b ldr r3, [pc, #108] @ (8001258 ) + 80011ea: 889b ldrh r3, [r3, #4] + 80011ec: f249 3241 movw r2, #37697 @ 0x9341 + 80011f0: 4293 cmp r3, r2 + 80011f2: d00b beq.n 800120c + 80011f4: 4b18 ldr r3, [pc, #96] @ (8001258 ) + 80011f6: 889b ldrh r3, [r3, #4] + 80011f8: f247 7289 movw r2, #30601 @ 0x7789 + 80011fc: 4293 cmp r3, r2 + 80011fe: d005 beq.n 800120c + 8001200: 4b15 ldr r3, [pc, #84] @ (8001258 ) + 8001202: 889b ldrh r3, [r3, #4] + 8001204: f247 7296 movw r2, #30614 @ 0x7796 + 8001208: 4293 cmp r3, r2 + 800120a: d103 bne.n 8001214 + { + regval |= 0X08; + 800120c: 8cfb ldrh r3, [r7, #38] @ 0x26 + 800120e: f043 0308 orr.w r3, r3, #8 + 8001212: 84fb strh r3, [r7, #38] @ 0x26 + } + + lcd_write_reg(dirreg, regval); + 8001214: 8cfa ldrh r2, [r7, #38] @ 0x26 + 8001216: 8cbb ldrh r3, [r7, #36] @ 0x24 + 8001218: 4611 mov r1, r2 + 800121a: 4618 mov r0, r3 + 800121c: f7ff fbaa bl 8000974 + + if (lcddev.id != 0X1963) /* 1963�������괦�� */ + 8001220: 4b0d ldr r3, [pc, #52] @ (8001258 ) + 8001222: 889b ldrh r3, [r3, #4] + 8001224: f641 1263 movw r2, #6499 @ 0x1963 + 8001228: 4293 cmp r3, r2 + 800122a: d027 beq.n 800127c + { + if (regval & 0X20) + 800122c: 8cfb ldrh r3, [r7, #38] @ 0x26 + 800122e: f003 0320 and.w r3, r3, #32 + 8001232: 2b00 cmp r3, #0 + 8001234: d012 beq.n 800125c + { + if (lcddev.width < lcddev.height) /* ����X,Y */ + 8001236: 4b08 ldr r3, [pc, #32] @ (8001258 ) + 8001238: 881a ldrh r2, [r3, #0] + 800123a: 4b07 ldr r3, [pc, #28] @ (8001258 ) + 800123c: 885b ldrh r3, [r3, #2] + 800123e: 429a cmp r2, r3 + 8001240: d21c bcs.n 800127c + { + temp = lcddev.width; + 8001242: 4b05 ldr r3, [pc, #20] @ (8001258 ) + 8001244: 881b ldrh r3, [r3, #0] + 8001246: 847b strh r3, [r7, #34] @ 0x22 + lcddev.width = lcddev.height; + 8001248: 4b03 ldr r3, [pc, #12] @ (8001258 ) + 800124a: 885a ldrh r2, [r3, #2] + 800124c: 4b02 ldr r3, [pc, #8] @ (8001258 ) + 800124e: 801a strh r2, [r3, #0] + lcddev.height = temp; + 8001250: 4a01 ldr r2, [pc, #4] @ (8001258 ) + 8001252: 8c7b ldrh r3, [r7, #34] @ 0x22 + 8001254: 8053 strh r3, [r2, #2] + 8001256: e011 b.n 800127c + 8001258: 2000002c .word 0x2000002c + } + } + else + { + if (lcddev.width > lcddev.height) /* ����X,Y */ + 800125c: 4b9c ldr r3, [pc, #624] @ (80014d0 ) + 800125e: 881a ldrh r2, [r3, #0] + 8001260: 4b9b ldr r3, [pc, #620] @ (80014d0 ) + 8001262: 885b ldrh r3, [r3, #2] + 8001264: 429a cmp r2, r3 + 8001266: d909 bls.n 800127c + { + temp = lcddev.width; + 8001268: 4b99 ldr r3, [pc, #612] @ (80014d0 ) + 800126a: 881b ldrh r3, [r3, #0] + 800126c: 847b strh r3, [r7, #34] @ 0x22 + lcddev.width = lcddev.height; + 800126e: 4b98 ldr r3, [pc, #608] @ (80014d0 ) + 8001270: 885a ldrh r2, [r3, #2] + 8001272: 4b97 ldr r3, [pc, #604] @ (80014d0 ) + 8001274: 801a strh r2, [r3, #0] + lcddev.height = temp; + 8001276: 4a96 ldr r2, [pc, #600] @ (80014d0 ) + 8001278: 8c7b ldrh r3, [r7, #34] @ 0x22 + 800127a: 8053 strh r3, [r2, #2] + } + } + } + + /* ������ʾ����(����)��С */ + if (lcddev.id == 0X5510) + 800127c: 4b94 ldr r3, [pc, #592] @ (80014d0 ) + 800127e: 889b ldrh r3, [r3, #4] + 8001280: f245 5210 movw r2, #21776 @ 0x5510 + 8001284: 4293 cmp r3, r2 + 8001286: f040 81af bne.w 80015e8 + { + lcd_wr_regno(lcddev.setxcmd); + 800128a: 4b91 ldr r3, [pc, #580] @ (80014d0 ) + 800128c: 895b ldrh r3, [r3, #10] + 800128e: 83bb strh r3, [r7, #28] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8001290: 4b90 ldr r3, [pc, #576] @ (80014d4 ) + 8001292: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8001296: 611a str r2, [r3, #16] + LCD_CS(0); + 8001298: 4b8e ldr r3, [pc, #568] @ (80014d4 ) + 800129a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800129e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80012a0: 8bbb ldrh r3, [r7, #28] + 80012a2: b29a uxth r2, r3 + 80012a4: 4b8c ldr r3, [pc, #560] @ (80014d8 ) + 80012a6: 60da str r2, [r3, #12] + LCD_WR(0); + 80012a8: 4b8a ldr r3, [pc, #552] @ (80014d4 ) + 80012aa: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80012ae: 611a str r2, [r3, #16] + LCD_WR(1); + 80012b0: 4b88 ldr r3, [pc, #544] @ (80014d4 ) + 80012b2: 2280 movs r2, #128 @ 0x80 + 80012b4: 611a str r2, [r3, #16] + LCD_CS(1); + 80012b6: 4b87 ldr r3, [pc, #540] @ (80014d4 ) + 80012b8: f44f 7200 mov.w r2, #512 @ 0x200 + 80012bc: 611a str r2, [r3, #16] +} + 80012be: bf00 nop + lcd_wr_data(0); + 80012c0: 4b84 ldr r3, [pc, #528] @ (80014d4 ) + 80012c2: f44f 7280 mov.w r2, #256 @ 0x100 + 80012c6: 611a str r2, [r3, #16] + 80012c8: 4b82 ldr r3, [pc, #520] @ (80014d4 ) + 80012ca: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80012ce: 611a str r2, [r3, #16] + 80012d0: 4b81 ldr r3, [pc, #516] @ (80014d8 ) + 80012d2: 2200 movs r2, #0 + 80012d4: 60da str r2, [r3, #12] + 80012d6: 4b7f ldr r3, [pc, #508] @ (80014d4 ) + 80012d8: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80012dc: 611a str r2, [r3, #16] + 80012de: 4b7d ldr r3, [pc, #500] @ (80014d4 ) + 80012e0: 2280 movs r2, #128 @ 0x80 + 80012e2: 611a str r2, [r3, #16] + 80012e4: 4b7b ldr r3, [pc, #492] @ (80014d4 ) + 80012e6: f44f 7200 mov.w r2, #512 @ 0x200 + 80012ea: 611a str r2, [r3, #16] + lcd_wr_regno(lcddev.setxcmd + 1); + 80012ec: 4b78 ldr r3, [pc, #480] @ (80014d0 ) + 80012ee: 895b ldrh r3, [r3, #10] + 80012f0: 3301 adds r3, #1 + 80012f2: b29b uxth r3, r3 + 80012f4: 837b strh r3, [r7, #26] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80012f6: 4b77 ldr r3, [pc, #476] @ (80014d4 ) + 80012f8: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80012fc: 611a str r2, [r3, #16] + LCD_CS(0); + 80012fe: 4b75 ldr r3, [pc, #468] @ (80014d4 ) + 8001300: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001304: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8001306: 8b7b ldrh r3, [r7, #26] + 8001308: b29a uxth r2, r3 + 800130a: 4b73 ldr r3, [pc, #460] @ (80014d8 ) + 800130c: 60da str r2, [r3, #12] + LCD_WR(0); + 800130e: 4b71 ldr r3, [pc, #452] @ (80014d4 ) + 8001310: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001314: 611a str r2, [r3, #16] + LCD_WR(1); + 8001316: 4b6f ldr r3, [pc, #444] @ (80014d4 ) + 8001318: 2280 movs r2, #128 @ 0x80 + 800131a: 611a str r2, [r3, #16] + LCD_CS(1); + 800131c: 4b6d ldr r3, [pc, #436] @ (80014d4 ) + 800131e: f44f 7200 mov.w r2, #512 @ 0x200 + 8001322: 611a str r2, [r3, #16] +} + 8001324: bf00 nop + lcd_wr_data(0); + 8001326: 4b6b ldr r3, [pc, #428] @ (80014d4 ) + 8001328: f44f 7280 mov.w r2, #256 @ 0x100 + 800132c: 611a str r2, [r3, #16] + 800132e: 4b69 ldr r3, [pc, #420] @ (80014d4 ) + 8001330: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001334: 611a str r2, [r3, #16] + 8001336: 4b68 ldr r3, [pc, #416] @ (80014d8 ) + 8001338: 2200 movs r2, #0 + 800133a: 60da str r2, [r3, #12] + 800133c: 4b65 ldr r3, [pc, #404] @ (80014d4 ) + 800133e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001342: 611a str r2, [r3, #16] + 8001344: 4b63 ldr r3, [pc, #396] @ (80014d4 ) + 8001346: 2280 movs r2, #128 @ 0x80 + 8001348: 611a str r2, [r3, #16] + 800134a: 4b62 ldr r3, [pc, #392] @ (80014d4 ) + 800134c: f44f 7200 mov.w r2, #512 @ 0x200 + 8001350: 611a str r2, [r3, #16] + lcd_wr_regno(lcddev.setxcmd + 2); + 8001352: 4b5f ldr r3, [pc, #380] @ (80014d0 ) + 8001354: 895b ldrh r3, [r3, #10] + 8001356: 3302 adds r3, #2 + 8001358: b29b uxth r3, r3 + 800135a: 833b strh r3, [r7, #24] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800135c: 4b5d ldr r3, [pc, #372] @ (80014d4 ) + 800135e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8001362: 611a str r2, [r3, #16] + LCD_CS(0); + 8001364: 4b5b ldr r3, [pc, #364] @ (80014d4 ) + 8001366: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800136a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800136c: 8b3b ldrh r3, [r7, #24] + 800136e: b29a uxth r2, r3 + 8001370: 4b59 ldr r3, [pc, #356] @ (80014d8 ) + 8001372: 60da str r2, [r3, #12] + LCD_WR(0); + 8001374: 4b57 ldr r3, [pc, #348] @ (80014d4 ) + 8001376: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800137a: 611a str r2, [r3, #16] + LCD_WR(1); + 800137c: 4b55 ldr r3, [pc, #340] @ (80014d4 ) + 800137e: 2280 movs r2, #128 @ 0x80 + 8001380: 611a str r2, [r3, #16] + LCD_CS(1); + 8001382: 4b54 ldr r3, [pc, #336] @ (80014d4 ) + 8001384: f44f 7200 mov.w r2, #512 @ 0x200 + 8001388: 611a str r2, [r3, #16] +} + 800138a: bf00 nop + lcd_wr_data((lcddev.width - 1) >> 8); + 800138c: 4b51 ldr r3, [pc, #324] @ (80014d4 ) + 800138e: f44f 7280 mov.w r2, #256 @ 0x100 + 8001392: 611a str r2, [r3, #16] + 8001394: 4b4f ldr r3, [pc, #316] @ (80014d4 ) + 8001396: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800139a: 611a str r2, [r3, #16] + 800139c: 4b4c ldr r3, [pc, #304] @ (80014d0 ) + 800139e: 881b ldrh r3, [r3, #0] + 80013a0: 3b01 subs r3, #1 + 80013a2: 121a asrs r2, r3, #8 + 80013a4: 4b4c ldr r3, [pc, #304] @ (80014d8 ) + 80013a6: 60da str r2, [r3, #12] + 80013a8: 4b4a ldr r3, [pc, #296] @ (80014d4 ) + 80013aa: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80013ae: 611a str r2, [r3, #16] + 80013b0: 4b48 ldr r3, [pc, #288] @ (80014d4 ) + 80013b2: 2280 movs r2, #128 @ 0x80 + 80013b4: 611a str r2, [r3, #16] + 80013b6: 4b47 ldr r3, [pc, #284] @ (80014d4 ) + 80013b8: f44f 7200 mov.w r2, #512 @ 0x200 + 80013bc: 611a str r2, [r3, #16] + lcd_wr_regno(lcddev.setxcmd + 3); + 80013be: 4b44 ldr r3, [pc, #272] @ (80014d0 ) + 80013c0: 895b ldrh r3, [r3, #10] + 80013c2: 3303 adds r3, #3 + 80013c4: b29b uxth r3, r3 + 80013c6: 82fb strh r3, [r7, #22] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80013c8: 4b42 ldr r3, [pc, #264] @ (80014d4 ) + 80013ca: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80013ce: 611a str r2, [r3, #16] + LCD_CS(0); + 80013d0: 4b40 ldr r3, [pc, #256] @ (80014d4 ) + 80013d2: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80013d6: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80013d8: 8afb ldrh r3, [r7, #22] + 80013da: b29a uxth r2, r3 + 80013dc: 4b3e ldr r3, [pc, #248] @ (80014d8 ) + 80013de: 60da str r2, [r3, #12] + LCD_WR(0); + 80013e0: 4b3c ldr r3, [pc, #240] @ (80014d4 ) + 80013e2: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80013e6: 611a str r2, [r3, #16] + LCD_WR(1); + 80013e8: 4b3a ldr r3, [pc, #232] @ (80014d4 ) + 80013ea: 2280 movs r2, #128 @ 0x80 + 80013ec: 611a str r2, [r3, #16] + LCD_CS(1); + 80013ee: 4b39 ldr r3, [pc, #228] @ (80014d4 ) + 80013f0: f44f 7200 mov.w r2, #512 @ 0x200 + 80013f4: 611a str r2, [r3, #16] +} + 80013f6: bf00 nop + lcd_wr_data((lcddev.width - 1) & 0XFF); + 80013f8: 4b36 ldr r3, [pc, #216] @ (80014d4 ) + 80013fa: f44f 7280 mov.w r2, #256 @ 0x100 + 80013fe: 611a str r2, [r3, #16] + 8001400: 4b34 ldr r3, [pc, #208] @ (80014d4 ) + 8001402: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001406: 611a str r2, [r3, #16] + 8001408: 4b31 ldr r3, [pc, #196] @ (80014d0 ) + 800140a: 881b ldrh r3, [r3, #0] + 800140c: 3b01 subs r3, #1 + 800140e: 4a32 ldr r2, [pc, #200] @ (80014d8 ) + 8001410: b2db uxtb r3, r3 + 8001412: 60d3 str r3, [r2, #12] + 8001414: 4b2f ldr r3, [pc, #188] @ (80014d4 ) + 8001416: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800141a: 611a str r2, [r3, #16] + 800141c: 4b2d ldr r3, [pc, #180] @ (80014d4 ) + 800141e: 2280 movs r2, #128 @ 0x80 + 8001420: 611a str r2, [r3, #16] + 8001422: 4b2c ldr r3, [pc, #176] @ (80014d4 ) + 8001424: f44f 7200 mov.w r2, #512 @ 0x200 + 8001428: 611a str r2, [r3, #16] + lcd_wr_regno(lcddev.setycmd); + 800142a: 4b29 ldr r3, [pc, #164] @ (80014d0 ) + 800142c: 899b ldrh r3, [r3, #12] + 800142e: 82bb strh r3, [r7, #20] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8001430: 4b28 ldr r3, [pc, #160] @ (80014d4 ) + 8001432: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8001436: 611a str r2, [r3, #16] + LCD_CS(0); + 8001438: 4b26 ldr r3, [pc, #152] @ (80014d4 ) + 800143a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800143e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8001440: 8abb ldrh r3, [r7, #20] + 8001442: b29a uxth r2, r3 + 8001444: 4b24 ldr r3, [pc, #144] @ (80014d8 ) + 8001446: 60da str r2, [r3, #12] + LCD_WR(0); + 8001448: 4b22 ldr r3, [pc, #136] @ (80014d4 ) + 800144a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800144e: 611a str r2, [r3, #16] + LCD_WR(1); + 8001450: 4b20 ldr r3, [pc, #128] @ (80014d4 ) + 8001452: 2280 movs r2, #128 @ 0x80 + 8001454: 611a str r2, [r3, #16] + LCD_CS(1); + 8001456: 4b1f ldr r3, [pc, #124] @ (80014d4 ) + 8001458: f44f 7200 mov.w r2, #512 @ 0x200 + 800145c: 611a str r2, [r3, #16] +} + 800145e: bf00 nop + lcd_wr_data(0); + 8001460: 4b1c ldr r3, [pc, #112] @ (80014d4 ) + 8001462: f44f 7280 mov.w r2, #256 @ 0x100 + 8001466: 611a str r2, [r3, #16] + 8001468: 4b1a ldr r3, [pc, #104] @ (80014d4 ) + 800146a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800146e: 611a str r2, [r3, #16] + 8001470: 4b19 ldr r3, [pc, #100] @ (80014d8 ) + 8001472: 2200 movs r2, #0 + 8001474: 60da str r2, [r3, #12] + 8001476: 4b17 ldr r3, [pc, #92] @ (80014d4 ) + 8001478: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800147c: 611a str r2, [r3, #16] + 800147e: 4b15 ldr r3, [pc, #84] @ (80014d4 ) + 8001480: 2280 movs r2, #128 @ 0x80 + 8001482: 611a str r2, [r3, #16] + 8001484: 4b13 ldr r3, [pc, #76] @ (80014d4 ) + 8001486: f44f 7200 mov.w r2, #512 @ 0x200 + 800148a: 611a str r2, [r3, #16] + lcd_wr_regno(lcddev.setycmd + 1); + 800148c: 4b10 ldr r3, [pc, #64] @ (80014d0 ) + 800148e: 899b ldrh r3, [r3, #12] + 8001490: 3301 adds r3, #1 + 8001492: b29b uxth r3, r3 + 8001494: 827b strh r3, [r7, #18] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8001496: 4b0f ldr r3, [pc, #60] @ (80014d4 ) + 8001498: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800149c: 611a str r2, [r3, #16] + LCD_CS(0); + 800149e: 4b0d ldr r3, [pc, #52] @ (80014d4 ) + 80014a0: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80014a4: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80014a6: 8a7b ldrh r3, [r7, #18] + 80014a8: b29a uxth r2, r3 + 80014aa: 4b0b ldr r3, [pc, #44] @ (80014d8 ) + 80014ac: 60da str r2, [r3, #12] + LCD_WR(0); + 80014ae: 4b09 ldr r3, [pc, #36] @ (80014d4 ) + 80014b0: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80014b4: 611a str r2, [r3, #16] + LCD_WR(1); + 80014b6: 4b07 ldr r3, [pc, #28] @ (80014d4 ) + 80014b8: 2280 movs r2, #128 @ 0x80 + 80014ba: 611a str r2, [r3, #16] + LCD_CS(1); + 80014bc: 4b05 ldr r3, [pc, #20] @ (80014d4 ) + 80014be: f44f 7200 mov.w r2, #512 @ 0x200 + 80014c2: 611a str r2, [r3, #16] +} + 80014c4: bf00 nop + lcd_wr_data(0); + 80014c6: 4b03 ldr r3, [pc, #12] @ (80014d4 ) + 80014c8: f44f 7280 mov.w r2, #256 @ 0x100 + 80014cc: 611a str r2, [r3, #16] + 80014ce: e005 b.n 80014dc + 80014d0: 2000002c .word 0x2000002c + 80014d4: 40011000 .word 0x40011000 + 80014d8: 40010c00 .word 0x40010c00 + 80014dc: 4b3f ldr r3, [pc, #252] @ (80015dc ) + 80014de: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80014e2: 611a str r2, [r3, #16] + 80014e4: 4b3e ldr r3, [pc, #248] @ (80015e0 ) + 80014e6: 2200 movs r2, #0 + 80014e8: 60da str r2, [r3, #12] + 80014ea: 4b3c ldr r3, [pc, #240] @ (80015dc ) + 80014ec: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80014f0: 611a str r2, [r3, #16] + 80014f2: 4b3a ldr r3, [pc, #232] @ (80015dc ) + 80014f4: 2280 movs r2, #128 @ 0x80 + 80014f6: 611a str r2, [r3, #16] + 80014f8: 4b38 ldr r3, [pc, #224] @ (80015dc ) + 80014fa: f44f 7200 mov.w r2, #512 @ 0x200 + 80014fe: 611a str r2, [r3, #16] + lcd_wr_regno(lcddev.setycmd + 2); + 8001500: 4b38 ldr r3, [pc, #224] @ (80015e4 ) + 8001502: 899b ldrh r3, [r3, #12] + 8001504: 3302 adds r3, #2 + 8001506: b29b uxth r3, r3 + 8001508: 823b strh r3, [r7, #16] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800150a: 4b34 ldr r3, [pc, #208] @ (80015dc ) + 800150c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8001510: 611a str r2, [r3, #16] + LCD_CS(0); + 8001512: 4b32 ldr r3, [pc, #200] @ (80015dc ) + 8001514: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001518: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800151a: 8a3b ldrh r3, [r7, #16] + 800151c: b29a uxth r2, r3 + 800151e: 4b30 ldr r3, [pc, #192] @ (80015e0 ) + 8001520: 60da str r2, [r3, #12] + LCD_WR(0); + 8001522: 4b2e ldr r3, [pc, #184] @ (80015dc ) + 8001524: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001528: 611a str r2, [r3, #16] + LCD_WR(1); + 800152a: 4b2c ldr r3, [pc, #176] @ (80015dc ) + 800152c: 2280 movs r2, #128 @ 0x80 + 800152e: 611a str r2, [r3, #16] + LCD_CS(1); + 8001530: 4b2a ldr r3, [pc, #168] @ (80015dc ) + 8001532: f44f 7200 mov.w r2, #512 @ 0x200 + 8001536: 611a str r2, [r3, #16] +} + 8001538: bf00 nop + lcd_wr_data((lcddev.height - 1) >> 8); + 800153a: 4b28 ldr r3, [pc, #160] @ (80015dc ) + 800153c: f44f 7280 mov.w r2, #256 @ 0x100 + 8001540: 611a str r2, [r3, #16] + 8001542: 4b26 ldr r3, [pc, #152] @ (80015dc ) + 8001544: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001548: 611a str r2, [r3, #16] + 800154a: 4b26 ldr r3, [pc, #152] @ (80015e4 ) + 800154c: 885b ldrh r3, [r3, #2] + 800154e: 3b01 subs r3, #1 + 8001550: 121a asrs r2, r3, #8 + 8001552: 4b23 ldr r3, [pc, #140] @ (80015e0 ) + 8001554: 60da str r2, [r3, #12] + 8001556: 4b21 ldr r3, [pc, #132] @ (80015dc ) + 8001558: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800155c: 611a str r2, [r3, #16] + 800155e: 4b1f ldr r3, [pc, #124] @ (80015dc ) + 8001560: 2280 movs r2, #128 @ 0x80 + 8001562: 611a str r2, [r3, #16] + 8001564: 4b1d ldr r3, [pc, #116] @ (80015dc ) + 8001566: f44f 7200 mov.w r2, #512 @ 0x200 + 800156a: 611a str r2, [r3, #16] + lcd_wr_regno(lcddev.setycmd + 3); + 800156c: 4b1d ldr r3, [pc, #116] @ (80015e4 ) + 800156e: 899b ldrh r3, [r3, #12] + 8001570: 3303 adds r3, #3 + 8001572: b29b uxth r3, r3 + 8001574: 81fb strh r3, [r7, #14] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8001576: 4b19 ldr r3, [pc, #100] @ (80015dc ) + 8001578: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800157c: 611a str r2, [r3, #16] + LCD_CS(0); + 800157e: 4b17 ldr r3, [pc, #92] @ (80015dc ) + 8001580: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001584: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8001586: 89fb ldrh r3, [r7, #14] + 8001588: b29a uxth r2, r3 + 800158a: 4b15 ldr r3, [pc, #84] @ (80015e0 ) + 800158c: 60da str r2, [r3, #12] + LCD_WR(0); + 800158e: 4b13 ldr r3, [pc, #76] @ (80015dc ) + 8001590: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001594: 611a str r2, [r3, #16] + LCD_WR(1); + 8001596: 4b11 ldr r3, [pc, #68] @ (80015dc ) + 8001598: 2280 movs r2, #128 @ 0x80 + 800159a: 611a str r2, [r3, #16] + LCD_CS(1); + 800159c: 4b0f ldr r3, [pc, #60] @ (80015dc ) + 800159e: f44f 7200 mov.w r2, #512 @ 0x200 + 80015a2: 611a str r2, [r3, #16] +} + 80015a4: bf00 nop + lcd_wr_data((lcddev.height - 1) & 0XFF); + 80015a6: 4b0d ldr r3, [pc, #52] @ (80015dc ) + 80015a8: f44f 7280 mov.w r2, #256 @ 0x100 + 80015ac: 611a str r2, [r3, #16] + 80015ae: 4b0b ldr r3, [pc, #44] @ (80015dc ) + 80015b0: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80015b4: 611a str r2, [r3, #16] + 80015b6: 4b0b ldr r3, [pc, #44] @ (80015e4 ) + 80015b8: 885b ldrh r3, [r3, #2] + 80015ba: 3b01 subs r3, #1 + 80015bc: 4a08 ldr r2, [pc, #32] @ (80015e0 ) + 80015be: b2db uxtb r3, r3 + 80015c0: 60d3 str r3, [r2, #12] + 80015c2: 4b06 ldr r3, [pc, #24] @ (80015dc ) + 80015c4: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80015c8: 611a str r2, [r3, #16] + 80015ca: 4b04 ldr r3, [pc, #16] @ (80015dc ) + 80015cc: 2280 movs r2, #128 @ 0x80 + 80015ce: 611a str r2, [r3, #16] + 80015d0: 4b02 ldr r3, [pc, #8] @ (80015dc ) + 80015d2: f44f 7200 mov.w r2, #512 @ 0x200 + 80015d6: 611a str r2, [r3, #16] + lcd_wr_data(0); + lcd_wr_data(0); + lcd_wr_data((lcddev.height - 1) >> 8); + lcd_wr_data((lcddev.height - 1) & 0XFF); + } +} + 80015d8: e0f8 b.n 80017cc + 80015da: bf00 nop + 80015dc: 40011000 .word 0x40011000 + 80015e0: 40010c00 .word 0x40010c00 + 80015e4: 2000002c .word 0x2000002c + lcd_wr_regno(lcddev.setxcmd); + 80015e8: 4b7a ldr r3, [pc, #488] @ (80017d4 ) + 80015ea: 895b ldrh r3, [r3, #10] + 80015ec: 843b strh r3, [r7, #32] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80015ee: 4b7a ldr r3, [pc, #488] @ (80017d8 ) + 80015f0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80015f4: 611a str r2, [r3, #16] + LCD_CS(0); + 80015f6: 4b78 ldr r3, [pc, #480] @ (80017d8 ) + 80015f8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80015fc: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80015fe: 8c3b ldrh r3, [r7, #32] + 8001600: b29a uxth r2, r3 + 8001602: 4b76 ldr r3, [pc, #472] @ (80017dc ) + 8001604: 60da str r2, [r3, #12] + LCD_WR(0); + 8001606: 4b74 ldr r3, [pc, #464] @ (80017d8 ) + 8001608: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800160c: 611a str r2, [r3, #16] + LCD_WR(1); + 800160e: 4b72 ldr r3, [pc, #456] @ (80017d8 ) + 8001610: 2280 movs r2, #128 @ 0x80 + 8001612: 611a str r2, [r3, #16] + LCD_CS(1); + 8001614: 4b70 ldr r3, [pc, #448] @ (80017d8 ) + 8001616: f44f 7200 mov.w r2, #512 @ 0x200 + 800161a: 611a str r2, [r3, #16] +} + 800161c: bf00 nop + lcd_wr_data(0); + 800161e: 4b6e ldr r3, [pc, #440] @ (80017d8 ) + 8001620: f44f 7280 mov.w r2, #256 @ 0x100 + 8001624: 611a str r2, [r3, #16] + 8001626: 4b6c ldr r3, [pc, #432] @ (80017d8 ) + 8001628: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800162c: 611a str r2, [r3, #16] + 800162e: 4b6b ldr r3, [pc, #428] @ (80017dc ) + 8001630: 2200 movs r2, #0 + 8001632: 60da str r2, [r3, #12] + 8001634: 4b68 ldr r3, [pc, #416] @ (80017d8 ) + 8001636: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800163a: 611a str r2, [r3, #16] + 800163c: 4b66 ldr r3, [pc, #408] @ (80017d8 ) + 800163e: 2280 movs r2, #128 @ 0x80 + 8001640: 611a str r2, [r3, #16] + 8001642: 4b65 ldr r3, [pc, #404] @ (80017d8 ) + 8001644: f44f 7200 mov.w r2, #512 @ 0x200 + 8001648: 611a str r2, [r3, #16] + lcd_wr_data(0); + 800164a: 4b63 ldr r3, [pc, #396] @ (80017d8 ) + 800164c: f44f 7280 mov.w r2, #256 @ 0x100 + 8001650: 611a str r2, [r3, #16] + 8001652: 4b61 ldr r3, [pc, #388] @ (80017d8 ) + 8001654: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001658: 611a str r2, [r3, #16] + 800165a: 4b60 ldr r3, [pc, #384] @ (80017dc ) + 800165c: 2200 movs r2, #0 + 800165e: 60da str r2, [r3, #12] + 8001660: 4b5d ldr r3, [pc, #372] @ (80017d8 ) + 8001662: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001666: 611a str r2, [r3, #16] + 8001668: 4b5b ldr r3, [pc, #364] @ (80017d8 ) + 800166a: 2280 movs r2, #128 @ 0x80 + 800166c: 611a str r2, [r3, #16] + 800166e: 4b5a ldr r3, [pc, #360] @ (80017d8 ) + 8001670: f44f 7200 mov.w r2, #512 @ 0x200 + 8001674: 611a str r2, [r3, #16] + lcd_wr_data((lcddev.width - 1) >> 8); + 8001676: 4b58 ldr r3, [pc, #352] @ (80017d8 ) + 8001678: f44f 7280 mov.w r2, #256 @ 0x100 + 800167c: 611a str r2, [r3, #16] + 800167e: 4b56 ldr r3, [pc, #344] @ (80017d8 ) + 8001680: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001684: 611a str r2, [r3, #16] + 8001686: 4b53 ldr r3, [pc, #332] @ (80017d4 ) + 8001688: 881b ldrh r3, [r3, #0] + 800168a: 3b01 subs r3, #1 + 800168c: 121a asrs r2, r3, #8 + 800168e: 4b53 ldr r3, [pc, #332] @ (80017dc ) + 8001690: 60da str r2, [r3, #12] + 8001692: 4b51 ldr r3, [pc, #324] @ (80017d8 ) + 8001694: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001698: 611a str r2, [r3, #16] + 800169a: 4b4f ldr r3, [pc, #316] @ (80017d8 ) + 800169c: 2280 movs r2, #128 @ 0x80 + 800169e: 611a str r2, [r3, #16] + 80016a0: 4b4d ldr r3, [pc, #308] @ (80017d8 ) + 80016a2: f44f 7200 mov.w r2, #512 @ 0x200 + 80016a6: 611a str r2, [r3, #16] + lcd_wr_data((lcddev.width - 1) & 0XFF); + 80016a8: 4b4b ldr r3, [pc, #300] @ (80017d8 ) + 80016aa: f44f 7280 mov.w r2, #256 @ 0x100 + 80016ae: 611a str r2, [r3, #16] + 80016b0: 4b49 ldr r3, [pc, #292] @ (80017d8 ) + 80016b2: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80016b6: 611a str r2, [r3, #16] + 80016b8: 4b46 ldr r3, [pc, #280] @ (80017d4 ) + 80016ba: 881b ldrh r3, [r3, #0] + 80016bc: 3b01 subs r3, #1 + 80016be: 4a47 ldr r2, [pc, #284] @ (80017dc ) + 80016c0: b2db uxtb r3, r3 + 80016c2: 60d3 str r3, [r2, #12] + 80016c4: 4b44 ldr r3, [pc, #272] @ (80017d8 ) + 80016c6: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80016ca: 611a str r2, [r3, #16] + 80016cc: 4b42 ldr r3, [pc, #264] @ (80017d8 ) + 80016ce: 2280 movs r2, #128 @ 0x80 + 80016d0: 611a str r2, [r3, #16] + 80016d2: 4b41 ldr r3, [pc, #260] @ (80017d8 ) + 80016d4: f44f 7200 mov.w r2, #512 @ 0x200 + 80016d8: 611a str r2, [r3, #16] + lcd_wr_regno(lcddev.setycmd); + 80016da: 4b3e ldr r3, [pc, #248] @ (80017d4 ) + 80016dc: 899b ldrh r3, [r3, #12] + 80016de: 83fb strh r3, [r7, #30] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80016e0: 4b3d ldr r3, [pc, #244] @ (80017d8 ) + 80016e2: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80016e6: 611a str r2, [r3, #16] + LCD_CS(0); + 80016e8: 4b3b ldr r3, [pc, #236] @ (80017d8 ) + 80016ea: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80016ee: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80016f0: 8bfb ldrh r3, [r7, #30] + 80016f2: b29a uxth r2, r3 + 80016f4: 4b39 ldr r3, [pc, #228] @ (80017dc ) + 80016f6: 60da str r2, [r3, #12] + LCD_WR(0); + 80016f8: 4b37 ldr r3, [pc, #220] @ (80017d8 ) + 80016fa: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80016fe: 611a str r2, [r3, #16] + LCD_WR(1); + 8001700: 4b35 ldr r3, [pc, #212] @ (80017d8 ) + 8001702: 2280 movs r2, #128 @ 0x80 + 8001704: 611a str r2, [r3, #16] + LCD_CS(1); + 8001706: 4b34 ldr r3, [pc, #208] @ (80017d8 ) + 8001708: f44f 7200 mov.w r2, #512 @ 0x200 + 800170c: 611a str r2, [r3, #16] +} + 800170e: bf00 nop + lcd_wr_data(0); + 8001710: 4b31 ldr r3, [pc, #196] @ (80017d8 ) + 8001712: f44f 7280 mov.w r2, #256 @ 0x100 + 8001716: 611a str r2, [r3, #16] + 8001718: 4b2f ldr r3, [pc, #188] @ (80017d8 ) + 800171a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800171e: 611a str r2, [r3, #16] + 8001720: 4b2e ldr r3, [pc, #184] @ (80017dc ) + 8001722: 2200 movs r2, #0 + 8001724: 60da str r2, [r3, #12] + 8001726: 4b2c ldr r3, [pc, #176] @ (80017d8 ) + 8001728: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800172c: 611a str r2, [r3, #16] + 800172e: 4b2a ldr r3, [pc, #168] @ (80017d8 ) + 8001730: 2280 movs r2, #128 @ 0x80 + 8001732: 611a str r2, [r3, #16] + 8001734: 4b28 ldr r3, [pc, #160] @ (80017d8 ) + 8001736: f44f 7200 mov.w r2, #512 @ 0x200 + 800173a: 611a str r2, [r3, #16] + lcd_wr_data(0); + 800173c: 4b26 ldr r3, [pc, #152] @ (80017d8 ) + 800173e: f44f 7280 mov.w r2, #256 @ 0x100 + 8001742: 611a str r2, [r3, #16] + 8001744: 4b24 ldr r3, [pc, #144] @ (80017d8 ) + 8001746: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800174a: 611a str r2, [r3, #16] + 800174c: 4b23 ldr r3, [pc, #140] @ (80017dc ) + 800174e: 2200 movs r2, #0 + 8001750: 60da str r2, [r3, #12] + 8001752: 4b21 ldr r3, [pc, #132] @ (80017d8 ) + 8001754: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001758: 611a str r2, [r3, #16] + 800175a: 4b1f ldr r3, [pc, #124] @ (80017d8 ) + 800175c: 2280 movs r2, #128 @ 0x80 + 800175e: 611a str r2, [r3, #16] + 8001760: 4b1d ldr r3, [pc, #116] @ (80017d8 ) + 8001762: f44f 7200 mov.w r2, #512 @ 0x200 + 8001766: 611a str r2, [r3, #16] + lcd_wr_data((lcddev.height - 1) >> 8); + 8001768: 4b1b ldr r3, [pc, #108] @ (80017d8 ) + 800176a: f44f 7280 mov.w r2, #256 @ 0x100 + 800176e: 611a str r2, [r3, #16] + 8001770: 4b19 ldr r3, [pc, #100] @ (80017d8 ) + 8001772: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001776: 611a str r2, [r3, #16] + 8001778: 4b16 ldr r3, [pc, #88] @ (80017d4 ) + 800177a: 885b ldrh r3, [r3, #2] + 800177c: 3b01 subs r3, #1 + 800177e: 121a asrs r2, r3, #8 + 8001780: 4b16 ldr r3, [pc, #88] @ (80017dc ) + 8001782: 60da str r2, [r3, #12] + 8001784: 4b14 ldr r3, [pc, #80] @ (80017d8 ) + 8001786: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800178a: 611a str r2, [r3, #16] + 800178c: 4b12 ldr r3, [pc, #72] @ (80017d8 ) + 800178e: 2280 movs r2, #128 @ 0x80 + 8001790: 611a str r2, [r3, #16] + 8001792: 4b11 ldr r3, [pc, #68] @ (80017d8 ) + 8001794: f44f 7200 mov.w r2, #512 @ 0x200 + 8001798: 611a str r2, [r3, #16] + lcd_wr_data((lcddev.height - 1) & 0XFF); + 800179a: 4b0f ldr r3, [pc, #60] @ (80017d8 ) + 800179c: f44f 7280 mov.w r2, #256 @ 0x100 + 80017a0: 611a str r2, [r3, #16] + 80017a2: 4b0d ldr r3, [pc, #52] @ (80017d8 ) + 80017a4: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80017a8: 611a str r2, [r3, #16] + 80017aa: 4b0a ldr r3, [pc, #40] @ (80017d4 ) + 80017ac: 885b ldrh r3, [r3, #2] + 80017ae: 3b01 subs r3, #1 + 80017b0: 4a0a ldr r2, [pc, #40] @ (80017dc ) + 80017b2: b2db uxtb r3, r3 + 80017b4: 60d3 str r3, [r2, #12] + 80017b6: 4b08 ldr r3, [pc, #32] @ (80017d8 ) + 80017b8: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80017bc: 611a str r2, [r3, #16] + 80017be: 4b06 ldr r3, [pc, #24] @ (80017d8 ) + 80017c0: 2280 movs r2, #128 @ 0x80 + 80017c2: 611a str r2, [r3, #16] + 80017c4: 4b04 ldr r3, [pc, #16] @ (80017d8 ) + 80017c6: f44f 7200 mov.w r2, #512 @ 0x200 + 80017ca: 611a str r2, [r3, #16] +} + 80017cc: bf00 nop + 80017ce: 3728 adds r7, #40 @ 0x28 + 80017d0: 46bd mov sp, r7 + 80017d2: bd80 pop {r7, pc} + 80017d4: 2000002c .word 0x2000002c + 80017d8: 40011000 .word 0x40011000 + 80017dc: 40010c00 .word 0x40010c00 + +080017e0 : + * @param x,y: ���� + * @param color: �����ɫ(32λ��ɫ,�������LTDC) + * @retval �� + */ +void lcd_draw_point(uint16_t x, uint16_t y, uint32_t color) +{ + 80017e0: b580 push {r7, lr} + 80017e2: b084 sub sp, #16 + 80017e4: af00 add r7, sp, #0 + 80017e6: 4603 mov r3, r0 + 80017e8: 603a str r2, [r7, #0] + 80017ea: 80fb strh r3, [r7, #6] + 80017ec: 460b mov r3, r1 + 80017ee: 80bb strh r3, [r7, #4] + lcd_set_cursor(x, y); /* ���ù��λ�� */ + 80017f0: 88ba ldrh r2, [r7, #4] + 80017f2: 88fb ldrh r3, [r7, #6] + 80017f4: 4611 mov r1, r2 + 80017f6: 4618 mov r0, r3 + 80017f8: f7ff f952 bl 8000aa0 + lcd_wr_regno(lcddev.wramcmd); + 80017fc: 4b1a ldr r3, [pc, #104] @ (8001868 ) + 80017fe: 891b ldrh r3, [r3, #8] + 8001800: 81fb strh r3, [r7, #14] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8001802: 4b1a ldr r3, [pc, #104] @ (800186c ) + 8001804: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8001808: 611a str r2, [r3, #16] + LCD_CS(0); + 800180a: 4b18 ldr r3, [pc, #96] @ (800186c ) + 800180c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001810: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8001812: 89fb ldrh r3, [r7, #14] + 8001814: b29a uxth r2, r3 + 8001816: 4b16 ldr r3, [pc, #88] @ (8001870 ) + 8001818: 60da str r2, [r3, #12] + LCD_WR(0); + 800181a: 4b14 ldr r3, [pc, #80] @ (800186c ) + 800181c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001820: 611a str r2, [r3, #16] + LCD_WR(1); + 8001822: 4b12 ldr r3, [pc, #72] @ (800186c ) + 8001824: 2280 movs r2, #128 @ 0x80 + 8001826: 611a str r2, [r3, #16] + LCD_CS(1); + 8001828: 4b10 ldr r3, [pc, #64] @ (800186c ) + 800182a: f44f 7200 mov.w r2, #512 @ 0x200 + 800182e: 611a str r2, [r3, #16] +} + 8001830: bf00 nop +} + 8001832: bf00 nop + lcd_write_ram_prepare(); /* ��ʼд��GRAM */ + lcd_wr_data(color); + 8001834: 4b0d ldr r3, [pc, #52] @ (800186c ) + 8001836: f44f 7280 mov.w r2, #256 @ 0x100 + 800183a: 611a str r2, [r3, #16] + 800183c: 4b0b ldr r3, [pc, #44] @ (800186c ) + 800183e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001842: 611a str r2, [r3, #16] + 8001844: 4a0a ldr r2, [pc, #40] @ (8001870 ) + 8001846: 683b ldr r3, [r7, #0] + 8001848: 60d3 str r3, [r2, #12] + 800184a: 4b08 ldr r3, [pc, #32] @ (800186c ) + 800184c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001850: 611a str r2, [r3, #16] + 8001852: 4b06 ldr r3, [pc, #24] @ (800186c ) + 8001854: 2280 movs r2, #128 @ 0x80 + 8001856: 611a str r2, [r3, #16] + 8001858: 4b04 ldr r3, [pc, #16] @ (800186c ) + 800185a: f44f 7200 mov.w r2, #512 @ 0x200 + 800185e: 611a str r2, [r3, #16] +} + 8001860: bf00 nop + 8001862: 3710 adds r7, #16 + 8001864: 46bd mov sp, r7 + 8001866: bd80 pop {r7, pc} + 8001868: 2000002c .word 0x2000002c + 800186c: 40011000 .word 0x40011000 + 8001870: 40010c00 .word 0x40010c00 + 8001874: 00000000 .word 0x00000000 + +08001878 : + * @brief SSD1963�����������ú��� + * @param pwm: ����ȼ�,0~100.Խ��Խ��. + * @retval �� + */ +void lcd_ssd_backlight_set(uint8_t pwm) +{ + 8001878: b590 push {r4, r7, lr} + 800187a: b085 sub sp, #20 + 800187c: af00 add r7, sp, #0 + 800187e: 4603 mov r3, r0 + 8001880: 71fb strb r3, [r7, #7] + 8001882: 23be movs r3, #190 @ 0xbe + 8001884: 81fb strh r3, [r7, #14] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8001886: 4b5a ldr r3, [pc, #360] @ (80019f0 ) + 8001888: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800188c: 611a str r2, [r3, #16] + LCD_CS(0); + 800188e: 4b58 ldr r3, [pc, #352] @ (80019f0 ) + 8001890: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001894: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8001896: 89fb ldrh r3, [r7, #14] + 8001898: b29a uxth r2, r3 + 800189a: 4b56 ldr r3, [pc, #344] @ (80019f4 ) + 800189c: 60da str r2, [r3, #12] + LCD_WR(0); + 800189e: 4b54 ldr r3, [pc, #336] @ (80019f0 ) + 80018a0: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80018a4: 611a str r2, [r3, #16] + LCD_WR(1); + 80018a6: 4b52 ldr r3, [pc, #328] @ (80019f0 ) + 80018a8: 2280 movs r2, #128 @ 0x80 + 80018aa: 611a str r2, [r3, #16] + LCD_CS(1); + 80018ac: 4b50 ldr r3, [pc, #320] @ (80019f0 ) + 80018ae: f44f 7200 mov.w r2, #512 @ 0x200 + 80018b2: 611a str r2, [r3, #16] +} + 80018b4: bf00 nop + lcd_wr_regno(0xBE); /* ����PWM��� */ + lcd_wr_data(0x05); /* 1����PWMƵ�� */ + 80018b6: 4b4e ldr r3, [pc, #312] @ (80019f0 ) + 80018b8: f44f 7280 mov.w r2, #256 @ 0x100 + 80018bc: 611a str r2, [r3, #16] + 80018be: 4b4c ldr r3, [pc, #304] @ (80019f0 ) + 80018c0: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80018c4: 611a str r2, [r3, #16] + 80018c6: 4b4b ldr r3, [pc, #300] @ (80019f4 ) + 80018c8: 2205 movs r2, #5 + 80018ca: 60da str r2, [r3, #12] + 80018cc: 4b48 ldr r3, [pc, #288] @ (80019f0 ) + 80018ce: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80018d2: 611a str r2, [r3, #16] + 80018d4: 4b46 ldr r3, [pc, #280] @ (80019f0 ) + 80018d6: 2280 movs r2, #128 @ 0x80 + 80018d8: 611a str r2, [r3, #16] + 80018da: 4b45 ldr r3, [pc, #276] @ (80019f0 ) + 80018dc: f44f 7200 mov.w r2, #512 @ 0x200 + 80018e0: 611a str r2, [r3, #16] + lcd_wr_data(pwm * 2.55); /* 2����PWMռ�ձ� */ + 80018e2: 4b43 ldr r3, [pc, #268] @ (80019f0 ) + 80018e4: f44f 7280 mov.w r2, #256 @ 0x100 + 80018e8: 611a str r2, [r3, #16] + 80018ea: 4b41 ldr r3, [pc, #260] @ (80019f0 ) + 80018ec: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80018f0: 611a str r2, [r3, #16] + 80018f2: 79fb ldrb r3, [r7, #7] + 80018f4: 4618 mov r0, r3 + 80018f6: f7fe ff13 bl 8000720 <__aeabi_i2d> + 80018fa: a33b add r3, pc, #236 @ (adr r3, 80019e8 ) + 80018fc: e9d3 2300 ldrd r2, r3, [r3] + 8001900: f7fe fc92 bl 8000228 <__aeabi_dmul> + 8001904: 4602 mov r2, r0 + 8001906: 460b mov r3, r1 + 8001908: 4c3a ldr r4, [pc, #232] @ (80019f4 ) + 800190a: 4610 mov r0, r2 + 800190c: 4619 mov r1, r3 + 800190e: f7fe ff71 bl 80007f4 <__aeabi_d2uiz> + 8001912: 4603 mov r3, r0 + 8001914: 60e3 str r3, [r4, #12] + 8001916: 4b36 ldr r3, [pc, #216] @ (80019f0 ) + 8001918: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800191c: 611a str r2, [r3, #16] + 800191e: 4b34 ldr r3, [pc, #208] @ (80019f0 ) + 8001920: 2280 movs r2, #128 @ 0x80 + 8001922: 611a str r2, [r3, #16] + 8001924: 4b32 ldr r3, [pc, #200] @ (80019f0 ) + 8001926: f44f 7200 mov.w r2, #512 @ 0x200 + 800192a: 611a str r2, [r3, #16] + lcd_wr_data(0x01); /* 3����C */ + 800192c: 4b30 ldr r3, [pc, #192] @ (80019f0 ) + 800192e: f44f 7280 mov.w r2, #256 @ 0x100 + 8001932: 611a str r2, [r3, #16] + 8001934: 4b2e ldr r3, [pc, #184] @ (80019f0 ) + 8001936: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800193a: 611a str r2, [r3, #16] + 800193c: 4b2d ldr r3, [pc, #180] @ (80019f4 ) + 800193e: 2201 movs r2, #1 + 8001940: 60da str r2, [r3, #12] + 8001942: 4b2b ldr r3, [pc, #172] @ (80019f0 ) + 8001944: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001948: 611a str r2, [r3, #16] + 800194a: 4b29 ldr r3, [pc, #164] @ (80019f0 ) + 800194c: 2280 movs r2, #128 @ 0x80 + 800194e: 611a str r2, [r3, #16] + 8001950: 4b27 ldr r3, [pc, #156] @ (80019f0 ) + 8001952: f44f 7200 mov.w r2, #512 @ 0x200 + 8001956: 611a str r2, [r3, #16] + lcd_wr_data(0xFF); /* 4����D */ + 8001958: 4b25 ldr r3, [pc, #148] @ (80019f0 ) + 800195a: f44f 7280 mov.w r2, #256 @ 0x100 + 800195e: 611a str r2, [r3, #16] + 8001960: 4b23 ldr r3, [pc, #140] @ (80019f0 ) + 8001962: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001966: 611a str r2, [r3, #16] + 8001968: 4b22 ldr r3, [pc, #136] @ (80019f4 ) + 800196a: 22ff movs r2, #255 @ 0xff + 800196c: 60da str r2, [r3, #12] + 800196e: 4b20 ldr r3, [pc, #128] @ (80019f0 ) + 8001970: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001974: 611a str r2, [r3, #16] + 8001976: 4b1e ldr r3, [pc, #120] @ (80019f0 ) + 8001978: 2280 movs r2, #128 @ 0x80 + 800197a: 611a str r2, [r3, #16] + 800197c: 4b1c ldr r3, [pc, #112] @ (80019f0 ) + 800197e: f44f 7200 mov.w r2, #512 @ 0x200 + 8001982: 611a str r2, [r3, #16] + lcd_wr_data(0x00); /* 5����E */ + 8001984: 4b1a ldr r3, [pc, #104] @ (80019f0 ) + 8001986: f44f 7280 mov.w r2, #256 @ 0x100 + 800198a: 611a str r2, [r3, #16] + 800198c: 4b18 ldr r3, [pc, #96] @ (80019f0 ) + 800198e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001992: 611a str r2, [r3, #16] + 8001994: 4b17 ldr r3, [pc, #92] @ (80019f4 ) + 8001996: 2200 movs r2, #0 + 8001998: 60da str r2, [r3, #12] + 800199a: 4b15 ldr r3, [pc, #84] @ (80019f0 ) + 800199c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80019a0: 611a str r2, [r3, #16] + 80019a2: 4b13 ldr r3, [pc, #76] @ (80019f0 ) + 80019a4: 2280 movs r2, #128 @ 0x80 + 80019a6: 611a str r2, [r3, #16] + 80019a8: 4b11 ldr r3, [pc, #68] @ (80019f0 ) + 80019aa: f44f 7200 mov.w r2, #512 @ 0x200 + 80019ae: 611a str r2, [r3, #16] + lcd_wr_data(0x00); /* 6����F */ + 80019b0: 4b0f ldr r3, [pc, #60] @ (80019f0 ) + 80019b2: f44f 7280 mov.w r2, #256 @ 0x100 + 80019b6: 611a str r2, [r3, #16] + 80019b8: 4b0d ldr r3, [pc, #52] @ (80019f0 ) + 80019ba: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80019be: 611a str r2, [r3, #16] + 80019c0: 4b0c ldr r3, [pc, #48] @ (80019f4 ) + 80019c2: 2200 movs r2, #0 + 80019c4: 60da str r2, [r3, #12] + 80019c6: 4b0a ldr r3, [pc, #40] @ (80019f0 ) + 80019c8: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80019cc: 611a str r2, [r3, #16] + 80019ce: 4b08 ldr r3, [pc, #32] @ (80019f0 ) + 80019d0: 2280 movs r2, #128 @ 0x80 + 80019d2: 611a str r2, [r3, #16] + 80019d4: 4b06 ldr r3, [pc, #24] @ (80019f0 ) + 80019d6: f44f 7200 mov.w r2, #512 @ 0x200 + 80019da: 611a str r2, [r3, #16] +} + 80019dc: bf00 nop + 80019de: 3714 adds r7, #20 + 80019e0: 46bd mov sp, r7 + 80019e2: bd90 pop {r4, r7, pc} + 80019e4: f3af 8000 nop.w + 80019e8: 66666666 .word 0x66666666 + 80019ec: 40046666 .word 0x40046666 + 80019f0: 40011000 .word 0x40011000 + 80019f4: 40010c00 .word 0x40010c00 + +080019f8 : + * @brief ����LCD��ʾ���� + * @param dir:0,����; 1,���� + * @retval �� + */ +void lcd_display_dir(uint8_t dir) +{ + 80019f8: b580 push {r7, lr} + 80019fa: b082 sub sp, #8 + 80019fc: af00 add r7, sp, #0 + 80019fe: 4603 mov r3, r0 + 8001a00: 71fb strb r3, [r7, #7] + lcddev.dir = dir; /* ����/���� */ + 8001a02: 4a68 ldr r2, [pc, #416] @ (8001ba4 ) + 8001a04: 79fb ldrb r3, [r7, #7] + 8001a06: 7193 strb r3, [r2, #6] + + if (dir == 0) /* ���� */ + 8001a08: 79fb ldrb r3, [r7, #7] + 8001a0a: 2b00 cmp r3, #0 + 8001a0c: d165 bne.n 8001ada + { + lcddev.width = 240; + 8001a0e: 4b65 ldr r3, [pc, #404] @ (8001ba4 ) + 8001a10: 22f0 movs r2, #240 @ 0xf0 + 8001a12: 801a strh r2, [r3, #0] + lcddev.height = 320; + 8001a14: 4b63 ldr r3, [pc, #396] @ (8001ba4 ) + 8001a16: f44f 72a0 mov.w r2, #320 @ 0x140 + 8001a1a: 805a strh r2, [r3, #2] + + if (lcddev.id == 0x5510) + 8001a1c: 4b61 ldr r3, [pc, #388] @ (8001ba4 ) + 8001a1e: 889b ldrh r3, [r3, #4] + 8001a20: f245 5210 movw r2, #21776 @ 0x5510 + 8001a24: 4293 cmp r3, r2 + 8001a26: d114 bne.n 8001a52 + { + lcddev.wramcmd = 0X2C00; + 8001a28: 4b5e ldr r3, [pc, #376] @ (8001ba4 ) + 8001a2a: f44f 5230 mov.w r2, #11264 @ 0x2c00 + 8001a2e: 811a strh r2, [r3, #8] + lcddev.setxcmd = 0X2A00; + 8001a30: 4b5c ldr r3, [pc, #368] @ (8001ba4 ) + 8001a32: f44f 5228 mov.w r2, #10752 @ 0x2a00 + 8001a36: 815a strh r2, [r3, #10] + lcddev.setycmd = 0X2B00; + 8001a38: 4b5a ldr r3, [pc, #360] @ (8001ba4 ) + 8001a3a: f44f 522c mov.w r2, #11008 @ 0x2b00 + 8001a3e: 819a strh r2, [r3, #12] + lcddev.width = 480; + 8001a40: 4b58 ldr r3, [pc, #352] @ (8001ba4 ) + 8001a42: f44f 72f0 mov.w r2, #480 @ 0x1e0 + 8001a46: 801a strh r2, [r3, #0] + lcddev.height = 800; + 8001a48: 4b56 ldr r3, [pc, #344] @ (8001ba4 ) + 8001a4a: f44f 7248 mov.w r2, #800 @ 0x320 + 8001a4e: 805a strh r2, [r3, #2] + 8001a50: e020 b.n 8001a94 + } + else if (lcddev.id == 0X1963) + 8001a52: 4b54 ldr r3, [pc, #336] @ (8001ba4 ) + 8001a54: 889b ldrh r3, [r3, #4] + 8001a56: f641 1263 movw r2, #6499 @ 0x1963 + 8001a5a: 4293 cmp r3, r2 + 8001a5c: d111 bne.n 8001a82 + { + lcddev.wramcmd = 0X2C; /* ����д��GRAM��ָ�� */ + 8001a5e: 4b51 ldr r3, [pc, #324] @ (8001ba4 ) + 8001a60: 222c movs r2, #44 @ 0x2c + 8001a62: 811a strh r2, [r3, #8] + lcddev.setxcmd = 0X2B; /* ����дX����ָ�� */ + 8001a64: 4b4f ldr r3, [pc, #316] @ (8001ba4 ) + 8001a66: 222b movs r2, #43 @ 0x2b + 8001a68: 815a strh r2, [r3, #10] + lcddev.setycmd = 0X2A; /* ����дY����ָ�� */ + 8001a6a: 4b4e ldr r3, [pc, #312] @ (8001ba4 ) + 8001a6c: 222a movs r2, #42 @ 0x2a + 8001a6e: 819a strh r2, [r3, #12] + lcddev.width = 480; /* ���ÿ��480 */ + 8001a70: 4b4c ldr r3, [pc, #304] @ (8001ba4 ) + 8001a72: f44f 72f0 mov.w r2, #480 @ 0x1e0 + 8001a76: 801a strh r2, [r3, #0] + lcddev.height = 800; /* ���ø߶�800 */ + 8001a78: 4b4a ldr r3, [pc, #296] @ (8001ba4 ) + 8001a7a: f44f 7248 mov.w r2, #800 @ 0x320 + 8001a7e: 805a strh r2, [r3, #2] + 8001a80: e008 b.n 8001a94 + } + else /* ����IC, ����: 9341 / 5310 / 7789 / 7796 / 9806 ��IC */ + { + lcddev.wramcmd = 0X2C; + 8001a82: 4b48 ldr r3, [pc, #288] @ (8001ba4 ) + 8001a84: 222c movs r2, #44 @ 0x2c + 8001a86: 811a strh r2, [r3, #8] + lcddev.setxcmd = 0X2A; + 8001a88: 4b46 ldr r3, [pc, #280] @ (8001ba4 ) + 8001a8a: 222a movs r2, #42 @ 0x2a + 8001a8c: 815a strh r2, [r3, #10] + lcddev.setycmd = 0X2B; + 8001a8e: 4b45 ldr r3, [pc, #276] @ (8001ba4 ) + 8001a90: 222b movs r2, #43 @ 0x2b + 8001a92: 819a strh r2, [r3, #12] + } + + if (lcddev.id == 0X5310 || lcddev.id == 0x7796) /* �����5310/7796 ���ʾ�� 320*480�ֱ��� */ + 8001a94: 4b43 ldr r3, [pc, #268] @ (8001ba4 ) + 8001a96: 889b ldrh r3, [r3, #4] + 8001a98: f245 3210 movw r2, #21264 @ 0x5310 + 8001a9c: 4293 cmp r3, r2 + 8001a9e: d005 beq.n 8001aac + 8001aa0: 4b40 ldr r3, [pc, #256] @ (8001ba4 ) + 8001aa2: 889b ldrh r3, [r3, #4] + 8001aa4: f247 7296 movw r2, #30614 @ 0x7796 + 8001aa8: 4293 cmp r3, r2 + 8001aaa: d107 bne.n 8001abc + { + lcddev.width = 320; + 8001aac: 4b3d ldr r3, [pc, #244] @ (8001ba4 ) + 8001aae: f44f 72a0 mov.w r2, #320 @ 0x140 + 8001ab2: 801a strh r2, [r3, #0] + lcddev.height = 480; + 8001ab4: 4b3b ldr r3, [pc, #236] @ (8001ba4 ) + 8001ab6: f44f 72f0 mov.w r2, #480 @ 0x1e0 + 8001aba: 805a strh r2, [r3, #2] + } + + if (lcddev.id == 0X9806) /* �����9806 ���ʾ�� 480*800 �ֱ��� */ + 8001abc: 4b39 ldr r3, [pc, #228] @ (8001ba4 ) + 8001abe: 889b ldrh r3, [r3, #4] + 8001ac0: f649 0206 movw r2, #38918 @ 0x9806 + 8001ac4: 4293 cmp r3, r2 + 8001ac6: d165 bne.n 8001b94 + { + lcddev.width = 480; + 8001ac8: 4b36 ldr r3, [pc, #216] @ (8001ba4 ) + 8001aca: f44f 72f0 mov.w r2, #480 @ 0x1e0 + 8001ace: 801a strh r2, [r3, #0] + lcddev.height = 800; + 8001ad0: 4b34 ldr r3, [pc, #208] @ (8001ba4 ) + 8001ad2: f44f 7248 mov.w r2, #800 @ 0x320 + 8001ad6: 805a strh r2, [r3, #2] + 8001ad8: e05c b.n 8001b94 + } + } + else /* ���� */ + { + lcddev.width = 320; /* Ĭ�Ͽ�� */ + 8001ada: 4b32 ldr r3, [pc, #200] @ (8001ba4 ) + 8001adc: f44f 72a0 mov.w r2, #320 @ 0x140 + 8001ae0: 801a strh r2, [r3, #0] + lcddev.height = 240; /* Ĭ�ϸ߶� */ + 8001ae2: 4b30 ldr r3, [pc, #192] @ (8001ba4 ) + 8001ae4: 22f0 movs r2, #240 @ 0xf0 + 8001ae6: 805a strh r2, [r3, #2] + + if (lcddev.id == 0x5510) + 8001ae8: 4b2e ldr r3, [pc, #184] @ (8001ba4 ) + 8001aea: 889b ldrh r3, [r3, #4] + 8001aec: f245 5210 movw r2, #21776 @ 0x5510 + 8001af0: 4293 cmp r3, r2 + 8001af2: d114 bne.n 8001b1e + { + lcddev.wramcmd = 0X2C00; + 8001af4: 4b2b ldr r3, [pc, #172] @ (8001ba4 ) + 8001af6: f44f 5230 mov.w r2, #11264 @ 0x2c00 + 8001afa: 811a strh r2, [r3, #8] + lcddev.setxcmd = 0X2A00; + 8001afc: 4b29 ldr r3, [pc, #164] @ (8001ba4 ) + 8001afe: f44f 5228 mov.w r2, #10752 @ 0x2a00 + 8001b02: 815a strh r2, [r3, #10] + lcddev.setycmd = 0X2B00; + 8001b04: 4b27 ldr r3, [pc, #156] @ (8001ba4 ) + 8001b06: f44f 522c mov.w r2, #11008 @ 0x2b00 + 8001b0a: 819a strh r2, [r3, #12] + lcddev.width = 800; + 8001b0c: 4b25 ldr r3, [pc, #148] @ (8001ba4 ) + 8001b0e: f44f 7248 mov.w r2, #800 @ 0x320 + 8001b12: 801a strh r2, [r3, #0] + lcddev.height = 480; + 8001b14: 4b23 ldr r3, [pc, #140] @ (8001ba4 ) + 8001b16: f44f 72f0 mov.w r2, #480 @ 0x1e0 + 8001b1a: 805a strh r2, [r3, #2] + 8001b1c: e026 b.n 8001b6c + } + else if (lcddev.id == 0X1963 || lcddev.id == 0x9806) + 8001b1e: 4b21 ldr r3, [pc, #132] @ (8001ba4 ) + 8001b20: 889b ldrh r3, [r3, #4] + 8001b22: f641 1263 movw r2, #6499 @ 0x1963 + 8001b26: 4293 cmp r3, r2 + 8001b28: d005 beq.n 8001b36 + 8001b2a: 4b1e ldr r3, [pc, #120] @ (8001ba4 ) + 8001b2c: 889b ldrh r3, [r3, #4] + 8001b2e: f649 0206 movw r2, #38918 @ 0x9806 + 8001b32: 4293 cmp r3, r2 + 8001b34: d111 bne.n 8001b5a + { + lcddev.wramcmd = 0X2C; /* ����д��GRAM��ָ�� */ + 8001b36: 4b1b ldr r3, [pc, #108] @ (8001ba4 ) + 8001b38: 222c movs r2, #44 @ 0x2c + 8001b3a: 811a strh r2, [r3, #8] + lcddev.setxcmd = 0X2A; /* ����дX����ָ�� */ + 8001b3c: 4b19 ldr r3, [pc, #100] @ (8001ba4 ) + 8001b3e: 222a movs r2, #42 @ 0x2a + 8001b40: 815a strh r2, [r3, #10] + lcddev.setycmd = 0X2B; /* ����дY����ָ�� */ + 8001b42: 4b18 ldr r3, [pc, #96] @ (8001ba4 ) + 8001b44: 222b movs r2, #43 @ 0x2b + 8001b46: 819a strh r2, [r3, #12] + lcddev.width = 800; /* ���ÿ��800 */ + 8001b48: 4b16 ldr r3, [pc, #88] @ (8001ba4 ) + 8001b4a: f44f 7248 mov.w r2, #800 @ 0x320 + 8001b4e: 801a strh r2, [r3, #0] + lcddev.height = 480; /* ���ø߶�480 */ + 8001b50: 4b14 ldr r3, [pc, #80] @ (8001ba4 ) + 8001b52: f44f 72f0 mov.w r2, #480 @ 0x1e0 + 8001b56: 805a strh r2, [r3, #2] + 8001b58: e008 b.n 8001b6c + } + else /* ����IC, ����: 9341 / 5310 / 7789 / 7796 ��IC */ + { + lcddev.wramcmd = 0X2C; + 8001b5a: 4b12 ldr r3, [pc, #72] @ (8001ba4 ) + 8001b5c: 222c movs r2, #44 @ 0x2c + 8001b5e: 811a strh r2, [r3, #8] + lcddev.setxcmd = 0X2A; + 8001b60: 4b10 ldr r3, [pc, #64] @ (8001ba4 ) + 8001b62: 222a movs r2, #42 @ 0x2a + 8001b64: 815a strh r2, [r3, #10] + lcddev.setycmd = 0X2B; + 8001b66: 4b0f ldr r3, [pc, #60] @ (8001ba4 ) + 8001b68: 222b movs r2, #43 @ 0x2b + 8001b6a: 819a strh r2, [r3, #12] + } + + if (lcddev.id == 0X5310 || lcddev.id == 0x7796) /* �����5310/7796 ���ʾ�� 320*480�ֱ��� */ + 8001b6c: 4b0d ldr r3, [pc, #52] @ (8001ba4 ) + 8001b6e: 889b ldrh r3, [r3, #4] + 8001b70: f245 3210 movw r2, #21264 @ 0x5310 + 8001b74: 4293 cmp r3, r2 + 8001b76: d005 beq.n 8001b84 + 8001b78: 4b0a ldr r3, [pc, #40] @ (8001ba4 ) + 8001b7a: 889b ldrh r3, [r3, #4] + 8001b7c: f247 7296 movw r2, #30614 @ 0x7796 + 8001b80: 4293 cmp r3, r2 + 8001b82: d107 bne.n 8001b94 + { + lcddev.width = 480; + 8001b84: 4b07 ldr r3, [pc, #28] @ (8001ba4 ) + 8001b86: f44f 72f0 mov.w r2, #480 @ 0x1e0 + 8001b8a: 801a strh r2, [r3, #0] + lcddev.height = 320; + 8001b8c: 4b05 ldr r3, [pc, #20] @ (8001ba4 ) + 8001b8e: f44f 72a0 mov.w r2, #320 @ 0x140 + 8001b92: 805a strh r2, [r3, #2] + } + } + + lcd_scan_dir(DFT_SCAN_DIR); /* Ĭ��ɨ�跽�� */ + 8001b94: 2000 movs r0, #0 + 8001b96: f7ff fa97 bl 80010c8 +} + 8001b9a: bf00 nop + 8001b9c: 3708 adds r7, #8 + 8001b9e: 46bd mov sp, r7 + 8001ba0: bd80 pop {r7, pc} + 8001ba2: bf00 nop + 8001ba4: 2000002c .word 0x2000002c + +08001ba8 : + * + * @param �� + * @retval �� + */ +void lcd_init(void) +{ + 8001ba8: b580 push {r7, lr} + 8001baa: b0da sub sp, #360 @ 0x168 + 8001bac: af00 add r7, sp, #0 + GPIO_InitTypeDef gpio_init_struct; + + LCD_BL_GPIO_CLK_ENABLE(); /* LCD_BL��ʱ��ʹ�� */ + 8001bae: 4bbe ldr r3, [pc, #760] @ (8001ea8 ) + 8001bb0: 699b ldr r3, [r3, #24] + 8001bb2: 4abd ldr r2, [pc, #756] @ (8001ea8 ) + 8001bb4: f043 0310 orr.w r3, r3, #16 + 8001bb8: 6193 str r3, [r2, #24] + 8001bba: 4bbb ldr r3, [pc, #748] @ (8001ea8 ) + 8001bbc: 699b ldr r3, [r3, #24] + 8001bbe: f003 0210 and.w r2, r3, #16 + 8001bc2: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001bc6: f5a3 73a8 sub.w r3, r3, #336 @ 0x150 + 8001bca: 601a str r2, [r3, #0] + 8001bcc: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001bd0: f5a3 73a8 sub.w r3, r3, #336 @ 0x150 + 8001bd4: 681b ldr r3, [r3, #0] + LCD_CS_GPIO_CLK_ENABLE(); /* LCD_CS��ʱ��ʹ�� */ + 8001bd6: 4bb4 ldr r3, [pc, #720] @ (8001ea8 ) + 8001bd8: 699b ldr r3, [r3, #24] + 8001bda: 4ab3 ldr r2, [pc, #716] @ (8001ea8 ) + 8001bdc: f043 0310 orr.w r3, r3, #16 + 8001be0: 6193 str r3, [r2, #24] + 8001be2: 4bb1 ldr r3, [pc, #708] @ (8001ea8 ) + 8001be4: 699b ldr r3, [r3, #24] + 8001be6: f003 0210 and.w r2, r3, #16 + 8001bea: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001bee: f5a3 73aa sub.w r3, r3, #340 @ 0x154 + 8001bf2: 601a str r2, [r3, #0] + 8001bf4: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001bf8: f5a3 73aa sub.w r3, r3, #340 @ 0x154 + 8001bfc: 681b ldr r3, [r3, #0] + LCD_WR_GPIO_CLK_ENABLE(); /* LCD_WR��ʱ��ʹ�� */ + 8001bfe: 4baa ldr r3, [pc, #680] @ (8001ea8 ) + 8001c00: 699b ldr r3, [r3, #24] + 8001c02: 4aa9 ldr r2, [pc, #676] @ (8001ea8 ) + 8001c04: f043 0310 orr.w r3, r3, #16 + 8001c08: 6193 str r3, [r2, #24] + 8001c0a: 4ba7 ldr r3, [pc, #668] @ (8001ea8 ) + 8001c0c: 699b ldr r3, [r3, #24] + 8001c0e: f003 0210 and.w r2, r3, #16 + 8001c12: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001c16: f5a3 73ac sub.w r3, r3, #344 @ 0x158 + 8001c1a: 601a str r2, [r3, #0] + 8001c1c: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001c20: f5a3 73ac sub.w r3, r3, #344 @ 0x158 + 8001c24: 681b ldr r3, [r3, #0] + LCD_RD_GPIO_CLK_ENABLE(); /* LCD_RD��ʱ��ʹ�� */ + 8001c26: 4ba0 ldr r3, [pc, #640] @ (8001ea8 ) + 8001c28: 699b ldr r3, [r3, #24] + 8001c2a: 4a9f ldr r2, [pc, #636] @ (8001ea8 ) + 8001c2c: f043 0310 orr.w r3, r3, #16 + 8001c30: 6193 str r3, [r2, #24] + 8001c32: 4b9d ldr r3, [pc, #628] @ (8001ea8 ) + 8001c34: 699b ldr r3, [r3, #24] + 8001c36: f003 0210 and.w r2, r3, #16 + 8001c3a: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001c3e: f5a3 73ae sub.w r3, r3, #348 @ 0x15c + 8001c42: 601a str r2, [r3, #0] + 8001c44: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001c48: f5a3 73ae sub.w r3, r3, #348 @ 0x15c + 8001c4c: 681b ldr r3, [r3, #0] + LCD_RS_GPIO_CLK_ENABLE(); /* LCD_RS��ʱ��ʹ�� */ + 8001c4e: 4b96 ldr r3, [pc, #600] @ (8001ea8 ) + 8001c50: 699b ldr r3, [r3, #24] + 8001c52: 4a95 ldr r2, [pc, #596] @ (8001ea8 ) + 8001c54: f043 0310 orr.w r3, r3, #16 + 8001c58: 6193 str r3, [r2, #24] + 8001c5a: 4b93 ldr r3, [pc, #588] @ (8001ea8 ) + 8001c5c: 699b ldr r3, [r3, #24] + 8001c5e: f003 0210 and.w r2, r3, #16 + 8001c62: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001c66: f5a3 73b0 sub.w r3, r3, #352 @ 0x160 + 8001c6a: 601a str r2, [r3, #0] + 8001c6c: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001c70: f5a3 73b0 sub.w r3, r3, #352 @ 0x160 + 8001c74: 681b ldr r3, [r3, #0] + LCD_DATA_GPIO_CLK_ENABLE(); /* LCD_DATA��ʱ��ʹ�� */ + 8001c76: 4b8c ldr r3, [pc, #560] @ (8001ea8 ) + 8001c78: 699b ldr r3, [r3, #24] + 8001c7a: 4a8b ldr r2, [pc, #556] @ (8001ea8 ) + 8001c7c: f043 0308 orr.w r3, r3, #8 + 8001c80: 6193 str r3, [r2, #24] + 8001c82: 4b89 ldr r3, [pc, #548] @ (8001ea8 ) + 8001c84: 699b ldr r3, [r3, #24] + 8001c86: f003 0208 and.w r2, r3, #8 + 8001c8a: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001c8e: f5a3 73b2 sub.w r3, r3, #356 @ 0x164 + 8001c92: 601a str r2, [r3, #0] + 8001c94: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001c98: f5a3 73b2 sub.w r3, r3, #356 @ 0x164 + 8001c9c: 681b ldr r3, [r3, #0] + __HAL_RCC_AFIO_CLK_ENABLE(); + 8001c9e: 4b82 ldr r3, [pc, #520] @ (8001ea8 ) + 8001ca0: 699b ldr r3, [r3, #24] + 8001ca2: 4a81 ldr r2, [pc, #516] @ (8001ea8 ) + 8001ca4: f043 0301 orr.w r3, r3, #1 + 8001ca8: 6193 str r3, [r2, #24] + 8001caa: 4b7f ldr r3, [pc, #508] @ (8001ea8 ) + 8001cac: 699b ldr r3, [r3, #24] + 8001cae: f003 0201 and.w r2, r3, #1 + 8001cb2: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001cb6: f5a3 73b4 sub.w r3, r3, #360 @ 0x168 + 8001cba: 601a str r2, [r3, #0] + 8001cbc: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001cc0: f5a3 73b4 sub.w r3, r3, #360 @ 0x168 + 8001cc4: 681b ldr r3, [r3, #0] + __HAL_AFIO_REMAP_SWJ_NOJTAG(); /* ��ֹJTAG, ʹ��SWD, �ͷ�PB3,PB4������������ͨIO�� */ + 8001cc6: 4b79 ldr r3, [pc, #484] @ (8001eac ) + 8001cc8: 685b ldr r3, [r3, #4] + 8001cca: f8c7 3164 str.w r3, [r7, #356] @ 0x164 + 8001cce: f8d7 3164 ldr.w r3, [r7, #356] @ 0x164 + 8001cd2: f023 63e0 bic.w r3, r3, #117440512 @ 0x7000000 + 8001cd6: f8c7 3164 str.w r3, [r7, #356] @ 0x164 + 8001cda: f8d7 3164 ldr.w r3, [r7, #356] @ 0x164 + 8001cde: f043 7300 orr.w r3, r3, #33554432 @ 0x2000000 + 8001ce2: f8c7 3164 str.w r3, [r7, #356] @ 0x164 + 8001ce6: 4a71 ldr r2, [pc, #452] @ (8001eac ) + 8001ce8: f8d7 3164 ldr.w r3, [r7, #356] @ 0x164 + 8001cec: 6053 str r3, [r2, #4] + + gpio_init_struct.Pin = LCD_BL_GPIO_PIN; + 8001cee: f44f 6380 mov.w r3, #1024 @ 0x400 + 8001cf2: f8c7 3154 str.w r3, [r7, #340] @ 0x154 + gpio_init_struct.Mode = GPIO_MODE_OUTPUT_PP; + 8001cf6: 2301 movs r3, #1 + 8001cf8: f8c7 3158 str.w r3, [r7, #344] @ 0x158 + gpio_init_struct.Pull = GPIO_PULLUP; + 8001cfc: 2301 movs r3, #1 + 8001cfe: f8c7 315c str.w r3, [r7, #348] @ 0x15c + gpio_init_struct.Speed = GPIO_SPEED_FREQ_HIGH; + 8001d02: 2303 movs r3, #3 + 8001d04: f8c7 3160 str.w r3, [r7, #352] @ 0x160 + HAL_GPIO_Init(LCD_BL_GPIO_PORT, &gpio_init_struct); /* LCD_BL����ģʽ����(�������) */ + 8001d08: f507 73aa add.w r3, r7, #340 @ 0x154 + 8001d0c: 4619 mov r1, r3 + 8001d0e: 4868 ldr r0, [pc, #416] @ (8001eb0 ) + 8001d10: f005 fcda bl 80076c8 + + gpio_init_struct.Pin = LCD_CS_GPIO_PIN; + 8001d14: f44f 7300 mov.w r3, #512 @ 0x200 + 8001d18: f8c7 3154 str.w r3, [r7, #340] @ 0x154 + gpio_init_struct.Mode = GPIO_MODE_OUTPUT_PP; /* ���츴�� */ + 8001d1c: 2301 movs r3, #1 + 8001d1e: f8c7 3158 str.w r3, [r7, #344] @ 0x158 + gpio_init_struct.Pull = GPIO_PULLUP; /* ���� */ + 8001d22: 2301 movs r3, #1 + 8001d24: f8c7 315c str.w r3, [r7, #348] @ 0x15c + gpio_init_struct.Speed = GPIO_SPEED_FREQ_HIGH; /* ���� */ + 8001d28: 2303 movs r3, #3 + 8001d2a: f8c7 3160 str.w r3, [r7, #352] @ 0x160 + HAL_GPIO_Init(LCD_CS_GPIO_PORT, &gpio_init_struct); /* ��ʼ��LCD_CS���� */ + 8001d2e: f507 73aa add.w r3, r7, #340 @ 0x154 + 8001d32: 4619 mov r1, r3 + 8001d34: 485e ldr r0, [pc, #376] @ (8001eb0 ) + 8001d36: f005 fcc7 bl 80076c8 + + gpio_init_struct.Pin = LCD_WR_GPIO_PIN; + 8001d3a: 2380 movs r3, #128 @ 0x80 + 8001d3c: f8c7 3154 str.w r3, [r7, #340] @ 0x154 + HAL_GPIO_Init(LCD_WR_GPIO_PORT, &gpio_init_struct); /* ��ʼ��LCD_WR���� */ + 8001d40: f507 73aa add.w r3, r7, #340 @ 0x154 + 8001d44: 4619 mov r1, r3 + 8001d46: 485a ldr r0, [pc, #360] @ (8001eb0 ) + 8001d48: f005 fcbe bl 80076c8 + + gpio_init_struct.Pin = LCD_RD_GPIO_PIN; + 8001d4c: 2340 movs r3, #64 @ 0x40 + 8001d4e: f8c7 3154 str.w r3, [r7, #340] @ 0x154 + HAL_GPIO_Init(LCD_RD_GPIO_PORT, &gpio_init_struct); /* ��ʼ��LCD_RD���� */ + 8001d52: f507 73aa add.w r3, r7, #340 @ 0x154 + 8001d56: 4619 mov r1, r3 + 8001d58: 4855 ldr r0, [pc, #340] @ (8001eb0 ) + 8001d5a: f005 fcb5 bl 80076c8 + + gpio_init_struct.Pin = LCD_RS_GPIO_PIN; + 8001d5e: f44f 7380 mov.w r3, #256 @ 0x100 + 8001d62: f8c7 3154 str.w r3, [r7, #340] @ 0x154 + HAL_GPIO_Init(LCD_RS_GPIO_PORT, &gpio_init_struct); /* ��ʼ��LCD_RS���� */ + 8001d66: f507 73aa add.w r3, r7, #340 @ 0x154 + 8001d6a: 4619 mov r1, r3 + 8001d6c: 4850 ldr r0, [pc, #320] @ (8001eb0 ) + 8001d6e: f005 fcab bl 80076c8 + + gpio_init_struct.Pin = LCD_DATA_GPIO_PIN; + 8001d72: f64f 73ff movw r3, #65535 @ 0xffff + 8001d76: f8c7 3154 str.w r3, [r7, #340] @ 0x154 + gpio_init_struct.Mode = GPIO_MODE_OUTPUT_PP; /* ������� */ + 8001d7a: 2301 movs r3, #1 + 8001d7c: f8c7 3158 str.w r3, [r7, #344] @ 0x158 + HAL_GPIO_Init(LCD_DATA_GPIO_PORT, &gpio_init_struct); /* LCD_DATA����ģʽ���� */ + 8001d80: f507 73aa add.w r3, r7, #340 @ 0x154 + 8001d84: 4619 mov r1, r3 + 8001d86: 484b ldr r0, [pc, #300] @ (8001eb4 ) + 8001d88: f005 fc9e bl 80076c8 + LCD_WR(1); /* WR Ĭ�ϸߵ�ƽ */ + 8001d8c: 4b48 ldr r3, [pc, #288] @ (8001eb0 ) + 8001d8e: 2280 movs r2, #128 @ 0x80 + 8001d90: 611a str r2, [r3, #16] + LCD_RD(1); /* RD Ĭ�ϸߵ�ƽ */ + 8001d92: 4b47 ldr r3, [pc, #284] @ (8001eb0 ) + 8001d94: 2240 movs r2, #64 @ 0x40 + 8001d96: 611a str r2, [r3, #16] + LCD_CS(1); /* CS Ĭ�ϸߵ�ƽ */ + 8001d98: 4b45 ldr r3, [pc, #276] @ (8001eb0 ) + 8001d9a: f44f 7200 mov.w r2, #512 @ 0x200 + 8001d9e: 611a str r2, [r3, #16] + LCD_RS(1); /* RS Ĭ�ϸߵ�ƽ */ + 8001da0: 4b43 ldr r3, [pc, #268] @ (8001eb0 ) + 8001da2: f44f 7280 mov.w r2, #256 @ 0x100 + 8001da6: 611a str r2, [r3, #16] + LCD_DATA_OUT(0XFFFF); /* DATA Ĭ�ϸߵ�ƽ */ + 8001da8: 4b42 ldr r3, [pc, #264] @ (8001eb4 ) + 8001daa: f64f 72ff movw r2, #65535 @ 0xffff + 8001dae: 60da str r2, [r3, #12] + + lcd_opt_delay(0X1FFFF); + 8001db0: 4841 ldr r0, [pc, #260] @ (8001eb8 ) + 8001db2: f7fe fe21 bl 80009f8 + 8001db6: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001dba: f5a3 73a6 sub.w r3, r3, #332 @ 0x14c + 8001dbe: 22d3 movs r2, #211 @ 0xd3 + 8001dc0: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8001dc2: 4b3b ldr r3, [pc, #236] @ (8001eb0 ) + 8001dc4: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8001dc8: 611a str r2, [r3, #16] + LCD_CS(0); + 8001dca: 4b39 ldr r3, [pc, #228] @ (8001eb0 ) + 8001dcc: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001dd0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8001dd2: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001dd6: f5a3 73a6 sub.w r3, r3, #332 @ 0x14c + 8001dda: 881b ldrh r3, [r3, #0] + 8001ddc: b29a uxth r2, r3 + 8001dde: 4b35 ldr r3, [pc, #212] @ (8001eb4 ) + 8001de0: 60da str r2, [r3, #12] + LCD_WR(0); + 8001de2: 4b33 ldr r3, [pc, #204] @ (8001eb0 ) + 8001de4: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001de8: 611a str r2, [r3, #16] + LCD_WR(1); + 8001dea: 4b31 ldr r3, [pc, #196] @ (8001eb0 ) + 8001dec: 2280 movs r2, #128 @ 0x80 + 8001dee: 611a str r2, [r3, #16] + LCD_CS(1); + 8001df0: 4b2f ldr r3, [pc, #188] @ (8001eb0 ) + 8001df2: f44f 7200 mov.w r2, #512 @ 0x200 + 8001df6: 611a str r2, [r3, #16] +} + 8001df8: bf00 nop + + /* ����9341 ID�Ķ�ȡ */ + lcd_wr_regno(0XD3); + lcddev.id = lcd_rd_data(); /* dummy read */ + 8001dfa: f7fe fe0d bl 8000a18 + 8001dfe: 4603 mov r3, r0 + 8001e00: 461a mov r2, r3 + 8001e02: 4b2e ldr r3, [pc, #184] @ (8001ebc ) + 8001e04: 809a strh r2, [r3, #4] + lcddev.id = lcd_rd_data(); /* ����0X00 */ + 8001e06: f7fe fe07 bl 8000a18 + 8001e0a: 4603 mov r3, r0 + 8001e0c: 461a mov r2, r3 + 8001e0e: 4b2b ldr r3, [pc, #172] @ (8001ebc ) + 8001e10: 809a strh r2, [r3, #4] + lcddev.id = lcd_rd_data(); /* ��ȡ0X93 */ + 8001e12: f7fe fe01 bl 8000a18 + 8001e16: 4603 mov r3, r0 + 8001e18: 461a mov r2, r3 + 8001e1a: 4b28 ldr r3, [pc, #160] @ (8001ebc ) + 8001e1c: 809a strh r2, [r3, #4] + lcddev.id <<= 8; + 8001e1e: 4b27 ldr r3, [pc, #156] @ (8001ebc ) + 8001e20: 889b ldrh r3, [r3, #4] + 8001e22: 021b lsls r3, r3, #8 + 8001e24: b29a uxth r2, r3 + 8001e26: 4b25 ldr r3, [pc, #148] @ (8001ebc ) + 8001e28: 809a strh r2, [r3, #4] + lcddev.id |= lcd_rd_data(); /* ��ȡ0X41 */ + 8001e2a: f7fe fdf5 bl 8000a18 + 8001e2e: 4603 mov r3, r0 + 8001e30: 461a mov r2, r3 + 8001e32: 4b22 ldr r3, [pc, #136] @ (8001ebc ) + 8001e34: 889b ldrh r3, [r3, #4] + 8001e36: 4313 orrs r3, r2 + 8001e38: b29a uxth r2, r3 + 8001e3a: 4b20 ldr r3, [pc, #128] @ (8001ebc ) + 8001e3c: 809a strh r2, [r3, #4] + + if (lcddev.id != 0X9341) /* ���� 9341 , ���Կ����Dz��� ST7789 */ + 8001e3e: 4b1f ldr r3, [pc, #124] @ (8001ebc ) + 8001e40: 889b ldrh r3, [r3, #4] + 8001e42: f249 3241 movw r2, #37697 @ 0x9341 + 8001e46: 4293 cmp r3, r2 + 8001e48: f000 820e beq.w 8002268 + 8001e4c: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001e50: f5a3 73a5 sub.w r3, r3, #330 @ 0x14a + 8001e54: 2204 movs r2, #4 + 8001e56: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8001e58: 4b15 ldr r3, [pc, #84] @ (8001eb0 ) + 8001e5a: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8001e5e: 611a str r2, [r3, #16] + LCD_CS(0); + 8001e60: 4b13 ldr r3, [pc, #76] @ (8001eb0 ) + 8001e62: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001e66: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8001e68: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001e6c: f5a3 73a5 sub.w r3, r3, #330 @ 0x14a + 8001e70: 881b ldrh r3, [r3, #0] + 8001e72: b29a uxth r2, r3 + 8001e74: 4b0f ldr r3, [pc, #60] @ (8001eb4 ) + 8001e76: 60da str r2, [r3, #12] + LCD_WR(0); + 8001e78: 4b0d ldr r3, [pc, #52] @ (8001eb0 ) + 8001e7a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001e7e: 611a str r2, [r3, #16] + LCD_WR(1); + 8001e80: 4b0b ldr r3, [pc, #44] @ (8001eb0 ) + 8001e82: 2280 movs r2, #128 @ 0x80 + 8001e84: 611a str r2, [r3, #16] + LCD_CS(1); + 8001e86: 4b0a ldr r3, [pc, #40] @ (8001eb0 ) + 8001e88: f44f 7200 mov.w r2, #512 @ 0x200 + 8001e8c: 611a str r2, [r3, #16] +} + 8001e8e: bf00 nop + { + lcd_wr_regno(0X04); + lcddev.id = lcd_rd_data(); /* dummy read */ + 8001e90: f7fe fdc2 bl 8000a18 + 8001e94: 4603 mov r3, r0 + 8001e96: 461a mov r2, r3 + 8001e98: 4b08 ldr r3, [pc, #32] @ (8001ebc ) + 8001e9a: 809a strh r2, [r3, #4] + lcddev.id = lcd_rd_data(); /* ����0X85 */ + 8001e9c: f7fe fdbc bl 8000a18 + 8001ea0: 4603 mov r3, r0 + 8001ea2: 461a mov r2, r3 + 8001ea4: e00c b.n 8001ec0 + 8001ea6: bf00 nop + 8001ea8: 40021000 .word 0x40021000 + 8001eac: 40010000 .word 0x40010000 + 8001eb0: 40011000 .word 0x40011000 + 8001eb4: 40010c00 .word 0x40010c00 + 8001eb8: 0001ffff .word 0x0001ffff + 8001ebc: 2000002c .word 0x2000002c + 8001ec0: 4bb1 ldr r3, [pc, #708] @ (8002188 ) + 8001ec2: 809a strh r2, [r3, #4] + lcddev.id = lcd_rd_data(); /* ��ȡ0X85 */ + 8001ec4: f7fe fda8 bl 8000a18 + 8001ec8: 4603 mov r3, r0 + 8001eca: 461a mov r2, r3 + 8001ecc: 4bae ldr r3, [pc, #696] @ (8002188 ) + 8001ece: 809a strh r2, [r3, #4] + lcddev.id <<= 8; + 8001ed0: 4bad ldr r3, [pc, #692] @ (8002188 ) + 8001ed2: 889b ldrh r3, [r3, #4] + 8001ed4: 021b lsls r3, r3, #8 + 8001ed6: b29a uxth r2, r3 + 8001ed8: 4bab ldr r3, [pc, #684] @ (8002188 ) + 8001eda: 809a strh r2, [r3, #4] + lcddev.id |= lcd_rd_data(); /* ��ȡ0X52 */ + 8001edc: f7fe fd9c bl 8000a18 + 8001ee0: 4603 mov r3, r0 + 8001ee2: 461a mov r2, r3 + 8001ee4: 4ba8 ldr r3, [pc, #672] @ (8002188 ) + 8001ee6: 889b ldrh r3, [r3, #4] + 8001ee8: 4313 orrs r3, r2 + 8001eea: b29a uxth r2, r3 + 8001eec: 4ba6 ldr r3, [pc, #664] @ (8002188 ) + 8001eee: 809a strh r2, [r3, #4] + + if (lcddev.id == 0X8552) /* ��8552��IDת����7789 */ + 8001ef0: 4ba5 ldr r3, [pc, #660] @ (8002188 ) + 8001ef2: 889b ldrh r3, [r3, #4] + 8001ef4: f248 5252 movw r2, #34130 @ 0x8552 + 8001ef8: 4293 cmp r3, r2 + 8001efa: d103 bne.n 8001f04 + { + lcddev.id = 0x7789; + 8001efc: 4ba2 ldr r3, [pc, #648] @ (8002188 ) + 8001efe: f247 7289 movw r2, #30601 @ 0x7789 + 8001f02: 809a strh r2, [r3, #4] + } + + if (lcddev.id != 0x7789) /* Ҳ����ST7789, �����Dz��� NT35310 */ + 8001f04: 4ba0 ldr r3, [pc, #640] @ (8002188 ) + 8001f06: 889b ldrh r3, [r3, #4] + 8001f08: f247 7289 movw r2, #30601 @ 0x7789 + 8001f0c: 4293 cmp r3, r2 + 8001f0e: f000 81ab beq.w 8002268 + 8001f12: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001f16: f5a3 73a4 sub.w r3, r3, #328 @ 0x148 + 8001f1a: 22d4 movs r2, #212 @ 0xd4 + 8001f1c: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8001f1e: 4b9b ldr r3, [pc, #620] @ (800218c ) + 8001f20: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8001f24: 611a str r2, [r3, #16] + LCD_CS(0); + 8001f26: 4b99 ldr r3, [pc, #612] @ (800218c ) + 8001f28: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001f2c: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8001f2e: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001f32: f5a3 73a4 sub.w r3, r3, #328 @ 0x148 + 8001f36: 881b ldrh r3, [r3, #0] + 8001f38: b29a uxth r2, r3 + 8001f3a: 4b95 ldr r3, [pc, #596] @ (8002190 ) + 8001f3c: 60da str r2, [r3, #12] + LCD_WR(0); + 8001f3e: 4b93 ldr r3, [pc, #588] @ (800218c ) + 8001f40: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001f44: 611a str r2, [r3, #16] + LCD_WR(1); + 8001f46: 4b91 ldr r3, [pc, #580] @ (800218c ) + 8001f48: 2280 movs r2, #128 @ 0x80 + 8001f4a: 611a str r2, [r3, #16] + LCD_CS(1); + 8001f4c: 4b8f ldr r3, [pc, #572] @ (800218c ) + 8001f4e: f44f 7200 mov.w r2, #512 @ 0x200 + 8001f52: 611a str r2, [r3, #16] +} + 8001f54: bf00 nop + { + lcd_wr_regno(0xD4); + lcddev.id = lcd_rd_data(); /* dummy read */ + 8001f56: f7fe fd5f bl 8000a18 + 8001f5a: 4603 mov r3, r0 + 8001f5c: 461a mov r2, r3 + 8001f5e: 4b8a ldr r3, [pc, #552] @ (8002188 ) + 8001f60: 809a strh r2, [r3, #4] + lcddev.id = lcd_rd_data(); /* ����0x01 */ + 8001f62: f7fe fd59 bl 8000a18 + 8001f66: 4603 mov r3, r0 + 8001f68: 461a mov r2, r3 + 8001f6a: 4b87 ldr r3, [pc, #540] @ (8002188 ) + 8001f6c: 809a strh r2, [r3, #4] + lcddev.id = lcd_rd_data(); /* ����0x53 */ + 8001f6e: f7fe fd53 bl 8000a18 + 8001f72: 4603 mov r3, r0 + 8001f74: 461a mov r2, r3 + 8001f76: 4b84 ldr r3, [pc, #528] @ (8002188 ) + 8001f78: 809a strh r2, [r3, #4] + lcddev.id <<= 8; + 8001f7a: 4b83 ldr r3, [pc, #524] @ (8002188 ) + 8001f7c: 889b ldrh r3, [r3, #4] + 8001f7e: 021b lsls r3, r3, #8 + 8001f80: b29a uxth r2, r3 + 8001f82: 4b81 ldr r3, [pc, #516] @ (8002188 ) + 8001f84: 809a strh r2, [r3, #4] + lcddev.id |= lcd_rd_data(); /* �������0x10 */ + 8001f86: f7fe fd47 bl 8000a18 + 8001f8a: 4603 mov r3, r0 + 8001f8c: 461a mov r2, r3 + 8001f8e: 4b7e ldr r3, [pc, #504] @ (8002188 ) + 8001f90: 889b ldrh r3, [r3, #4] + 8001f92: 4313 orrs r3, r2 + 8001f94: b29a uxth r2, r3 + 8001f96: 4b7c ldr r3, [pc, #496] @ (8002188 ) + 8001f98: 809a strh r2, [r3, #4] + + if (lcddev.id != 0x5310) /* Ҳ����NT35310,���Կ����Dz���ST7796 */ + 8001f9a: 4b7b ldr r3, [pc, #492] @ (8002188 ) + 8001f9c: 889b ldrh r3, [r3, #4] + 8001f9e: f245 3210 movw r2, #21264 @ 0x5310 + 8001fa2: 4293 cmp r3, r2 + 8001fa4: f000 8160 beq.w 8002268 + 8001fa8: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001fac: f5a3 73a3 sub.w r3, r3, #326 @ 0x146 + 8001fb0: 22d3 movs r2, #211 @ 0xd3 + 8001fb2: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8001fb4: 4b75 ldr r3, [pc, #468] @ (800218c ) + 8001fb6: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8001fba: 611a str r2, [r3, #16] + LCD_CS(0); + 8001fbc: 4b73 ldr r3, [pc, #460] @ (800218c ) + 8001fbe: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8001fc2: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8001fc4: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8001fc8: f5a3 73a3 sub.w r3, r3, #326 @ 0x146 + 8001fcc: 881b ldrh r3, [r3, #0] + 8001fce: b29a uxth r2, r3 + 8001fd0: 4b6f ldr r3, [pc, #444] @ (8002190 ) + 8001fd2: 60da str r2, [r3, #12] + LCD_WR(0); + 8001fd4: 4b6d ldr r3, [pc, #436] @ (800218c ) + 8001fd6: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8001fda: 611a str r2, [r3, #16] + LCD_WR(1); + 8001fdc: 4b6b ldr r3, [pc, #428] @ (800218c ) + 8001fde: 2280 movs r2, #128 @ 0x80 + 8001fe0: 611a str r2, [r3, #16] + LCD_CS(1); + 8001fe2: 4b6a ldr r3, [pc, #424] @ (800218c ) + 8001fe4: f44f 7200 mov.w r2, #512 @ 0x200 + 8001fe8: 611a str r2, [r3, #16] +} + 8001fea: bf00 nop + { + lcd_wr_regno(0XD3); + lcddev.id = lcd_rd_data(); /* dummy read */ + 8001fec: f7fe fd14 bl 8000a18 + 8001ff0: 4603 mov r3, r0 + 8001ff2: 461a mov r2, r3 + 8001ff4: 4b64 ldr r3, [pc, #400] @ (8002188 ) + 8001ff6: 809a strh r2, [r3, #4] + lcddev.id = lcd_rd_data(); /* ����0X00 */ + 8001ff8: f7fe fd0e bl 8000a18 + 8001ffc: 4603 mov r3, r0 + 8001ffe: 461a mov r2, r3 + 8002000: 4b61 ldr r3, [pc, #388] @ (8002188 ) + 8002002: 809a strh r2, [r3, #4] + lcddev.id = lcd_rd_data(); /* ��ȡ0X77 */ + 8002004: f7fe fd08 bl 8000a18 + 8002008: 4603 mov r3, r0 + 800200a: 461a mov r2, r3 + 800200c: 4b5e ldr r3, [pc, #376] @ (8002188 ) + 800200e: 809a strh r2, [r3, #4] + lcddev.id <<= 8; + 8002010: 4b5d ldr r3, [pc, #372] @ (8002188 ) + 8002012: 889b ldrh r3, [r3, #4] + 8002014: 021b lsls r3, r3, #8 + 8002016: b29a uxth r2, r3 + 8002018: 4b5b ldr r3, [pc, #364] @ (8002188 ) + 800201a: 809a strh r2, [r3, #4] + lcddev.id |= lcd_rd_data(); /* ��ȡ0X96 */ + 800201c: f7fe fcfc bl 8000a18 + 8002020: 4603 mov r3, r0 + 8002022: 461a mov r2, r3 + 8002024: 4b58 ldr r3, [pc, #352] @ (8002188 ) + 8002026: 889b ldrh r3, [r3, #4] + 8002028: 4313 orrs r3, r2 + 800202a: b29a uxth r2, r3 + 800202c: 4b56 ldr r3, [pc, #344] @ (8002188 ) + 800202e: 809a strh r2, [r3, #4] + + if (lcddev.id != 0x7796) /* Ҳ����ST7796,���Կ����Dz���NT35510 */ + 8002030: 4b55 ldr r3, [pc, #340] @ (8002188 ) + 8002032: 889b ldrh r3, [r3, #4] + 8002034: f247 7296 movw r2, #30614 @ 0x7796 + 8002038: 4293 cmp r3, r2 + 800203a: f000 8115 beq.w 8002268 + { + /* ������Կ�������ṩ�� */ + lcd_write_reg(0xF000, 0x0055); + 800203e: 2155 movs r1, #85 @ 0x55 + 8002040: f44f 4070 mov.w r0, #61440 @ 0xf000 + 8002044: f7fe fc96 bl 8000974 + lcd_write_reg(0xF001, 0x00AA); + 8002048: 21aa movs r1, #170 @ 0xaa + 800204a: f24f 0001 movw r0, #61441 @ 0xf001 + 800204e: f7fe fc91 bl 8000974 + lcd_write_reg(0xF002, 0x0052); + 8002052: 2152 movs r1, #82 @ 0x52 + 8002054: f24f 0002 movw r0, #61442 @ 0xf002 + 8002058: f7fe fc8c bl 8000974 + lcd_write_reg(0xF003, 0x0008); + 800205c: 2108 movs r1, #8 + 800205e: f24f 0003 movw r0, #61443 @ 0xf003 + 8002062: f7fe fc87 bl 8000974 + lcd_write_reg(0xF004, 0x0001); + 8002066: 2101 movs r1, #1 + 8002068: f24f 0004 movw r0, #61444 @ 0xf004 + 800206c: f7fe fc82 bl 8000974 + 8002070: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002074: f5a3 73a1 sub.w r3, r3, #322 @ 0x142 + 8002078: f44f 4245 mov.w r2, #50432 @ 0xc500 + 800207c: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800207e: 4b43 ldr r3, [pc, #268] @ (800218c ) + 8002080: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002084: 611a str r2, [r3, #16] + LCD_CS(0); + 8002086: 4b41 ldr r3, [pc, #260] @ (800218c ) + 8002088: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800208c: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800208e: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002092: f5a3 73a1 sub.w r3, r3, #322 @ 0x142 + 8002096: 881b ldrh r3, [r3, #0] + 8002098: b29a uxth r2, r3 + 800209a: 4b3d ldr r3, [pc, #244] @ (8002190 ) + 800209c: 60da str r2, [r3, #12] + LCD_WR(0); + 800209e: 4b3b ldr r3, [pc, #236] @ (800218c ) + 80020a0: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80020a4: 611a str r2, [r3, #16] + LCD_WR(1); + 80020a6: 4b39 ldr r3, [pc, #228] @ (800218c ) + 80020a8: 2280 movs r2, #128 @ 0x80 + 80020aa: 611a str r2, [r3, #16] + LCD_CS(1); + 80020ac: 4b37 ldr r3, [pc, #220] @ (800218c ) + 80020ae: f44f 7200 mov.w r2, #512 @ 0x200 + 80020b2: 611a str r2, [r3, #16] +} + 80020b4: bf00 nop + + lcd_wr_regno(0xC500); /* ��ȡID�Ͱ�λ */ + lcddev.id = lcd_rd_data(); /* ����0x55 */ + 80020b6: f7fe fcaf bl 8000a18 + 80020ba: 4603 mov r3, r0 + 80020bc: 461a mov r2, r3 + 80020be: 4b32 ldr r3, [pc, #200] @ (8002188 ) + 80020c0: 809a strh r2, [r3, #4] + lcddev.id <<= 8; + 80020c2: 4b31 ldr r3, [pc, #196] @ (8002188 ) + 80020c4: 889b ldrh r3, [r3, #4] + 80020c6: 021b lsls r3, r3, #8 + 80020c8: b29a uxth r2, r3 + 80020ca: 4b2f ldr r3, [pc, #188] @ (8002188 ) + 80020cc: 809a strh r2, [r3, #4] + 80020ce: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80020d2: f5a3 73a2 sub.w r3, r3, #324 @ 0x144 + 80020d6: f24c 5201 movw r2, #50433 @ 0xc501 + 80020da: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80020dc: 4b2b ldr r3, [pc, #172] @ (800218c ) + 80020de: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80020e2: 611a str r2, [r3, #16] + LCD_CS(0); + 80020e4: 4b29 ldr r3, [pc, #164] @ (800218c ) + 80020e6: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80020ea: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80020ec: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80020f0: f5a3 73a2 sub.w r3, r3, #324 @ 0x144 + 80020f4: 881b ldrh r3, [r3, #0] + 80020f6: b29a uxth r2, r3 + 80020f8: 4b25 ldr r3, [pc, #148] @ (8002190 ) + 80020fa: 60da str r2, [r3, #12] + LCD_WR(0); + 80020fc: 4b23 ldr r3, [pc, #140] @ (800218c ) + 80020fe: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002102: 611a str r2, [r3, #16] + LCD_WR(1); + 8002104: 4b21 ldr r3, [pc, #132] @ (800218c ) + 8002106: 2280 movs r2, #128 @ 0x80 + 8002108: 611a str r2, [r3, #16] + LCD_CS(1); + 800210a: 4b20 ldr r3, [pc, #128] @ (800218c ) + 800210c: f44f 7200 mov.w r2, #512 @ 0x200 + 8002110: 611a str r2, [r3, #16] +} + 8002112: bf00 nop + + lcd_wr_regno(0xC501); /* ��ȡID�߰�λ */ + lcddev.id |= lcd_rd_data(); /* ����0x10 */ + 8002114: f7fe fc80 bl 8000a18 + 8002118: 4603 mov r3, r0 + 800211a: 461a mov r2, r3 + 800211c: 4b1a ldr r3, [pc, #104] @ (8002188 ) + 800211e: 889b ldrh r3, [r3, #4] + 8002120: 4313 orrs r3, r2 + 8002122: b29a uxth r2, r3 + 8002124: 4b18 ldr r3, [pc, #96] @ (8002188 ) + 8002126: 809a strh r2, [r3, #4] + + //delay_ms(5); /* �ȴ�5ms, ��Ϊ0XC501ָ���1963��˵���������λָ��, �ȴ�5ms��1963��λ����ٲ��� */ + + if (lcddev.id != 0x5510) /* Ҳ����NT5510,���Կ����Dz���ILI9806 */ + 8002128: 4b17 ldr r3, [pc, #92] @ (8002188 ) + 800212a: 889b ldrh r3, [r3, #4] + 800212c: f245 5210 movw r2, #21776 @ 0x5510 + 8002130: 4293 cmp r3, r2 + 8002132: f000 8099 beq.w 8002268 + 8002136: f507 73b4 add.w r3, r7, #360 @ 0x168 + 800213a: f5a3 73a0 sub.w r3, r3, #320 @ 0x140 + 800213e: 22d3 movs r2, #211 @ 0xd3 + 8002140: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002142: 4b12 ldr r3, [pc, #72] @ (800218c ) + 8002144: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002148: 611a str r2, [r3, #16] + LCD_CS(0); + 800214a: 4b10 ldr r3, [pc, #64] @ (800218c ) + 800214c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002150: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002152: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002156: f5a3 73a0 sub.w r3, r3, #320 @ 0x140 + 800215a: 881b ldrh r3, [r3, #0] + 800215c: b29a uxth r2, r3 + 800215e: 4b0c ldr r3, [pc, #48] @ (8002190 ) + 8002160: 60da str r2, [r3, #12] + LCD_WR(0); + 8002162: 4b0a ldr r3, [pc, #40] @ (800218c ) + 8002164: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002168: 611a str r2, [r3, #16] + LCD_WR(1); + 800216a: 4b08 ldr r3, [pc, #32] @ (800218c ) + 800216c: 2280 movs r2, #128 @ 0x80 + 800216e: 611a str r2, [r3, #16] + LCD_CS(1); + 8002170: 4b06 ldr r3, [pc, #24] @ (800218c ) + 8002172: f44f 7200 mov.w r2, #512 @ 0x200 + 8002176: 611a str r2, [r3, #16] +} + 8002178: bf00 nop + { + lcd_wr_regno(0XD3); + lcddev.id = lcd_rd_data(); /* dummy read */ + 800217a: f7fe fc4d bl 8000a18 + 800217e: 4603 mov r3, r0 + 8002180: 461a mov r2, r3 + 8002182: 4b01 ldr r3, [pc, #4] @ (8002188 ) + 8002184: 809a strh r2, [r3, #4] + 8002186: e005 b.n 8002194 + 8002188: 2000002c .word 0x2000002c + 800218c: 40011000 .word 0x40011000 + 8002190: 40010c00 .word 0x40010c00 + lcddev.id = lcd_rd_data(); /* ����0X00 */ + 8002194: f7fe fc40 bl 8000a18 + 8002198: 4603 mov r3, r0 + 800219a: 461a mov r2, r3 + 800219c: 4bb2 ldr r3, [pc, #712] @ (8002468 ) + 800219e: 809a strh r2, [r3, #4] + lcddev.id = lcd_rd_data(); /* ����0X98 */ + 80021a0: f7fe fc3a bl 8000a18 + 80021a4: 4603 mov r3, r0 + 80021a6: 461a mov r2, r3 + 80021a8: 4baf ldr r3, [pc, #700] @ (8002468 ) + 80021aa: 809a strh r2, [r3, #4] + lcddev.id <<= 8; + 80021ac: 4bae ldr r3, [pc, #696] @ (8002468 ) + 80021ae: 889b ldrh r3, [r3, #4] + 80021b0: 021b lsls r3, r3, #8 + 80021b2: b29a uxth r2, r3 + 80021b4: 4bac ldr r3, [pc, #688] @ (8002468 ) + 80021b6: 809a strh r2, [r3, #4] + lcddev.id |= lcd_rd_data(); /* ����0X06 */ + 80021b8: f7fe fc2e bl 8000a18 + 80021bc: 4603 mov r3, r0 + 80021be: 461a mov r2, r3 + 80021c0: 4ba9 ldr r3, [pc, #676] @ (8002468 ) + 80021c2: 889b ldrh r3, [r3, #4] + 80021c4: 4313 orrs r3, r2 + 80021c6: b29a uxth r2, r3 + 80021c8: 4ba7 ldr r3, [pc, #668] @ (8002468 ) + 80021ca: 809a strh r2, [r3, #4] + + if (lcddev.id != 0x9806) /* Ҳ����ILI9806,���Կ����Dz���SSD1963 */ + 80021cc: 4ba6 ldr r3, [pc, #664] @ (8002468 ) + 80021ce: 889b ldrh r3, [r3, #4] + 80021d0: f649 0206 movw r2, #38918 @ 0x9806 + 80021d4: 4293 cmp r3, r2 + 80021d6: d047 beq.n 8002268 + 80021d8: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80021dc: f5a3 739f sub.w r3, r3, #318 @ 0x13e + 80021e0: 22a1 movs r2, #161 @ 0xa1 + 80021e2: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80021e4: 4ba1 ldr r3, [pc, #644] @ (800246c ) + 80021e6: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80021ea: 611a str r2, [r3, #16] + LCD_CS(0); + 80021ec: 4b9f ldr r3, [pc, #636] @ (800246c ) + 80021ee: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80021f2: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80021f4: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80021f8: f5a3 739f sub.w r3, r3, #318 @ 0x13e + 80021fc: 881b ldrh r3, [r3, #0] + 80021fe: b29a uxth r2, r3 + 8002200: 4b9b ldr r3, [pc, #620] @ (8002470 ) + 8002202: 60da str r2, [r3, #12] + LCD_WR(0); + 8002204: 4b99 ldr r3, [pc, #612] @ (800246c ) + 8002206: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800220a: 611a str r2, [r3, #16] + LCD_WR(1); + 800220c: 4b97 ldr r3, [pc, #604] @ (800246c ) + 800220e: 2280 movs r2, #128 @ 0x80 + 8002210: 611a str r2, [r3, #16] + LCD_CS(1); + 8002212: 4b96 ldr r3, [pc, #600] @ (800246c ) + 8002214: f44f 7200 mov.w r2, #512 @ 0x200 + 8002218: 611a str r2, [r3, #16] +} + 800221a: bf00 nop + { + lcd_wr_regno(0xA1); + lcddev.id = lcd_rd_data(); + 800221c: f7fe fbfc bl 8000a18 + 8002220: 4603 mov r3, r0 + 8002222: 461a mov r2, r3 + 8002224: 4b90 ldr r3, [pc, #576] @ (8002468 ) + 8002226: 809a strh r2, [r3, #4] + lcddev.id = lcd_rd_data(); /* ����0x57 */ + 8002228: f7fe fbf6 bl 8000a18 + 800222c: 4603 mov r3, r0 + 800222e: 461a mov r2, r3 + 8002230: 4b8d ldr r3, [pc, #564] @ (8002468 ) + 8002232: 809a strh r2, [r3, #4] + lcddev.id <<= 8; + 8002234: 4b8c ldr r3, [pc, #560] @ (8002468 ) + 8002236: 889b ldrh r3, [r3, #4] + 8002238: 021b lsls r3, r3, #8 + 800223a: b29a uxth r2, r3 + 800223c: 4b8a ldr r3, [pc, #552] @ (8002468 ) + 800223e: 809a strh r2, [r3, #4] + lcddev.id |= lcd_rd_data(); /* ����0x61 */ + 8002240: f7fe fbea bl 8000a18 + 8002244: 4603 mov r3, r0 + 8002246: 461a mov r2, r3 + 8002248: 4b87 ldr r3, [pc, #540] @ (8002468 ) + 800224a: 889b ldrh r3, [r3, #4] + 800224c: 4313 orrs r3, r2 + 800224e: b29a uxth r2, r3 + 8002250: 4b85 ldr r3, [pc, #532] @ (8002468 ) + 8002252: 809a strh r2, [r3, #4] + + if (lcddev.id == 0x5761) lcddev.id = 0x1963; /* SSD1963���ص�ID��5761H,Ϊ��������,����ǿ������Ϊ1963 */ + 8002254: 4b84 ldr r3, [pc, #528] @ (8002468 ) + 8002256: 889b ldrh r3, [r3, #4] + 8002258: f245 7261 movw r2, #22369 @ 0x5761 + 800225c: 4293 cmp r3, r2 + 800225e: d103 bne.n 8002268 + 8002260: 4b81 ldr r3, [pc, #516] @ (8002468 ) + 8002262: f641 1263 movw r2, #6499 @ 0x1963 + 8002266: 809a strh r2, [r3, #4] + * ����(������f_putc����), ����, �����ʼ������1, �������ε����� + * ���� printf ��� !!!!!!! + */ + //printf("LCD ID:%x\r\n", lcddev.id); /* ��ӡLCD ID */ + + if (lcddev.id == 0X7789) + 8002268: 4b7f ldr r3, [pc, #508] @ (8002468 ) + 800226a: 889b ldrh r3, [r3, #4] + 800226c: f247 7289 movw r2, #30601 @ 0x7789 + 8002270: 4293 cmp r3, r2 + 8002272: f040 82f3 bne.w 800285c + 8002276: f507 73b4 add.w r3, r7, #360 @ 0x168 + 800227a: f5a3 738e sub.w r3, r3, #284 @ 0x11c + 800227e: 2211 movs r2, #17 + 8002280: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002282: 4b7a ldr r3, [pc, #488] @ (800246c ) + 8002284: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002288: 611a str r2, [r3, #16] + LCD_CS(0); + 800228a: 4b78 ldr r3, [pc, #480] @ (800246c ) + 800228c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002290: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002292: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002296: f5a3 738e sub.w r3, r3, #284 @ 0x11c + 800229a: 881b ldrh r3, [r3, #0] + 800229c: b29a uxth r2, r3 + 800229e: 4b74 ldr r3, [pc, #464] @ (8002470 ) + 80022a0: 60da str r2, [r3, #12] + LCD_WR(0); + 80022a2: 4b72 ldr r3, [pc, #456] @ (800246c ) + 80022a4: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80022a8: 611a str r2, [r3, #16] + LCD_WR(1); + 80022aa: 4b70 ldr r3, [pc, #448] @ (800246c ) + 80022ac: 2280 movs r2, #128 @ 0x80 + 80022ae: 611a str r2, [r3, #16] + LCD_CS(1); + 80022b0: 4b6e ldr r3, [pc, #440] @ (800246c ) + 80022b2: f44f 7200 mov.w r2, #512 @ 0x200 + 80022b6: 611a str r2, [r3, #16] +} + 80022b8: bf00 nop + { + //lcd_ex_st7789_reginit(); /* ִ��ST7789��ʼ�� */ + lcd_wr_regno(0x11); + + HAL_Delay(120); + 80022ba: 2078 movs r0, #120 @ 0x78 + 80022bc: f005 f8fc bl 80074b8 + 80022c0: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80022c4: f5a3 738f sub.w r3, r3, #286 @ 0x11e + 80022c8: 2236 movs r2, #54 @ 0x36 + 80022ca: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80022cc: 4b67 ldr r3, [pc, #412] @ (800246c ) + 80022ce: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80022d2: 611a str r2, [r3, #16] + LCD_CS(0); + 80022d4: 4b65 ldr r3, [pc, #404] @ (800246c ) + 80022d6: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80022da: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80022dc: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80022e0: f5a3 738f sub.w r3, r3, #286 @ 0x11e + 80022e4: 881b ldrh r3, [r3, #0] + 80022e6: b29a uxth r2, r3 + 80022e8: 4b61 ldr r3, [pc, #388] @ (8002470 ) + 80022ea: 60da str r2, [r3, #12] + LCD_WR(0); + 80022ec: 4b5f ldr r3, [pc, #380] @ (800246c ) + 80022ee: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80022f2: 611a str r2, [r3, #16] + LCD_WR(1); + 80022f4: 4b5d ldr r3, [pc, #372] @ (800246c ) + 80022f6: 2280 movs r2, #128 @ 0x80 + 80022f8: 611a str r2, [r3, #16] + LCD_CS(1); + 80022fa: 4b5c ldr r3, [pc, #368] @ (800246c ) + 80022fc: f44f 7200 mov.w r2, #512 @ 0x200 + 8002300: 611a str r2, [r3, #16] +} + 8002302: bf00 nop + + lcd_wr_regno(0x36); + lcd_wr_xdata(0x00); + 8002304: 2000 movs r0, #0 + 8002306: f7fe fb11 bl 800092c + 800230a: f507 73b4 add.w r3, r7, #360 @ 0x168 + 800230e: f5a3 7390 sub.w r3, r3, #288 @ 0x120 + 8002312: 223a movs r2, #58 @ 0x3a + 8002314: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002316: 4b55 ldr r3, [pc, #340] @ (800246c ) + 8002318: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800231c: 611a str r2, [r3, #16] + LCD_CS(0); + 800231e: 4b53 ldr r3, [pc, #332] @ (800246c ) + 8002320: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002324: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002326: f507 73b4 add.w r3, r7, #360 @ 0x168 + 800232a: f5a3 7390 sub.w r3, r3, #288 @ 0x120 + 800232e: 881b ldrh r3, [r3, #0] + 8002330: b29a uxth r2, r3 + 8002332: 4b4f ldr r3, [pc, #316] @ (8002470 ) + 8002334: 60da str r2, [r3, #12] + LCD_WR(0); + 8002336: 4b4d ldr r3, [pc, #308] @ (800246c ) + 8002338: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800233c: 611a str r2, [r3, #16] + LCD_WR(1); + 800233e: 4b4b ldr r3, [pc, #300] @ (800246c ) + 8002340: 2280 movs r2, #128 @ 0x80 + 8002342: 611a str r2, [r3, #16] + LCD_CS(1); + 8002344: 4b49 ldr r3, [pc, #292] @ (800246c ) + 8002346: f44f 7200 mov.w r2, #512 @ 0x200 + 800234a: 611a str r2, [r3, #16] +} + 800234c: bf00 nop + + + lcd_wr_regno(0x3A); + lcd_wr_xdata(0X05); + 800234e: 2005 movs r0, #5 + 8002350: f7fe faec bl 800092c + 8002354: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002358: f5a3 7391 sub.w r3, r3, #290 @ 0x122 + 800235c: 22b2 movs r2, #178 @ 0xb2 + 800235e: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002360: 4b42 ldr r3, [pc, #264] @ (800246c ) + 8002362: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002366: 611a str r2, [r3, #16] + LCD_CS(0); + 8002368: 4b40 ldr r3, [pc, #256] @ (800246c ) + 800236a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800236e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002370: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002374: f5a3 7391 sub.w r3, r3, #290 @ 0x122 + 8002378: 881b ldrh r3, [r3, #0] + 800237a: b29a uxth r2, r3 + 800237c: 4b3c ldr r3, [pc, #240] @ (8002470 ) + 800237e: 60da str r2, [r3, #12] + LCD_WR(0); + 8002380: 4b3a ldr r3, [pc, #232] @ (800246c ) + 8002382: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002386: 611a str r2, [r3, #16] + LCD_WR(1); + 8002388: 4b38 ldr r3, [pc, #224] @ (800246c ) + 800238a: 2280 movs r2, #128 @ 0x80 + 800238c: 611a str r2, [r3, #16] + LCD_CS(1); + 800238e: 4b37 ldr r3, [pc, #220] @ (800246c ) + 8002390: f44f 7200 mov.w r2, #512 @ 0x200 + 8002394: 611a str r2, [r3, #16] +} + 8002396: bf00 nop + + lcd_wr_regno(0xB2); + lcd_wr_xdata(0x0C); + 8002398: 200c movs r0, #12 + 800239a: f7fe fac7 bl 800092c + lcd_wr_xdata(0x0C); + 800239e: 200c movs r0, #12 + 80023a0: f7fe fac4 bl 800092c + lcd_wr_xdata(0x00); + 80023a4: 2000 movs r0, #0 + 80023a6: f7fe fac1 bl 800092c + lcd_wr_xdata(0x33); + 80023aa: 2033 movs r0, #51 @ 0x33 + 80023ac: f7fe fabe bl 800092c + lcd_wr_xdata(0x33); + 80023b0: 2033 movs r0, #51 @ 0x33 + 80023b2: f7fe fabb bl 800092c + 80023b6: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80023ba: f5a3 7392 sub.w r3, r3, #292 @ 0x124 + 80023be: 22b7 movs r2, #183 @ 0xb7 + 80023c0: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80023c2: 4b2a ldr r3, [pc, #168] @ (800246c ) + 80023c4: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80023c8: 611a str r2, [r3, #16] + LCD_CS(0); + 80023ca: 4b28 ldr r3, [pc, #160] @ (800246c ) + 80023cc: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80023d0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80023d2: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80023d6: f5a3 7392 sub.w r3, r3, #292 @ 0x124 + 80023da: 881b ldrh r3, [r3, #0] + 80023dc: b29a uxth r2, r3 + 80023de: 4b24 ldr r3, [pc, #144] @ (8002470 ) + 80023e0: 60da str r2, [r3, #12] + LCD_WR(0); + 80023e2: 4b22 ldr r3, [pc, #136] @ (800246c ) + 80023e4: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80023e8: 611a str r2, [r3, #16] + LCD_WR(1); + 80023ea: 4b20 ldr r3, [pc, #128] @ (800246c ) + 80023ec: 2280 movs r2, #128 @ 0x80 + 80023ee: 611a str r2, [r3, #16] + LCD_CS(1); + 80023f0: 4b1e ldr r3, [pc, #120] @ (800246c ) + 80023f2: f44f 7200 mov.w r2, #512 @ 0x200 + 80023f6: 611a str r2, [r3, #16] +} + 80023f8: bf00 nop + + lcd_wr_regno(0xB7); + lcd_wr_xdata(0x35); + 80023fa: 2035 movs r0, #53 @ 0x35 + 80023fc: f7fe fa96 bl 800092c + 8002400: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002404: f5a3 7393 sub.w r3, r3, #294 @ 0x126 + 8002408: 22bb movs r2, #187 @ 0xbb + 800240a: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800240c: 4b17 ldr r3, [pc, #92] @ (800246c ) + 800240e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002412: 611a str r2, [r3, #16] + LCD_CS(0); + 8002414: 4b15 ldr r3, [pc, #84] @ (800246c ) + 8002416: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800241a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800241c: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002420: f5a3 7393 sub.w r3, r3, #294 @ 0x126 + 8002424: 881b ldrh r3, [r3, #0] + 8002426: b29a uxth r2, r3 + 8002428: 4b11 ldr r3, [pc, #68] @ (8002470 ) + 800242a: 60da str r2, [r3, #12] + LCD_WR(0); + 800242c: 4b0f ldr r3, [pc, #60] @ (800246c ) + 800242e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002432: 611a str r2, [r3, #16] + LCD_WR(1); + 8002434: 4b0d ldr r3, [pc, #52] @ (800246c ) + 8002436: 2280 movs r2, #128 @ 0x80 + 8002438: 611a str r2, [r3, #16] + LCD_CS(1); + 800243a: 4b0c ldr r3, [pc, #48] @ (800246c ) + 800243c: f44f 7200 mov.w r2, #512 @ 0x200 + 8002440: 611a str r2, [r3, #16] +} + 8002442: bf00 nop + + lcd_wr_regno(0xBB); /* vcom */ + lcd_wr_xdata(0x32); /* 30 */ + 8002444: 2032 movs r0, #50 @ 0x32 + 8002446: f7fe fa71 bl 800092c + 800244a: f507 73b4 add.w r3, r7, #360 @ 0x168 + 800244e: f5a3 7394 sub.w r3, r3, #296 @ 0x128 + 8002452: 22c0 movs r2, #192 @ 0xc0 + 8002454: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002456: 4b05 ldr r3, [pc, #20] @ (800246c ) + 8002458: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800245c: 611a str r2, [r3, #16] + LCD_CS(0); + 800245e: 4b03 ldr r3, [pc, #12] @ (800246c ) + 8002460: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002464: 611a str r2, [r3, #16] + 8002466: e005 b.n 8002474 + 8002468: 2000002c .word 0x2000002c + 800246c: 40011000 .word 0x40011000 + 8002470: 40010c00 .word 0x40010c00 + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002474: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002478: f5a3 7394 sub.w r3, r3, #296 @ 0x128 + 800247c: 881b ldrh r3, [r3, #0] + 800247e: b29a uxth r2, r3 + 8002480: 4bbf ldr r3, [pc, #764] @ (8002780 ) + 8002482: 60da str r2, [r3, #12] + LCD_WR(0); + 8002484: 4bbf ldr r3, [pc, #764] @ (8002784 ) + 8002486: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800248a: 611a str r2, [r3, #16] + LCD_WR(1); + 800248c: 4bbd ldr r3, [pc, #756] @ (8002784 ) + 800248e: 2280 movs r2, #128 @ 0x80 + 8002490: 611a str r2, [r3, #16] + LCD_CS(1); + 8002492: 4bbc ldr r3, [pc, #752] @ (8002784 ) + 8002494: f44f 7200 mov.w r2, #512 @ 0x200 + 8002498: 611a str r2, [r3, #16] +} + 800249a: bf00 nop + + lcd_wr_regno(0xC0); + lcd_wr_xdata(0x0C); + 800249c: 200c movs r0, #12 + 800249e: f7fe fa45 bl 800092c + 80024a2: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80024a6: f5a3 7395 sub.w r3, r3, #298 @ 0x12a + 80024aa: 22c2 movs r2, #194 @ 0xc2 + 80024ac: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80024ae: 4bb5 ldr r3, [pc, #724] @ (8002784 ) + 80024b0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80024b4: 611a str r2, [r3, #16] + LCD_CS(0); + 80024b6: 4bb3 ldr r3, [pc, #716] @ (8002784 ) + 80024b8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80024bc: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80024be: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80024c2: f5a3 7395 sub.w r3, r3, #298 @ 0x12a + 80024c6: 881b ldrh r3, [r3, #0] + 80024c8: b29a uxth r2, r3 + 80024ca: 4bad ldr r3, [pc, #692] @ (8002780 ) + 80024cc: 60da str r2, [r3, #12] + LCD_WR(0); + 80024ce: 4bad ldr r3, [pc, #692] @ (8002784 ) + 80024d0: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80024d4: 611a str r2, [r3, #16] + LCD_WR(1); + 80024d6: 4bab ldr r3, [pc, #684] @ (8002784 ) + 80024d8: 2280 movs r2, #128 @ 0x80 + 80024da: 611a str r2, [r3, #16] + LCD_CS(1); + 80024dc: 4ba9 ldr r3, [pc, #676] @ (8002784 ) + 80024de: f44f 7200 mov.w r2, #512 @ 0x200 + 80024e2: 611a str r2, [r3, #16] +} + 80024e4: bf00 nop + + lcd_wr_regno(0xC2); + lcd_wr_xdata(0x01); + 80024e6: 2001 movs r0, #1 + 80024e8: f7fe fa20 bl 800092c + 80024ec: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80024f0: f5a3 7396 sub.w r3, r3, #300 @ 0x12c + 80024f4: 22c3 movs r2, #195 @ 0xc3 + 80024f6: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80024f8: 4ba2 ldr r3, [pc, #648] @ (8002784 ) + 80024fa: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80024fe: 611a str r2, [r3, #16] + LCD_CS(0); + 8002500: 4ba0 ldr r3, [pc, #640] @ (8002784 ) + 8002502: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002506: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002508: f507 73b4 add.w r3, r7, #360 @ 0x168 + 800250c: f5a3 7396 sub.w r3, r3, #300 @ 0x12c + 8002510: 881b ldrh r3, [r3, #0] + 8002512: b29a uxth r2, r3 + 8002514: 4b9a ldr r3, [pc, #616] @ (8002780 ) + 8002516: 60da str r2, [r3, #12] + LCD_WR(0); + 8002518: 4b9a ldr r3, [pc, #616] @ (8002784 ) + 800251a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800251e: 611a str r2, [r3, #16] + LCD_WR(1); + 8002520: 4b98 ldr r3, [pc, #608] @ (8002784 ) + 8002522: 2280 movs r2, #128 @ 0x80 + 8002524: 611a str r2, [r3, #16] + LCD_CS(1); + 8002526: 4b97 ldr r3, [pc, #604] @ (8002784 ) + 8002528: f44f 7200 mov.w r2, #512 @ 0x200 + 800252c: 611a str r2, [r3, #16] +} + 800252e: bf00 nop + + lcd_wr_regno(0xC3); /* vrh */ + lcd_wr_xdata(0x10); /* 17 0D */ + 8002530: 2010 movs r0, #16 + 8002532: f7fe f9fb bl 800092c + 8002536: f507 73b4 add.w r3, r7, #360 @ 0x168 + 800253a: f5a3 7397 sub.w r3, r3, #302 @ 0x12e + 800253e: 22c4 movs r2, #196 @ 0xc4 + 8002540: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002542: 4b90 ldr r3, [pc, #576] @ (8002784 ) + 8002544: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002548: 611a str r2, [r3, #16] + LCD_CS(0); + 800254a: 4b8e ldr r3, [pc, #568] @ (8002784 ) + 800254c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002550: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002552: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002556: f5a3 7397 sub.w r3, r3, #302 @ 0x12e + 800255a: 881b ldrh r3, [r3, #0] + 800255c: b29a uxth r2, r3 + 800255e: 4b88 ldr r3, [pc, #544] @ (8002780 ) + 8002560: 60da str r2, [r3, #12] + LCD_WR(0); + 8002562: 4b88 ldr r3, [pc, #544] @ (8002784 ) + 8002564: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002568: 611a str r2, [r3, #16] + LCD_WR(1); + 800256a: 4b86 ldr r3, [pc, #536] @ (8002784 ) + 800256c: 2280 movs r2, #128 @ 0x80 + 800256e: 611a str r2, [r3, #16] + LCD_CS(1); + 8002570: 4b84 ldr r3, [pc, #528] @ (8002784 ) + 8002572: f44f 7200 mov.w r2, #512 @ 0x200 + 8002576: 611a str r2, [r3, #16] +} + 8002578: bf00 nop + + lcd_wr_regno(0xC4); /* vdv */ + lcd_wr_xdata(0x20); /* 20 */ + 800257a: 2020 movs r0, #32 + 800257c: f7fe f9d6 bl 800092c + 8002580: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002584: f5a3 7398 sub.w r3, r3, #304 @ 0x130 + 8002588: 22c6 movs r2, #198 @ 0xc6 + 800258a: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800258c: 4b7d ldr r3, [pc, #500] @ (8002784 ) + 800258e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002592: 611a str r2, [r3, #16] + LCD_CS(0); + 8002594: 4b7b ldr r3, [pc, #492] @ (8002784 ) + 8002596: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800259a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800259c: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80025a0: f5a3 7398 sub.w r3, r3, #304 @ 0x130 + 80025a4: 881b ldrh r3, [r3, #0] + 80025a6: b29a uxth r2, r3 + 80025a8: 4b75 ldr r3, [pc, #468] @ (8002780 ) + 80025aa: 60da str r2, [r3, #12] + LCD_WR(0); + 80025ac: 4b75 ldr r3, [pc, #468] @ (8002784 ) + 80025ae: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80025b2: 611a str r2, [r3, #16] + LCD_WR(1); + 80025b4: 4b73 ldr r3, [pc, #460] @ (8002784 ) + 80025b6: 2280 movs r2, #128 @ 0x80 + 80025b8: 611a str r2, [r3, #16] + LCD_CS(1); + 80025ba: 4b72 ldr r3, [pc, #456] @ (8002784 ) + 80025bc: f44f 7200 mov.w r2, #512 @ 0x200 + 80025c0: 611a str r2, [r3, #16] +} + 80025c2: bf00 nop + + lcd_wr_regno(0xC6); + lcd_wr_xdata(0x0f); + 80025c4: 200f movs r0, #15 + 80025c6: f7fe f9b1 bl 800092c + 80025ca: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80025ce: f5a3 7399 sub.w r3, r3, #306 @ 0x132 + 80025d2: 22d0 movs r2, #208 @ 0xd0 + 80025d4: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80025d6: 4b6b ldr r3, [pc, #428] @ (8002784 ) + 80025d8: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80025dc: 611a str r2, [r3, #16] + LCD_CS(0); + 80025de: 4b69 ldr r3, [pc, #420] @ (8002784 ) + 80025e0: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80025e4: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80025e6: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80025ea: f5a3 7399 sub.w r3, r3, #306 @ 0x132 + 80025ee: 881b ldrh r3, [r3, #0] + 80025f0: b29a uxth r2, r3 + 80025f2: 4b63 ldr r3, [pc, #396] @ (8002780 ) + 80025f4: 60da str r2, [r3, #12] + LCD_WR(0); + 80025f6: 4b63 ldr r3, [pc, #396] @ (8002784 ) + 80025f8: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80025fc: 611a str r2, [r3, #16] + LCD_WR(1); + 80025fe: 4b61 ldr r3, [pc, #388] @ (8002784 ) + 8002600: 2280 movs r2, #128 @ 0x80 + 8002602: 611a str r2, [r3, #16] + LCD_CS(1); + 8002604: 4b5f ldr r3, [pc, #380] @ (8002784 ) + 8002606: f44f 7200 mov.w r2, #512 @ 0x200 + 800260a: 611a str r2, [r3, #16] +} + 800260c: bf00 nop + + lcd_wr_regno(0xD0); + lcd_wr_xdata(0xA4); + 800260e: 20a4 movs r0, #164 @ 0xa4 + 8002610: f7fe f98c bl 800092c + lcd_wr_xdata(0xA1); + 8002614: 20a1 movs r0, #161 @ 0xa1 + 8002616: f7fe f989 bl 800092c + 800261a: f507 73b4 add.w r3, r7, #360 @ 0x168 + 800261e: f5a3 739a sub.w r3, r3, #308 @ 0x134 + 8002622: 22e0 movs r2, #224 @ 0xe0 + 8002624: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002626: 4b57 ldr r3, [pc, #348] @ (8002784 ) + 8002628: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800262c: 611a str r2, [r3, #16] + LCD_CS(0); + 800262e: 4b55 ldr r3, [pc, #340] @ (8002784 ) + 8002630: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002634: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002636: f507 73b4 add.w r3, r7, #360 @ 0x168 + 800263a: f5a3 739a sub.w r3, r3, #308 @ 0x134 + 800263e: 881b ldrh r3, [r3, #0] + 8002640: b29a uxth r2, r3 + 8002642: 4b4f ldr r3, [pc, #316] @ (8002780 ) + 8002644: 60da str r2, [r3, #12] + LCD_WR(0); + 8002646: 4b4f ldr r3, [pc, #316] @ (8002784 ) + 8002648: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800264c: 611a str r2, [r3, #16] + LCD_WR(1); + 800264e: 4b4d ldr r3, [pc, #308] @ (8002784 ) + 8002650: 2280 movs r2, #128 @ 0x80 + 8002652: 611a str r2, [r3, #16] + LCD_CS(1); + 8002654: 4b4b ldr r3, [pc, #300] @ (8002784 ) + 8002656: f44f 7200 mov.w r2, #512 @ 0x200 + 800265a: 611a str r2, [r3, #16] +} + 800265c: bf00 nop + + lcd_wr_regno(0xE0); /* Set Gamma */ + lcd_wr_xdata(0xd0); + 800265e: 20d0 movs r0, #208 @ 0xd0 + 8002660: f7fe f964 bl 800092c + lcd_wr_xdata(0x00); + 8002664: 2000 movs r0, #0 + 8002666: f7fe f961 bl 800092c + lcd_wr_xdata(0x02); + 800266a: 2002 movs r0, #2 + 800266c: f7fe f95e bl 800092c + lcd_wr_xdata(0x07); + 8002670: 2007 movs r0, #7 + 8002672: f7fe f95b bl 800092c + lcd_wr_xdata(0x0a); + 8002676: 200a movs r0, #10 + 8002678: f7fe f958 bl 800092c + lcd_wr_xdata(0x28); + 800267c: 2028 movs r0, #40 @ 0x28 + 800267e: f7fe f955 bl 800092c + lcd_wr_xdata(0x32); + 8002682: 2032 movs r0, #50 @ 0x32 + 8002684: f7fe f952 bl 800092c + lcd_wr_xdata(0X44); + 8002688: 2044 movs r0, #68 @ 0x44 + 800268a: f7fe f94f bl 800092c + lcd_wr_xdata(0x42); + 800268e: 2042 movs r0, #66 @ 0x42 + 8002690: f7fe f94c bl 800092c + lcd_wr_xdata(0x06); + 8002694: 2006 movs r0, #6 + 8002696: f7fe f949 bl 800092c + lcd_wr_xdata(0x0e); + 800269a: 200e movs r0, #14 + 800269c: f7fe f946 bl 800092c + lcd_wr_xdata(0x12); + 80026a0: 2012 movs r0, #18 + 80026a2: f7fe f943 bl 800092c + lcd_wr_xdata(0x14); + 80026a6: 2014 movs r0, #20 + 80026a8: f7fe f940 bl 800092c + lcd_wr_xdata(0x17); + 80026ac: 2017 movs r0, #23 + 80026ae: f7fe f93d bl 800092c + 80026b2: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80026b6: f5a3 739b sub.w r3, r3, #310 @ 0x136 + 80026ba: 22e1 movs r2, #225 @ 0xe1 + 80026bc: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80026be: 4b31 ldr r3, [pc, #196] @ (8002784 ) + 80026c0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80026c4: 611a str r2, [r3, #16] + LCD_CS(0); + 80026c6: 4b2f ldr r3, [pc, #188] @ (8002784 ) + 80026c8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80026cc: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80026ce: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80026d2: f5a3 739b sub.w r3, r3, #310 @ 0x136 + 80026d6: 881b ldrh r3, [r3, #0] + 80026d8: b29a uxth r2, r3 + 80026da: 4b29 ldr r3, [pc, #164] @ (8002780 ) + 80026dc: 60da str r2, [r3, #12] + LCD_WR(0); + 80026de: 4b29 ldr r3, [pc, #164] @ (8002784 ) + 80026e0: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80026e4: 611a str r2, [r3, #16] + LCD_WR(1); + 80026e6: 4b27 ldr r3, [pc, #156] @ (8002784 ) + 80026e8: 2280 movs r2, #128 @ 0x80 + 80026ea: 611a str r2, [r3, #16] + LCD_CS(1); + 80026ec: 4b25 ldr r3, [pc, #148] @ (8002784 ) + 80026ee: f44f 7200 mov.w r2, #512 @ 0x200 + 80026f2: 611a str r2, [r3, #16] +} + 80026f4: bf00 nop + + + lcd_wr_regno(0XE1); /* Set Gamma */ + lcd_wr_xdata(0xd0); + 80026f6: 20d0 movs r0, #208 @ 0xd0 + 80026f8: f7fe f918 bl 800092c + lcd_wr_xdata(0x00); + 80026fc: 2000 movs r0, #0 + 80026fe: f7fe f915 bl 800092c + lcd_wr_xdata(0x02); + 8002702: 2002 movs r0, #2 + 8002704: f7fe f912 bl 800092c + lcd_wr_xdata(0x07); + 8002708: 2007 movs r0, #7 + 800270a: f7fe f90f bl 800092c + lcd_wr_xdata(0x0a); + 800270e: 200a movs r0, #10 + 8002710: f7fe f90c bl 800092c + lcd_wr_xdata(0x28); + 8002714: 2028 movs r0, #40 @ 0x28 + 8002716: f7fe f909 bl 800092c + lcd_wr_xdata(0x31); + 800271a: 2031 movs r0, #49 @ 0x31 + 800271c: f7fe f906 bl 800092c + lcd_wr_xdata(0x54); + 8002720: 2054 movs r0, #84 @ 0x54 + 8002722: f7fe f903 bl 800092c + lcd_wr_xdata(0x47); + 8002726: 2047 movs r0, #71 @ 0x47 + 8002728: f7fe f900 bl 800092c + lcd_wr_xdata(0x0e); + 800272c: 200e movs r0, #14 + 800272e: f7fe f8fd bl 800092c + lcd_wr_xdata(0x1c); + 8002732: 201c movs r0, #28 + 8002734: f7fe f8fa bl 800092c + lcd_wr_xdata(0x17); + 8002738: 2017 movs r0, #23 + 800273a: f7fe f8f7 bl 800092c + lcd_wr_xdata(0x1b); + 800273e: 201b movs r0, #27 + 8002740: f7fe f8f4 bl 800092c + lcd_wr_xdata(0x1e); + 8002744: 201e movs r0, #30 + 8002746: f7fe f8f1 bl 800092c + 800274a: f507 73b4 add.w r3, r7, #360 @ 0x168 + 800274e: f5a3 739c sub.w r3, r3, #312 @ 0x138 + 8002752: 222a movs r2, #42 @ 0x2a + 8002754: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002756: 4b0b ldr r3, [pc, #44] @ (8002784 ) + 8002758: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800275c: 611a str r2, [r3, #16] + LCD_CS(0); + 800275e: 4b09 ldr r3, [pc, #36] @ (8002784 ) + 8002760: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002764: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002766: f507 73b4 add.w r3, r7, #360 @ 0x168 + 800276a: f5a3 739c sub.w r3, r3, #312 @ 0x138 + 800276e: 881b ldrh r3, [r3, #0] + 8002770: b29a uxth r2, r3 + 8002772: 4b03 ldr r3, [pc, #12] @ (8002780 ) + 8002774: 60da str r2, [r3, #12] + LCD_WR(0); + 8002776: 4b03 ldr r3, [pc, #12] @ (8002784 ) + 8002778: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800277c: 611a str r2, [r3, #16] + 800277e: e003 b.n 8002788 + 8002780: 40010c00 .word 0x40010c00 + 8002784: 40011000 .word 0x40011000 + LCD_WR(1); + 8002788: 4b32 ldr r3, [pc, #200] @ (8002854 ) + 800278a: 2280 movs r2, #128 @ 0x80 + 800278c: 611a str r2, [r3, #16] + LCD_CS(1); + 800278e: 4b31 ldr r3, [pc, #196] @ (8002854 ) + 8002790: f44f 7200 mov.w r2, #512 @ 0x200 + 8002794: 611a str r2, [r3, #16] +} + 8002796: bf00 nop + + + lcd_wr_regno(0x2A); + lcd_wr_xdata(0x00); + 8002798: 2000 movs r0, #0 + 800279a: f7fe f8c7 bl 800092c + lcd_wr_xdata(0x00); + 800279e: 2000 movs r0, #0 + 80027a0: f7fe f8c4 bl 800092c + lcd_wr_xdata(0x00); + 80027a4: 2000 movs r0, #0 + 80027a6: f7fe f8c1 bl 800092c + lcd_wr_xdata(0xef); + 80027aa: 20ef movs r0, #239 @ 0xef + 80027ac: f7fe f8be bl 800092c + 80027b0: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80027b4: f5a3 739d sub.w r3, r3, #314 @ 0x13a + 80027b8: 222b movs r2, #43 @ 0x2b + 80027ba: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80027bc: 4b25 ldr r3, [pc, #148] @ (8002854 ) + 80027be: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80027c2: 611a str r2, [r3, #16] + LCD_CS(0); + 80027c4: 4b23 ldr r3, [pc, #140] @ (8002854 ) + 80027c6: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80027ca: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80027cc: f507 73b4 add.w r3, r7, #360 @ 0x168 + 80027d0: f5a3 739d sub.w r3, r3, #314 @ 0x13a + 80027d4: 881b ldrh r3, [r3, #0] + 80027d6: b29a uxth r2, r3 + 80027d8: 4b1f ldr r3, [pc, #124] @ (8002858 ) + 80027da: 60da str r2, [r3, #12] + LCD_WR(0); + 80027dc: 4b1d ldr r3, [pc, #116] @ (8002854 ) + 80027de: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80027e2: 611a str r2, [r3, #16] + LCD_WR(1); + 80027e4: 4b1b ldr r3, [pc, #108] @ (8002854 ) + 80027e6: 2280 movs r2, #128 @ 0x80 + 80027e8: 611a str r2, [r3, #16] + LCD_CS(1); + 80027ea: 4b1a ldr r3, [pc, #104] @ (8002854 ) + 80027ec: f44f 7200 mov.w r2, #512 @ 0x200 + 80027f0: 611a str r2, [r3, #16] +} + 80027f2: bf00 nop + + lcd_wr_regno(0x2B); + lcd_wr_xdata(0x00); + 80027f4: 2000 movs r0, #0 + 80027f6: f7fe f899 bl 800092c + lcd_wr_xdata(0x00); + 80027fa: 2000 movs r0, #0 + 80027fc: f7fe f896 bl 800092c + lcd_wr_xdata(0x01); + 8002800: 2001 movs r0, #1 + 8002802: f7fe f893 bl 800092c + lcd_wr_xdata(0x3f); + 8002806: 203f movs r0, #63 @ 0x3f + 8002808: f7fe f890 bl 800092c + 800280c: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002810: f5a3 739e sub.w r3, r3, #316 @ 0x13c + 8002814: 2229 movs r2, #41 @ 0x29 + 8002816: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002818: 4b0e ldr r3, [pc, #56] @ (8002854 ) + 800281a: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800281e: 611a str r2, [r3, #16] + LCD_CS(0); + 8002820: 4b0c ldr r3, [pc, #48] @ (8002854 ) + 8002822: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002826: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002828: f507 73b4 add.w r3, r7, #360 @ 0x168 + 800282c: f5a3 739e sub.w r3, r3, #316 @ 0x13c + 8002830: 881b ldrh r3, [r3, #0] + 8002832: b29a uxth r2, r3 + 8002834: 4b08 ldr r3, [pc, #32] @ (8002858 ) + 8002836: 60da str r2, [r3, #12] + LCD_WR(0); + 8002838: 4b06 ldr r3, [pc, #24] @ (8002854 ) + 800283a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800283e: 611a str r2, [r3, #16] + LCD_WR(1); + 8002840: 4b04 ldr r3, [pc, #16] @ (8002854 ) + 8002842: 2280 movs r2, #128 @ 0x80 + 8002844: 611a str r2, [r3, #16] + LCD_CS(1); + 8002846: 4b03 ldr r3, [pc, #12] @ (8002854 ) + 8002848: f44f 7200 mov.w r2, #512 @ 0x200 + 800284c: 611a str r2, [r3, #16] +} + 800284e: f004 b8f4 b.w 8006a3a + 8002852: bf00 nop + 8002854: 40011000 .word 0x40011000 + 8002858: 40010c00 .word 0x40010c00 + + lcd_wr_regno(0x29); /* display on */ + } + else if (lcddev.id == 0X9341) + 800285c: 4bb9 ldr r3, [pc, #740] @ (8002b44 ) + 800285e: 889b ldrh r3, [r3, #4] + 8002860: f249 3241 movw r2, #37697 @ 0x9341 + 8002864: 4293 cmp r3, r2 + 8002866: f040 83a1 bne.w 8002fac + 800286a: 23cf movs r3, #207 @ 0xcf + 800286c: f8a7 3078 strh.w r3, [r7, #120] @ 0x78 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002870: 4bb5 ldr r3, [pc, #724] @ (8002b48 ) + 8002872: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002876: 611a str r2, [r3, #16] + LCD_CS(0); + 8002878: 4bb3 ldr r3, [pc, #716] @ (8002b48 ) + 800287a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800287e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002880: f8b7 3078 ldrh.w r3, [r7, #120] @ 0x78 + 8002884: b29a uxth r2, r3 + 8002886: 4bb1 ldr r3, [pc, #708] @ (8002b4c ) + 8002888: 60da str r2, [r3, #12] + LCD_WR(0); + 800288a: 4baf ldr r3, [pc, #700] @ (8002b48 ) + 800288c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002890: 611a str r2, [r3, #16] + LCD_WR(1); + 8002892: 4bad ldr r3, [pc, #692] @ (8002b48 ) + 8002894: 2280 movs r2, #128 @ 0x80 + 8002896: 611a str r2, [r3, #16] + LCD_CS(1); + 8002898: 4bab ldr r3, [pc, #684] @ (8002b48 ) + 800289a: f44f 7200 mov.w r2, #512 @ 0x200 + 800289e: 611a str r2, [r3, #16] +} + 80028a0: bf00 nop + { + //lcd_ex_ili9341_reginit(); /* ִ��ILI9341��ʼ�� */ + lcd_wr_regno(0xCF); + lcd_wr_xdata(0x00); + 80028a2: 2000 movs r0, #0 + 80028a4: f7fe f842 bl 800092c + lcd_wr_xdata(0xC1); + 80028a8: 20c1 movs r0, #193 @ 0xc1 + 80028aa: f7fe f83f bl 800092c + lcd_wr_xdata(0X30); + 80028ae: 2030 movs r0, #48 @ 0x30 + 80028b0: f7fe f83c bl 800092c + 80028b4: 23ed movs r3, #237 @ 0xed + 80028b6: f8a7 3076 strh.w r3, [r7, #118] @ 0x76 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80028ba: 4ba3 ldr r3, [pc, #652] @ (8002b48 ) + 80028bc: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80028c0: 611a str r2, [r3, #16] + LCD_CS(0); + 80028c2: 4ba1 ldr r3, [pc, #644] @ (8002b48 ) + 80028c4: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80028c8: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80028ca: f8b7 3076 ldrh.w r3, [r7, #118] @ 0x76 + 80028ce: b29a uxth r2, r3 + 80028d0: 4b9e ldr r3, [pc, #632] @ (8002b4c ) + 80028d2: 60da str r2, [r3, #12] + LCD_WR(0); + 80028d4: 4b9c ldr r3, [pc, #624] @ (8002b48 ) + 80028d6: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80028da: 611a str r2, [r3, #16] + LCD_WR(1); + 80028dc: 4b9a ldr r3, [pc, #616] @ (8002b48 ) + 80028de: 2280 movs r2, #128 @ 0x80 + 80028e0: 611a str r2, [r3, #16] + LCD_CS(1); + 80028e2: 4b99 ldr r3, [pc, #612] @ (8002b48 ) + 80028e4: f44f 7200 mov.w r2, #512 @ 0x200 + 80028e8: 611a str r2, [r3, #16] +} + 80028ea: bf00 nop + lcd_wr_regno(0xED); + lcd_wr_xdata(0x64); + 80028ec: 2064 movs r0, #100 @ 0x64 + 80028ee: f7fe f81d bl 800092c + lcd_wr_xdata(0x03); + 80028f2: 2003 movs r0, #3 + 80028f4: f7fe f81a bl 800092c + lcd_wr_xdata(0X12); + 80028f8: 2012 movs r0, #18 + 80028fa: f7fe f817 bl 800092c + lcd_wr_xdata(0X81); + 80028fe: 2081 movs r0, #129 @ 0x81 + 8002900: f7fe f814 bl 800092c + 8002904: 23e8 movs r3, #232 @ 0xe8 + 8002906: f8a7 3074 strh.w r3, [r7, #116] @ 0x74 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800290a: 4b8f ldr r3, [pc, #572] @ (8002b48 ) + 800290c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002910: 611a str r2, [r3, #16] + LCD_CS(0); + 8002912: 4b8d ldr r3, [pc, #564] @ (8002b48 ) + 8002914: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002918: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800291a: f8b7 3074 ldrh.w r3, [r7, #116] @ 0x74 + 800291e: b29a uxth r2, r3 + 8002920: 4b8a ldr r3, [pc, #552] @ (8002b4c ) + 8002922: 60da str r2, [r3, #12] + LCD_WR(0); + 8002924: 4b88 ldr r3, [pc, #544] @ (8002b48 ) + 8002926: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800292a: 611a str r2, [r3, #16] + LCD_WR(1); + 800292c: 4b86 ldr r3, [pc, #536] @ (8002b48 ) + 800292e: 2280 movs r2, #128 @ 0x80 + 8002930: 611a str r2, [r3, #16] + LCD_CS(1); + 8002932: 4b85 ldr r3, [pc, #532] @ (8002b48 ) + 8002934: f44f 7200 mov.w r2, #512 @ 0x200 + 8002938: 611a str r2, [r3, #16] +} + 800293a: bf00 nop + lcd_wr_regno(0xE8); + lcd_wr_xdata(0x85); + 800293c: 2085 movs r0, #133 @ 0x85 + 800293e: f7fd fff5 bl 800092c + lcd_wr_xdata(0x10); + 8002942: 2010 movs r0, #16 + 8002944: f7fd fff2 bl 800092c + lcd_wr_xdata(0x7A); + 8002948: 207a movs r0, #122 @ 0x7a + 800294a: f7fd ffef bl 800092c + 800294e: 23cb movs r3, #203 @ 0xcb + 8002950: f8a7 3072 strh.w r3, [r7, #114] @ 0x72 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002954: 4b7c ldr r3, [pc, #496] @ (8002b48 ) + 8002956: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800295a: 611a str r2, [r3, #16] + LCD_CS(0); + 800295c: 4b7a ldr r3, [pc, #488] @ (8002b48 ) + 800295e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002962: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002964: f8b7 3072 ldrh.w r3, [r7, #114] @ 0x72 + 8002968: b29a uxth r2, r3 + 800296a: 4b78 ldr r3, [pc, #480] @ (8002b4c ) + 800296c: 60da str r2, [r3, #12] + LCD_WR(0); + 800296e: 4b76 ldr r3, [pc, #472] @ (8002b48 ) + 8002970: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002974: 611a str r2, [r3, #16] + LCD_WR(1); + 8002976: 4b74 ldr r3, [pc, #464] @ (8002b48 ) + 8002978: 2280 movs r2, #128 @ 0x80 + 800297a: 611a str r2, [r3, #16] + LCD_CS(1); + 800297c: 4b72 ldr r3, [pc, #456] @ (8002b48 ) + 800297e: f44f 7200 mov.w r2, #512 @ 0x200 + 8002982: 611a str r2, [r3, #16] +} + 8002984: bf00 nop + lcd_wr_regno(0xCB); + lcd_wr_xdata(0x39); + 8002986: 2039 movs r0, #57 @ 0x39 + 8002988: f7fd ffd0 bl 800092c + lcd_wr_xdata(0x2C); + 800298c: 202c movs r0, #44 @ 0x2c + 800298e: f7fd ffcd bl 800092c + lcd_wr_xdata(0x00); + 8002992: 2000 movs r0, #0 + 8002994: f7fd ffca bl 800092c + lcd_wr_xdata(0x34); + 8002998: 2034 movs r0, #52 @ 0x34 + 800299a: f7fd ffc7 bl 800092c + lcd_wr_xdata(0x02); + 800299e: 2002 movs r0, #2 + 80029a0: f7fd ffc4 bl 800092c + 80029a4: 23f7 movs r3, #247 @ 0xf7 + 80029a6: f8a7 3070 strh.w r3, [r7, #112] @ 0x70 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80029aa: 4b67 ldr r3, [pc, #412] @ (8002b48 ) + 80029ac: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80029b0: 611a str r2, [r3, #16] + LCD_CS(0); + 80029b2: 4b65 ldr r3, [pc, #404] @ (8002b48 ) + 80029b4: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80029b8: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80029ba: f8b7 3070 ldrh.w r3, [r7, #112] @ 0x70 + 80029be: b29a uxth r2, r3 + 80029c0: 4b62 ldr r3, [pc, #392] @ (8002b4c ) + 80029c2: 60da str r2, [r3, #12] + LCD_WR(0); + 80029c4: 4b60 ldr r3, [pc, #384] @ (8002b48 ) + 80029c6: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80029ca: 611a str r2, [r3, #16] + LCD_WR(1); + 80029cc: 4b5e ldr r3, [pc, #376] @ (8002b48 ) + 80029ce: 2280 movs r2, #128 @ 0x80 + 80029d0: 611a str r2, [r3, #16] + LCD_CS(1); + 80029d2: 4b5d ldr r3, [pc, #372] @ (8002b48 ) + 80029d4: f44f 7200 mov.w r2, #512 @ 0x200 + 80029d8: 611a str r2, [r3, #16] +} + 80029da: bf00 nop + lcd_wr_regno(0xF7); + lcd_wr_xdata(0x20); + 80029dc: 2020 movs r0, #32 + 80029de: f7fd ffa5 bl 800092c + 80029e2: 23ea movs r3, #234 @ 0xea + 80029e4: f8a7 306e strh.w r3, [r7, #110] @ 0x6e + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80029e8: 4b57 ldr r3, [pc, #348] @ (8002b48 ) + 80029ea: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80029ee: 611a str r2, [r3, #16] + LCD_CS(0); + 80029f0: 4b55 ldr r3, [pc, #340] @ (8002b48 ) + 80029f2: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80029f6: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80029f8: f8b7 306e ldrh.w r3, [r7, #110] @ 0x6e + 80029fc: b29a uxth r2, r3 + 80029fe: 4b53 ldr r3, [pc, #332] @ (8002b4c ) + 8002a00: 60da str r2, [r3, #12] + LCD_WR(0); + 8002a02: 4b51 ldr r3, [pc, #324] @ (8002b48 ) + 8002a04: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002a08: 611a str r2, [r3, #16] + LCD_WR(1); + 8002a0a: 4b4f ldr r3, [pc, #316] @ (8002b48 ) + 8002a0c: 2280 movs r2, #128 @ 0x80 + 8002a0e: 611a str r2, [r3, #16] + LCD_CS(1); + 8002a10: 4b4d ldr r3, [pc, #308] @ (8002b48 ) + 8002a12: f44f 7200 mov.w r2, #512 @ 0x200 + 8002a16: 611a str r2, [r3, #16] +} + 8002a18: bf00 nop + lcd_wr_regno(0xEA); + lcd_wr_xdata(0x00); + 8002a1a: 2000 movs r0, #0 + 8002a1c: f7fd ff86 bl 800092c + lcd_wr_xdata(0x00); + 8002a20: 2000 movs r0, #0 + 8002a22: f7fd ff83 bl 800092c + 8002a26: 23c0 movs r3, #192 @ 0xc0 + 8002a28: f8a7 306c strh.w r3, [r7, #108] @ 0x6c + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002a2c: 4b46 ldr r3, [pc, #280] @ (8002b48 ) + 8002a2e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002a32: 611a str r2, [r3, #16] + LCD_CS(0); + 8002a34: 4b44 ldr r3, [pc, #272] @ (8002b48 ) + 8002a36: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002a3a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002a3c: f8b7 306c ldrh.w r3, [r7, #108] @ 0x6c + 8002a40: b29a uxth r2, r3 + 8002a42: 4b42 ldr r3, [pc, #264] @ (8002b4c ) + 8002a44: 60da str r2, [r3, #12] + LCD_WR(0); + 8002a46: 4b40 ldr r3, [pc, #256] @ (8002b48 ) + 8002a48: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002a4c: 611a str r2, [r3, #16] + LCD_WR(1); + 8002a4e: 4b3e ldr r3, [pc, #248] @ (8002b48 ) + 8002a50: 2280 movs r2, #128 @ 0x80 + 8002a52: 611a str r2, [r3, #16] + LCD_CS(1); + 8002a54: 4b3c ldr r3, [pc, #240] @ (8002b48 ) + 8002a56: f44f 7200 mov.w r2, #512 @ 0x200 + 8002a5a: 611a str r2, [r3, #16] +} + 8002a5c: bf00 nop + lcd_wr_regno(0xC0); /* Power control */ + lcd_wr_xdata(0x1B); /* VRH[5:0] */ + 8002a5e: 201b movs r0, #27 + 8002a60: f7fd ff64 bl 800092c + 8002a64: 23c1 movs r3, #193 @ 0xc1 + 8002a66: f8a7 306a strh.w r3, [r7, #106] @ 0x6a + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002a6a: 4b37 ldr r3, [pc, #220] @ (8002b48 ) + 8002a6c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002a70: 611a str r2, [r3, #16] + LCD_CS(0); + 8002a72: 4b35 ldr r3, [pc, #212] @ (8002b48 ) + 8002a74: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002a78: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002a7a: f8b7 306a ldrh.w r3, [r7, #106] @ 0x6a + 8002a7e: b29a uxth r2, r3 + 8002a80: 4b32 ldr r3, [pc, #200] @ (8002b4c ) + 8002a82: 60da str r2, [r3, #12] + LCD_WR(0); + 8002a84: 4b30 ldr r3, [pc, #192] @ (8002b48 ) + 8002a86: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002a8a: 611a str r2, [r3, #16] + LCD_WR(1); + 8002a8c: 4b2e ldr r3, [pc, #184] @ (8002b48 ) + 8002a8e: 2280 movs r2, #128 @ 0x80 + 8002a90: 611a str r2, [r3, #16] + LCD_CS(1); + 8002a92: 4b2d ldr r3, [pc, #180] @ (8002b48 ) + 8002a94: f44f 7200 mov.w r2, #512 @ 0x200 + 8002a98: 611a str r2, [r3, #16] +} + 8002a9a: bf00 nop + lcd_wr_regno(0xC1); /* Power control */ + lcd_wr_xdata(0x01); /* SAP[2:0];BT[3:0] */ + 8002a9c: 2001 movs r0, #1 + 8002a9e: f7fd ff45 bl 800092c + 8002aa2: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002aa6: f5a3 7380 sub.w r3, r3, #256 @ 0x100 + 8002aaa: 22c5 movs r2, #197 @ 0xc5 + 8002aac: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002aae: 4b26 ldr r3, [pc, #152] @ (8002b48 ) + 8002ab0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002ab4: 611a str r2, [r3, #16] + LCD_CS(0); + 8002ab6: 4b24 ldr r3, [pc, #144] @ (8002b48 ) + 8002ab8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002abc: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002abe: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002ac2: f5a3 7380 sub.w r3, r3, #256 @ 0x100 + 8002ac6: 881b ldrh r3, [r3, #0] + 8002ac8: b29a uxth r2, r3 + 8002aca: 4b20 ldr r3, [pc, #128] @ (8002b4c ) + 8002acc: 60da str r2, [r3, #12] + LCD_WR(0); + 8002ace: 4b1e ldr r3, [pc, #120] @ (8002b48 ) + 8002ad0: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002ad4: 611a str r2, [r3, #16] + LCD_WR(1); + 8002ad6: 4b1c ldr r3, [pc, #112] @ (8002b48 ) + 8002ad8: 2280 movs r2, #128 @ 0x80 + 8002ada: 611a str r2, [r3, #16] + LCD_CS(1); + 8002adc: 4b1a ldr r3, [pc, #104] @ (8002b48 ) + 8002ade: f44f 7200 mov.w r2, #512 @ 0x200 + 8002ae2: 611a str r2, [r3, #16] +} + 8002ae4: bf00 nop + lcd_wr_regno(0xC5); /* VCM control */ + lcd_wr_xdata(0x30); /* 3F */ + 8002ae6: 2030 movs r0, #48 @ 0x30 + 8002ae8: f7fd ff20 bl 800092c + lcd_wr_xdata(0x30); /* 3C */ + 8002aec: 2030 movs r0, #48 @ 0x30 + 8002aee: f7fd ff1d bl 800092c + 8002af2: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002af6: f5a3 7381 sub.w r3, r3, #258 @ 0x102 + 8002afa: 22c7 movs r2, #199 @ 0xc7 + 8002afc: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002afe: 4b12 ldr r3, [pc, #72] @ (8002b48 ) + 8002b00: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002b04: 611a str r2, [r3, #16] + LCD_CS(0); + 8002b06: 4b10 ldr r3, [pc, #64] @ (8002b48 ) + 8002b08: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002b0c: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002b0e: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002b12: f5a3 7381 sub.w r3, r3, #258 @ 0x102 + 8002b16: 881b ldrh r3, [r3, #0] + 8002b18: b29a uxth r2, r3 + 8002b1a: 4b0c ldr r3, [pc, #48] @ (8002b4c ) + 8002b1c: 60da str r2, [r3, #12] + LCD_WR(0); + 8002b1e: 4b0a ldr r3, [pc, #40] @ (8002b48 ) + 8002b20: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002b24: 611a str r2, [r3, #16] + LCD_WR(1); + 8002b26: 4b08 ldr r3, [pc, #32] @ (8002b48 ) + 8002b28: 2280 movs r2, #128 @ 0x80 + 8002b2a: 611a str r2, [r3, #16] + LCD_CS(1); + 8002b2c: 4b06 ldr r3, [pc, #24] @ (8002b48 ) + 8002b2e: f44f 7200 mov.w r2, #512 @ 0x200 + 8002b32: 611a str r2, [r3, #16] +} + 8002b34: bf00 nop + lcd_wr_regno(0xC7); /* VCM control2 */ + lcd_wr_xdata(0XB7); + 8002b36: 20b7 movs r0, #183 @ 0xb7 + 8002b38: f7fd fef8 bl 800092c + 8002b3c: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002b40: e006 b.n 8002b50 + 8002b42: bf00 nop + 8002b44: 2000002c .word 0x2000002c + 8002b48: 40011000 .word 0x40011000 + 8002b4c: 40010c00 .word 0x40010c00 + 8002b50: f5a3 7382 sub.w r3, r3, #260 @ 0x104 + 8002b54: 2236 movs r2, #54 @ 0x36 + 8002b56: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002b58: 4bc1 ldr r3, [pc, #772] @ (8002e60 ) + 8002b5a: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002b5e: 611a str r2, [r3, #16] + LCD_CS(0); + 8002b60: 4bbf ldr r3, [pc, #764] @ (8002e60 ) + 8002b62: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002b66: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002b68: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002b6c: f5a3 7382 sub.w r3, r3, #260 @ 0x104 + 8002b70: 881b ldrh r3, [r3, #0] + 8002b72: b29a uxth r2, r3 + 8002b74: 4bbb ldr r3, [pc, #748] @ (8002e64 ) + 8002b76: 60da str r2, [r3, #12] + LCD_WR(0); + 8002b78: 4bb9 ldr r3, [pc, #740] @ (8002e60 ) + 8002b7a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002b7e: 611a str r2, [r3, #16] + LCD_WR(1); + 8002b80: 4bb7 ldr r3, [pc, #732] @ (8002e60 ) + 8002b82: 2280 movs r2, #128 @ 0x80 + 8002b84: 611a str r2, [r3, #16] + LCD_CS(1); + 8002b86: 4bb6 ldr r3, [pc, #728] @ (8002e60 ) + 8002b88: f44f 7200 mov.w r2, #512 @ 0x200 + 8002b8c: 611a str r2, [r3, #16] +} + 8002b8e: bf00 nop + lcd_wr_regno(0x36); /* Memory Access Control */ + lcd_wr_xdata(0x48); + 8002b90: 2048 movs r0, #72 @ 0x48 + 8002b92: f7fd fecb bl 800092c + 8002b96: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002b9a: f5a3 7383 sub.w r3, r3, #262 @ 0x106 + 8002b9e: 223a movs r2, #58 @ 0x3a + 8002ba0: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002ba2: 4baf ldr r3, [pc, #700] @ (8002e60 ) + 8002ba4: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002ba8: 611a str r2, [r3, #16] + LCD_CS(0); + 8002baa: 4bad ldr r3, [pc, #692] @ (8002e60 ) + 8002bac: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002bb0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002bb2: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002bb6: f5a3 7383 sub.w r3, r3, #262 @ 0x106 + 8002bba: 881b ldrh r3, [r3, #0] + 8002bbc: b29a uxth r2, r3 + 8002bbe: 4ba9 ldr r3, [pc, #676] @ (8002e64 ) + 8002bc0: 60da str r2, [r3, #12] + LCD_WR(0); + 8002bc2: 4ba7 ldr r3, [pc, #668] @ (8002e60 ) + 8002bc4: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002bc8: 611a str r2, [r3, #16] + LCD_WR(1); + 8002bca: 4ba5 ldr r3, [pc, #660] @ (8002e60 ) + 8002bcc: 2280 movs r2, #128 @ 0x80 + 8002bce: 611a str r2, [r3, #16] + LCD_CS(1); + 8002bd0: 4ba3 ldr r3, [pc, #652] @ (8002e60 ) + 8002bd2: f44f 7200 mov.w r2, #512 @ 0x200 + 8002bd6: 611a str r2, [r3, #16] +} + 8002bd8: bf00 nop + lcd_wr_regno(0x3A); + lcd_wr_xdata(0x55); + 8002bda: 2055 movs r0, #85 @ 0x55 + 8002bdc: f7fd fea6 bl 800092c + 8002be0: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002be4: f5a3 7384 sub.w r3, r3, #264 @ 0x108 + 8002be8: 22b1 movs r2, #177 @ 0xb1 + 8002bea: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002bec: 4b9c ldr r3, [pc, #624] @ (8002e60 ) + 8002bee: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002bf2: 611a str r2, [r3, #16] + LCD_CS(0); + 8002bf4: 4b9a ldr r3, [pc, #616] @ (8002e60 ) + 8002bf6: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002bfa: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002bfc: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002c00: f5a3 7384 sub.w r3, r3, #264 @ 0x108 + 8002c04: 881b ldrh r3, [r3, #0] + 8002c06: b29a uxth r2, r3 + 8002c08: 4b96 ldr r3, [pc, #600] @ (8002e64 ) + 8002c0a: 60da str r2, [r3, #12] + LCD_WR(0); + 8002c0c: 4b94 ldr r3, [pc, #592] @ (8002e60 ) + 8002c0e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002c12: 611a str r2, [r3, #16] + LCD_WR(1); + 8002c14: 4b92 ldr r3, [pc, #584] @ (8002e60 ) + 8002c16: 2280 movs r2, #128 @ 0x80 + 8002c18: 611a str r2, [r3, #16] + LCD_CS(1); + 8002c1a: 4b91 ldr r3, [pc, #580] @ (8002e60 ) + 8002c1c: f44f 7200 mov.w r2, #512 @ 0x200 + 8002c20: 611a str r2, [r3, #16] +} + 8002c22: bf00 nop + lcd_wr_regno(0xB1); + lcd_wr_xdata(0x00); + 8002c24: 2000 movs r0, #0 + 8002c26: f7fd fe81 bl 800092c + lcd_wr_xdata(0x1A); + 8002c2a: 201a movs r0, #26 + 8002c2c: f7fd fe7e bl 800092c + 8002c30: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002c34: f5a3 7385 sub.w r3, r3, #266 @ 0x10a + 8002c38: 22b6 movs r2, #182 @ 0xb6 + 8002c3a: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002c3c: 4b88 ldr r3, [pc, #544] @ (8002e60 ) + 8002c3e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002c42: 611a str r2, [r3, #16] + LCD_CS(0); + 8002c44: 4b86 ldr r3, [pc, #536] @ (8002e60 ) + 8002c46: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002c4a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002c4c: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002c50: f5a3 7385 sub.w r3, r3, #266 @ 0x10a + 8002c54: 881b ldrh r3, [r3, #0] + 8002c56: b29a uxth r2, r3 + 8002c58: 4b82 ldr r3, [pc, #520] @ (8002e64 ) + 8002c5a: 60da str r2, [r3, #12] + LCD_WR(0); + 8002c5c: 4b80 ldr r3, [pc, #512] @ (8002e60 ) + 8002c5e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002c62: 611a str r2, [r3, #16] + LCD_WR(1); + 8002c64: 4b7e ldr r3, [pc, #504] @ (8002e60 ) + 8002c66: 2280 movs r2, #128 @ 0x80 + 8002c68: 611a str r2, [r3, #16] + LCD_CS(1); + 8002c6a: 4b7d ldr r3, [pc, #500] @ (8002e60 ) + 8002c6c: f44f 7200 mov.w r2, #512 @ 0x200 + 8002c70: 611a str r2, [r3, #16] +} + 8002c72: bf00 nop + lcd_wr_regno(0xB6); /* Display Function Control */ + lcd_wr_xdata(0x0A); + 8002c74: 200a movs r0, #10 + 8002c76: f7fd fe59 bl 800092c + lcd_wr_xdata(0xA2); + 8002c7a: 20a2 movs r0, #162 @ 0xa2 + 8002c7c: f7fd fe56 bl 800092c + 8002c80: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002c84: f5a3 7386 sub.w r3, r3, #268 @ 0x10c + 8002c88: 22f2 movs r2, #242 @ 0xf2 + 8002c8a: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002c8c: 4b74 ldr r3, [pc, #464] @ (8002e60 ) + 8002c8e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002c92: 611a str r2, [r3, #16] + LCD_CS(0); + 8002c94: 4b72 ldr r3, [pc, #456] @ (8002e60 ) + 8002c96: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002c9a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002c9c: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002ca0: f5a3 7386 sub.w r3, r3, #268 @ 0x10c + 8002ca4: 881b ldrh r3, [r3, #0] + 8002ca6: b29a uxth r2, r3 + 8002ca8: 4b6e ldr r3, [pc, #440] @ (8002e64 ) + 8002caa: 60da str r2, [r3, #12] + LCD_WR(0); + 8002cac: 4b6c ldr r3, [pc, #432] @ (8002e60 ) + 8002cae: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002cb2: 611a str r2, [r3, #16] + LCD_WR(1); + 8002cb4: 4b6a ldr r3, [pc, #424] @ (8002e60 ) + 8002cb6: 2280 movs r2, #128 @ 0x80 + 8002cb8: 611a str r2, [r3, #16] + LCD_CS(1); + 8002cba: 4b69 ldr r3, [pc, #420] @ (8002e60 ) + 8002cbc: f44f 7200 mov.w r2, #512 @ 0x200 + 8002cc0: 611a str r2, [r3, #16] +} + 8002cc2: bf00 nop + lcd_wr_regno(0xF2); /* 3Gamma Function Disable */ + lcd_wr_xdata(0x00); + 8002cc4: 2000 movs r0, #0 + 8002cc6: f7fd fe31 bl 800092c + 8002cca: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002cce: f5a3 7387 sub.w r3, r3, #270 @ 0x10e + 8002cd2: 2226 movs r2, #38 @ 0x26 + 8002cd4: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002cd6: 4b62 ldr r3, [pc, #392] @ (8002e60 ) + 8002cd8: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002cdc: 611a str r2, [r3, #16] + LCD_CS(0); + 8002cde: 4b60 ldr r3, [pc, #384] @ (8002e60 ) + 8002ce0: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002ce4: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002ce6: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002cea: f5a3 7387 sub.w r3, r3, #270 @ 0x10e + 8002cee: 881b ldrh r3, [r3, #0] + 8002cf0: b29a uxth r2, r3 + 8002cf2: 4b5c ldr r3, [pc, #368] @ (8002e64 ) + 8002cf4: 60da str r2, [r3, #12] + LCD_WR(0); + 8002cf6: 4b5a ldr r3, [pc, #360] @ (8002e60 ) + 8002cf8: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002cfc: 611a str r2, [r3, #16] + LCD_WR(1); + 8002cfe: 4b58 ldr r3, [pc, #352] @ (8002e60 ) + 8002d00: 2280 movs r2, #128 @ 0x80 + 8002d02: 611a str r2, [r3, #16] + LCD_CS(1); + 8002d04: 4b56 ldr r3, [pc, #344] @ (8002e60 ) + 8002d06: f44f 7200 mov.w r2, #512 @ 0x200 + 8002d0a: 611a str r2, [r3, #16] +} + 8002d0c: bf00 nop + lcd_wr_regno(0x26); /* Gamma curve selected */ + lcd_wr_xdata(0x01); + 8002d0e: 2001 movs r0, #1 + 8002d10: f7fd fe0c bl 800092c + 8002d14: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002d18: f5a3 7388 sub.w r3, r3, #272 @ 0x110 + 8002d1c: 22e0 movs r2, #224 @ 0xe0 + 8002d1e: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002d20: 4b4f ldr r3, [pc, #316] @ (8002e60 ) + 8002d22: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002d26: 611a str r2, [r3, #16] + LCD_CS(0); + 8002d28: 4b4d ldr r3, [pc, #308] @ (8002e60 ) + 8002d2a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002d2e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002d30: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002d34: f5a3 7388 sub.w r3, r3, #272 @ 0x110 + 8002d38: 881b ldrh r3, [r3, #0] + 8002d3a: b29a uxth r2, r3 + 8002d3c: 4b49 ldr r3, [pc, #292] @ (8002e64 ) + 8002d3e: 60da str r2, [r3, #12] + LCD_WR(0); + 8002d40: 4b47 ldr r3, [pc, #284] @ (8002e60 ) + 8002d42: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002d46: 611a str r2, [r3, #16] + LCD_WR(1); + 8002d48: 4b45 ldr r3, [pc, #276] @ (8002e60 ) + 8002d4a: 2280 movs r2, #128 @ 0x80 + 8002d4c: 611a str r2, [r3, #16] + LCD_CS(1); + 8002d4e: 4b44 ldr r3, [pc, #272] @ (8002e60 ) + 8002d50: f44f 7200 mov.w r2, #512 @ 0x200 + 8002d54: 611a str r2, [r3, #16] +} + 8002d56: bf00 nop + lcd_wr_regno(0xE0); /* Set Gamma */ + lcd_wr_xdata(0x0F); + 8002d58: 200f movs r0, #15 + 8002d5a: f7fd fde7 bl 800092c + lcd_wr_xdata(0x2A); + 8002d5e: 202a movs r0, #42 @ 0x2a + 8002d60: f7fd fde4 bl 800092c + lcd_wr_xdata(0x28); + 8002d64: 2028 movs r0, #40 @ 0x28 + 8002d66: f7fd fde1 bl 800092c + lcd_wr_xdata(0x08); + 8002d6a: 2008 movs r0, #8 + 8002d6c: f7fd fdde bl 800092c + lcd_wr_xdata(0x0E); + 8002d70: 200e movs r0, #14 + 8002d72: f7fd fddb bl 800092c + lcd_wr_xdata(0x08); + 8002d76: 2008 movs r0, #8 + 8002d78: f7fd fdd8 bl 800092c + lcd_wr_xdata(0x54); + 8002d7c: 2054 movs r0, #84 @ 0x54 + 8002d7e: f7fd fdd5 bl 800092c + lcd_wr_xdata(0XA9); + 8002d82: 20a9 movs r0, #169 @ 0xa9 + 8002d84: f7fd fdd2 bl 800092c + lcd_wr_xdata(0x43); + 8002d88: 2043 movs r0, #67 @ 0x43 + 8002d8a: f7fd fdcf bl 800092c + lcd_wr_xdata(0x0A); + 8002d8e: 200a movs r0, #10 + 8002d90: f7fd fdcc bl 800092c + lcd_wr_xdata(0x0F); + 8002d94: 200f movs r0, #15 + 8002d96: f7fd fdc9 bl 800092c + lcd_wr_xdata(0x00); + 8002d9a: 2000 movs r0, #0 + 8002d9c: f7fd fdc6 bl 800092c + lcd_wr_xdata(0x00); + 8002da0: 2000 movs r0, #0 + 8002da2: f7fd fdc3 bl 800092c + lcd_wr_xdata(0x00); + 8002da6: 2000 movs r0, #0 + 8002da8: f7fd fdc0 bl 800092c + lcd_wr_xdata(0x00); + 8002dac: 2000 movs r0, #0 + 8002dae: f7fd fdbd bl 800092c + 8002db2: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002db6: f5a3 7389 sub.w r3, r3, #274 @ 0x112 + 8002dba: 22e1 movs r2, #225 @ 0xe1 + 8002dbc: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002dbe: 4b28 ldr r3, [pc, #160] @ (8002e60 ) + 8002dc0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002dc4: 611a str r2, [r3, #16] + LCD_CS(0); + 8002dc6: 4b26 ldr r3, [pc, #152] @ (8002e60 ) + 8002dc8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002dcc: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002dce: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002dd2: f5a3 7389 sub.w r3, r3, #274 @ 0x112 + 8002dd6: 881b ldrh r3, [r3, #0] + 8002dd8: b29a uxth r2, r3 + 8002dda: 4b22 ldr r3, [pc, #136] @ (8002e64 ) + 8002ddc: 60da str r2, [r3, #12] + LCD_WR(0); + 8002dde: 4b20 ldr r3, [pc, #128] @ (8002e60 ) + 8002de0: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002de4: 611a str r2, [r3, #16] + LCD_WR(1); + 8002de6: 4b1e ldr r3, [pc, #120] @ (8002e60 ) + 8002de8: 2280 movs r2, #128 @ 0x80 + 8002dea: 611a str r2, [r3, #16] + LCD_CS(1); + 8002dec: 4b1c ldr r3, [pc, #112] @ (8002e60 ) + 8002dee: f44f 7200 mov.w r2, #512 @ 0x200 + 8002df2: 611a str r2, [r3, #16] +} + 8002df4: bf00 nop + lcd_wr_regno(0XE1); /* Set Gamma */ + lcd_wr_xdata(0x00); + 8002df6: 2000 movs r0, #0 + 8002df8: f7fd fd98 bl 800092c + lcd_wr_xdata(0x15); + 8002dfc: 2015 movs r0, #21 + 8002dfe: f7fd fd95 bl 800092c + lcd_wr_xdata(0x17); + 8002e02: 2017 movs r0, #23 + 8002e04: f7fd fd92 bl 800092c + lcd_wr_xdata(0x07); + 8002e08: 2007 movs r0, #7 + 8002e0a: f7fd fd8f bl 800092c + lcd_wr_xdata(0x11); + 8002e0e: 2011 movs r0, #17 + 8002e10: f7fd fd8c bl 800092c + lcd_wr_xdata(0x06); + 8002e14: 2006 movs r0, #6 + 8002e16: f7fd fd89 bl 800092c + lcd_wr_xdata(0x2B); + 8002e1a: 202b movs r0, #43 @ 0x2b + 8002e1c: f7fd fd86 bl 800092c + lcd_wr_xdata(0x56); + 8002e20: 2056 movs r0, #86 @ 0x56 + 8002e22: f7fd fd83 bl 800092c + lcd_wr_xdata(0x3C); + 8002e26: 203c movs r0, #60 @ 0x3c + 8002e28: f7fd fd80 bl 800092c + lcd_wr_xdata(0x05); + 8002e2c: 2005 movs r0, #5 + 8002e2e: f7fd fd7d bl 800092c + lcd_wr_xdata(0x10); + 8002e32: 2010 movs r0, #16 + 8002e34: f7fd fd7a bl 800092c + lcd_wr_xdata(0x0F); + 8002e38: 200f movs r0, #15 + 8002e3a: f7fd fd77 bl 800092c + lcd_wr_xdata(0x3F); + 8002e3e: 203f movs r0, #63 @ 0x3f + 8002e40: f7fd fd74 bl 800092c + lcd_wr_xdata(0x3F); + 8002e44: 203f movs r0, #63 @ 0x3f + 8002e46: f7fd fd71 bl 800092c + lcd_wr_xdata(0x0F); + 8002e4a: 200f movs r0, #15 + 8002e4c: f7fd fd6e bl 800092c + 8002e50: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002e54: f5a3 738a sub.w r3, r3, #276 @ 0x114 + 8002e58: 222b movs r2, #43 @ 0x2b + 8002e5a: 801a strh r2, [r3, #0] + 8002e5c: e004 b.n 8002e68 + 8002e5e: bf00 nop + 8002e60: 40011000 .word 0x40011000 + 8002e64: 40010c00 .word 0x40010c00 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002e68: 4b4e ldr r3, [pc, #312] @ (8002fa4 ) + 8002e6a: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002e6e: 611a str r2, [r3, #16] + LCD_CS(0); + 8002e70: 4b4c ldr r3, [pc, #304] @ (8002fa4 ) + 8002e72: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002e76: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002e78: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002e7c: f5a3 738a sub.w r3, r3, #276 @ 0x114 + 8002e80: 881b ldrh r3, [r3, #0] + 8002e82: b29a uxth r2, r3 + 8002e84: 4b48 ldr r3, [pc, #288] @ (8002fa8 ) + 8002e86: 60da str r2, [r3, #12] + LCD_WR(0); + 8002e88: 4b46 ldr r3, [pc, #280] @ (8002fa4 ) + 8002e8a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002e8e: 611a str r2, [r3, #16] + LCD_WR(1); + 8002e90: 4b44 ldr r3, [pc, #272] @ (8002fa4 ) + 8002e92: 2280 movs r2, #128 @ 0x80 + 8002e94: 611a str r2, [r3, #16] + LCD_CS(1); + 8002e96: 4b43 ldr r3, [pc, #268] @ (8002fa4 ) + 8002e98: f44f 7200 mov.w r2, #512 @ 0x200 + 8002e9c: 611a str r2, [r3, #16] +} + 8002e9e: bf00 nop + lcd_wr_regno(0x2B); + lcd_wr_xdata(0x00); + 8002ea0: 2000 movs r0, #0 + 8002ea2: f7fd fd43 bl 800092c + lcd_wr_xdata(0x00); + 8002ea6: 2000 movs r0, #0 + 8002ea8: f7fd fd40 bl 800092c + lcd_wr_xdata(0x01); + 8002eac: 2001 movs r0, #1 + 8002eae: f7fd fd3d bl 800092c + lcd_wr_xdata(0x3f); + 8002eb2: 203f movs r0, #63 @ 0x3f + 8002eb4: f7fd fd3a bl 800092c + 8002eb8: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002ebc: f5a3 738b sub.w r3, r3, #278 @ 0x116 + 8002ec0: 222a movs r2, #42 @ 0x2a + 8002ec2: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002ec4: 4b37 ldr r3, [pc, #220] @ (8002fa4 ) + 8002ec6: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002eca: 611a str r2, [r3, #16] + LCD_CS(0); + 8002ecc: 4b35 ldr r3, [pc, #212] @ (8002fa4 ) + 8002ece: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002ed2: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002ed4: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002ed8: f5a3 738b sub.w r3, r3, #278 @ 0x116 + 8002edc: 881b ldrh r3, [r3, #0] + 8002ede: b29a uxth r2, r3 + 8002ee0: 4b31 ldr r3, [pc, #196] @ (8002fa8 ) + 8002ee2: 60da str r2, [r3, #12] + LCD_WR(0); + 8002ee4: 4b2f ldr r3, [pc, #188] @ (8002fa4 ) + 8002ee6: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002eea: 611a str r2, [r3, #16] + LCD_WR(1); + 8002eec: 4b2d ldr r3, [pc, #180] @ (8002fa4 ) + 8002eee: 2280 movs r2, #128 @ 0x80 + 8002ef0: 611a str r2, [r3, #16] + LCD_CS(1); + 8002ef2: 4b2c ldr r3, [pc, #176] @ (8002fa4 ) + 8002ef4: f44f 7200 mov.w r2, #512 @ 0x200 + 8002ef8: 611a str r2, [r3, #16] +} + 8002efa: bf00 nop + lcd_wr_regno(0x2A); + lcd_wr_xdata(0x00); + 8002efc: 2000 movs r0, #0 + 8002efe: f7fd fd15 bl 800092c + lcd_wr_xdata(0x00); + 8002f02: 2000 movs r0, #0 + 8002f04: f7fd fd12 bl 800092c + lcd_wr_xdata(0x00); + 8002f08: 2000 movs r0, #0 + 8002f0a: f7fd fd0f bl 800092c + lcd_wr_xdata(0xef); + 8002f0e: 20ef movs r0, #239 @ 0xef + 8002f10: f7fd fd0c bl 800092c + 8002f14: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002f18: f5a3 738c sub.w r3, r3, #280 @ 0x118 + 8002f1c: 2211 movs r2, #17 + 8002f1e: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002f20: 4b20 ldr r3, [pc, #128] @ (8002fa4 ) + 8002f22: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002f26: 611a str r2, [r3, #16] + LCD_CS(0); + 8002f28: 4b1e ldr r3, [pc, #120] @ (8002fa4 ) + 8002f2a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002f2e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002f30: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002f34: f5a3 738c sub.w r3, r3, #280 @ 0x118 + 8002f38: 881b ldrh r3, [r3, #0] + 8002f3a: b29a uxth r2, r3 + 8002f3c: 4b1a ldr r3, [pc, #104] @ (8002fa8 ) + 8002f3e: 60da str r2, [r3, #12] + LCD_WR(0); + 8002f40: 4b18 ldr r3, [pc, #96] @ (8002fa4 ) + 8002f42: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002f46: 611a str r2, [r3, #16] + LCD_WR(1); + 8002f48: 4b16 ldr r3, [pc, #88] @ (8002fa4 ) + 8002f4a: 2280 movs r2, #128 @ 0x80 + 8002f4c: 611a str r2, [r3, #16] + LCD_CS(1); + 8002f4e: 4b15 ldr r3, [pc, #84] @ (8002fa4 ) + 8002f50: f44f 7200 mov.w r2, #512 @ 0x200 + 8002f54: 611a str r2, [r3, #16] +} + 8002f56: bf00 nop + lcd_wr_regno(0x11); /* Exit Sleep */ + HAL_Delay(120); + 8002f58: 2078 movs r0, #120 @ 0x78 + 8002f5a: f004 faad bl 80074b8 + 8002f5e: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002f62: f5a3 738d sub.w r3, r3, #282 @ 0x11a + 8002f66: 2229 movs r2, #41 @ 0x29 + 8002f68: 801a strh r2, [r3, #0] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002f6a: 4b0e ldr r3, [pc, #56] @ (8002fa4 ) + 8002f6c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002f70: 611a str r2, [r3, #16] + LCD_CS(0); + 8002f72: 4b0c ldr r3, [pc, #48] @ (8002fa4 ) + 8002f74: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002f78: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002f7a: f507 73b4 add.w r3, r7, #360 @ 0x168 + 8002f7e: f5a3 738d sub.w r3, r3, #282 @ 0x11a + 8002f82: 881b ldrh r3, [r3, #0] + 8002f84: b29a uxth r2, r3 + 8002f86: 4b08 ldr r3, [pc, #32] @ (8002fa8 ) + 8002f88: 60da str r2, [r3, #12] + LCD_WR(0); + 8002f8a: 4b06 ldr r3, [pc, #24] @ (8002fa4 ) + 8002f8c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002f90: 611a str r2, [r3, #16] + LCD_WR(1); + 8002f92: 4b04 ldr r3, [pc, #16] @ (8002fa4 ) + 8002f94: 2280 movs r2, #128 @ 0x80 + 8002f96: 611a str r2, [r3, #16] + LCD_CS(1); + 8002f98: 4b02 ldr r3, [pc, #8] @ (8002fa4 ) + 8002f9a: f44f 7200 mov.w r2, #512 @ 0x200 + 8002f9e: 611a str r2, [r3, #16] +} + 8002fa0: f003 bd4b b.w 8006a3a + 8002fa4: 40011000 .word 0x40011000 + 8002fa8: 40010c00 .word 0x40010c00 + lcd_wr_regno(0x29); /* display on */ + } + else if (lcddev.id == 0x5310) + 8002fac: 4bbe ldr r3, [pc, #760] @ (80032a8 ) + 8002fae: 889b ldrh r3, [r3, #4] + 8002fb0: f245 3210 movw r2, #21264 @ 0x5310 + 8002fb4: 4293 cmp r3, r2 + 8002fb6: f041 846d bne.w 8004894 + 8002fba: 23ed movs r3, #237 @ 0xed + 8002fbc: f8a7 30da strh.w r3, [r7, #218] @ 0xda + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8002fc0: 4bba ldr r3, [pc, #744] @ (80032ac ) + 8002fc2: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8002fc6: 611a str r2, [r3, #16] + LCD_CS(0); + 8002fc8: 4bb8 ldr r3, [pc, #736] @ (80032ac ) + 8002fca: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8002fce: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8002fd0: f8b7 30da ldrh.w r3, [r7, #218] @ 0xda + 8002fd4: b29a uxth r2, r3 + 8002fd6: 4bb6 ldr r3, [pc, #728] @ (80032b0 ) + 8002fd8: 60da str r2, [r3, #12] + LCD_WR(0); + 8002fda: 4bb4 ldr r3, [pc, #720] @ (80032ac ) + 8002fdc: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8002fe0: 611a str r2, [r3, #16] + LCD_WR(1); + 8002fe2: 4bb2 ldr r3, [pc, #712] @ (80032ac ) + 8002fe4: 2280 movs r2, #128 @ 0x80 + 8002fe6: 611a str r2, [r3, #16] + LCD_CS(1); + 8002fe8: 4bb0 ldr r3, [pc, #704] @ (80032ac ) + 8002fea: f44f 7200 mov.w r2, #512 @ 0x200 + 8002fee: 611a str r2, [r3, #16] +} + 8002ff0: bf00 nop + { + //lcd_ex_nt35310_reginit(); /* ִ��NT35310��ʼ�� */ + lcd_wr_regno(0xED); + lcd_wr_xdata(0x01); + 8002ff2: 2001 movs r0, #1 + 8002ff4: f7fd fc9a bl 800092c + lcd_wr_xdata(0xFE); + 8002ff8: 20fe movs r0, #254 @ 0xfe + 8002ffa: f7fd fc97 bl 800092c + 8002ffe: 23ee movs r3, #238 @ 0xee + 8003000: f8a7 30d8 strh.w r3, [r7, #216] @ 0xd8 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003004: 4ba9 ldr r3, [pc, #676] @ (80032ac ) + 8003006: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800300a: 611a str r2, [r3, #16] + LCD_CS(0); + 800300c: 4ba7 ldr r3, [pc, #668] @ (80032ac ) + 800300e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003012: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003014: f8b7 30d8 ldrh.w r3, [r7, #216] @ 0xd8 + 8003018: b29a uxth r2, r3 + 800301a: 4ba5 ldr r3, [pc, #660] @ (80032b0 ) + 800301c: 60da str r2, [r3, #12] + LCD_WR(0); + 800301e: 4ba3 ldr r3, [pc, #652] @ (80032ac ) + 8003020: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003024: 611a str r2, [r3, #16] + LCD_WR(1); + 8003026: 4ba1 ldr r3, [pc, #644] @ (80032ac ) + 8003028: 2280 movs r2, #128 @ 0x80 + 800302a: 611a str r2, [r3, #16] + LCD_CS(1); + 800302c: 4b9f ldr r3, [pc, #636] @ (80032ac ) + 800302e: f44f 7200 mov.w r2, #512 @ 0x200 + 8003032: 611a str r2, [r3, #16] +} + 8003034: bf00 nop + + lcd_wr_regno(0xEE); + lcd_wr_xdata(0xDE); + 8003036: 20de movs r0, #222 @ 0xde + 8003038: f7fd fc78 bl 800092c + lcd_wr_xdata(0x21); + 800303c: 2021 movs r0, #33 @ 0x21 + 800303e: f7fd fc75 bl 800092c + 8003042: 23f1 movs r3, #241 @ 0xf1 + 8003044: f8a7 30d6 strh.w r3, [r7, #214] @ 0xd6 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003048: 4b98 ldr r3, [pc, #608] @ (80032ac ) + 800304a: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800304e: 611a str r2, [r3, #16] + LCD_CS(0); + 8003050: 4b96 ldr r3, [pc, #600] @ (80032ac ) + 8003052: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003056: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003058: f8b7 30d6 ldrh.w r3, [r7, #214] @ 0xd6 + 800305c: b29a uxth r2, r3 + 800305e: 4b94 ldr r3, [pc, #592] @ (80032b0 ) + 8003060: 60da str r2, [r3, #12] + LCD_WR(0); + 8003062: 4b92 ldr r3, [pc, #584] @ (80032ac ) + 8003064: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003068: 611a str r2, [r3, #16] + LCD_WR(1); + 800306a: 4b90 ldr r3, [pc, #576] @ (80032ac ) + 800306c: 2280 movs r2, #128 @ 0x80 + 800306e: 611a str r2, [r3, #16] + LCD_CS(1); + 8003070: 4b8e ldr r3, [pc, #568] @ (80032ac ) + 8003072: f44f 7200 mov.w r2, #512 @ 0x200 + 8003076: 611a str r2, [r3, #16] +} + 8003078: bf00 nop + + lcd_wr_regno(0xF1); + lcd_wr_xdata(0x01); + 800307a: 2001 movs r0, #1 + 800307c: f7fd fc56 bl 800092c + 8003080: 23df movs r3, #223 @ 0xdf + 8003082: f8a7 30d4 strh.w r3, [r7, #212] @ 0xd4 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003086: 4b89 ldr r3, [pc, #548] @ (80032ac ) + 8003088: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800308c: 611a str r2, [r3, #16] + LCD_CS(0); + 800308e: 4b87 ldr r3, [pc, #540] @ (80032ac ) + 8003090: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003094: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003096: f8b7 30d4 ldrh.w r3, [r7, #212] @ 0xd4 + 800309a: b29a uxth r2, r3 + 800309c: 4b84 ldr r3, [pc, #528] @ (80032b0 ) + 800309e: 60da str r2, [r3, #12] + LCD_WR(0); + 80030a0: 4b82 ldr r3, [pc, #520] @ (80032ac ) + 80030a2: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80030a6: 611a str r2, [r3, #16] + LCD_WR(1); + 80030a8: 4b80 ldr r3, [pc, #512] @ (80032ac ) + 80030aa: 2280 movs r2, #128 @ 0x80 + 80030ac: 611a str r2, [r3, #16] + LCD_CS(1); + 80030ae: 4b7f ldr r3, [pc, #508] @ (80032ac ) + 80030b0: f44f 7200 mov.w r2, #512 @ 0x200 + 80030b4: 611a str r2, [r3, #16] +} + 80030b6: bf00 nop + lcd_wr_regno(0xDF); + lcd_wr_xdata(0x10); + 80030b8: 2010 movs r0, #16 + 80030ba: f7fd fc37 bl 800092c + 80030be: 23c4 movs r3, #196 @ 0xc4 + 80030c0: f8a7 30d2 strh.w r3, [r7, #210] @ 0xd2 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80030c4: 4b79 ldr r3, [pc, #484] @ (80032ac ) + 80030c6: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80030ca: 611a str r2, [r3, #16] + LCD_CS(0); + 80030cc: 4b77 ldr r3, [pc, #476] @ (80032ac ) + 80030ce: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80030d2: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80030d4: f8b7 30d2 ldrh.w r3, [r7, #210] @ 0xd2 + 80030d8: b29a uxth r2, r3 + 80030da: 4b75 ldr r3, [pc, #468] @ (80032b0 ) + 80030dc: 60da str r2, [r3, #12] + LCD_WR(0); + 80030de: 4b73 ldr r3, [pc, #460] @ (80032ac ) + 80030e0: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80030e4: 611a str r2, [r3, #16] + LCD_WR(1); + 80030e6: 4b71 ldr r3, [pc, #452] @ (80032ac ) + 80030e8: 2280 movs r2, #128 @ 0x80 + 80030ea: 611a str r2, [r3, #16] + LCD_CS(1); + 80030ec: 4b6f ldr r3, [pc, #444] @ (80032ac ) + 80030ee: f44f 7200 mov.w r2, #512 @ 0x200 + 80030f2: 611a str r2, [r3, #16] +} + 80030f4: bf00 nop + + /* VCOMvoltage */ + lcd_wr_regno(0xC4); + lcd_wr_xdata(0x8F); /* 5f */ + 80030f6: 208f movs r0, #143 @ 0x8f + 80030f8: f7fd fc18 bl 800092c + 80030fc: 23c6 movs r3, #198 @ 0xc6 + 80030fe: f8a7 30d0 strh.w r3, [r7, #208] @ 0xd0 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003102: 4b6a ldr r3, [pc, #424] @ (80032ac ) + 8003104: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003108: 611a str r2, [r3, #16] + LCD_CS(0); + 800310a: 4b68 ldr r3, [pc, #416] @ (80032ac ) + 800310c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003110: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003112: f8b7 30d0 ldrh.w r3, [r7, #208] @ 0xd0 + 8003116: b29a uxth r2, r3 + 8003118: 4b65 ldr r3, [pc, #404] @ (80032b0 ) + 800311a: 60da str r2, [r3, #12] + LCD_WR(0); + 800311c: 4b63 ldr r3, [pc, #396] @ (80032ac ) + 800311e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003122: 611a str r2, [r3, #16] + LCD_WR(1); + 8003124: 4b61 ldr r3, [pc, #388] @ (80032ac ) + 8003126: 2280 movs r2, #128 @ 0x80 + 8003128: 611a str r2, [r3, #16] + LCD_CS(1); + 800312a: 4b60 ldr r3, [pc, #384] @ (80032ac ) + 800312c: f44f 7200 mov.w r2, #512 @ 0x200 + 8003130: 611a str r2, [r3, #16] +} + 8003132: bf00 nop + + lcd_wr_regno(0xC6); + lcd_wr_xdata(0x00); + 8003134: 2000 movs r0, #0 + 8003136: f7fd fbf9 bl 800092c + lcd_wr_xdata(0xE2); + 800313a: 20e2 movs r0, #226 @ 0xe2 + 800313c: f7fd fbf6 bl 800092c + lcd_wr_xdata(0xE2); + 8003140: 20e2 movs r0, #226 @ 0xe2 + 8003142: f7fd fbf3 bl 800092c + lcd_wr_xdata(0xE2); + 8003146: 20e2 movs r0, #226 @ 0xe2 + 8003148: f7fd fbf0 bl 800092c + 800314c: 23bf movs r3, #191 @ 0xbf + 800314e: f8a7 30ce strh.w r3, [r7, #206] @ 0xce + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003152: 4b56 ldr r3, [pc, #344] @ (80032ac ) + 8003154: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003158: 611a str r2, [r3, #16] + LCD_CS(0); + 800315a: 4b54 ldr r3, [pc, #336] @ (80032ac ) + 800315c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003160: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003162: f8b7 30ce ldrh.w r3, [r7, #206] @ 0xce + 8003166: b29a uxth r2, r3 + 8003168: 4b51 ldr r3, [pc, #324] @ (80032b0 ) + 800316a: 60da str r2, [r3, #12] + LCD_WR(0); + 800316c: 4b4f ldr r3, [pc, #316] @ (80032ac ) + 800316e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003172: 611a str r2, [r3, #16] + LCD_WR(1); + 8003174: 4b4d ldr r3, [pc, #308] @ (80032ac ) + 8003176: 2280 movs r2, #128 @ 0x80 + 8003178: 611a str r2, [r3, #16] + LCD_CS(1); + 800317a: 4b4c ldr r3, [pc, #304] @ (80032ac ) + 800317c: f44f 7200 mov.w r2, #512 @ 0x200 + 8003180: 611a str r2, [r3, #16] +} + 8003182: bf00 nop + lcd_wr_regno(0xBF); + lcd_wr_xdata(0xAA); + 8003184: 20aa movs r0, #170 @ 0xaa + 8003186: f7fd fbd1 bl 800092c + 800318a: 23b0 movs r3, #176 @ 0xb0 + 800318c: f8a7 30cc strh.w r3, [r7, #204] @ 0xcc + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003190: 4b46 ldr r3, [pc, #280] @ (80032ac ) + 8003192: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003196: 611a str r2, [r3, #16] + LCD_CS(0); + 8003198: 4b44 ldr r3, [pc, #272] @ (80032ac ) + 800319a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800319e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80031a0: f8b7 30cc ldrh.w r3, [r7, #204] @ 0xcc + 80031a4: b29a uxth r2, r3 + 80031a6: 4b42 ldr r3, [pc, #264] @ (80032b0 ) + 80031a8: 60da str r2, [r3, #12] + LCD_WR(0); + 80031aa: 4b40 ldr r3, [pc, #256] @ (80032ac ) + 80031ac: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80031b0: 611a str r2, [r3, #16] + LCD_WR(1); + 80031b2: 4b3e ldr r3, [pc, #248] @ (80032ac ) + 80031b4: 2280 movs r2, #128 @ 0x80 + 80031b6: 611a str r2, [r3, #16] + LCD_CS(1); + 80031b8: 4b3c ldr r3, [pc, #240] @ (80032ac ) + 80031ba: f44f 7200 mov.w r2, #512 @ 0x200 + 80031be: 611a str r2, [r3, #16] +} + 80031c0: bf00 nop + + lcd_wr_regno(0xB0); + lcd_wr_xdata(0x0D); + 80031c2: 200d movs r0, #13 + 80031c4: f7fd fbb2 bl 800092c + lcd_wr_xdata(0x00); + 80031c8: 2000 movs r0, #0 + 80031ca: f7fd fbaf bl 800092c + lcd_wr_xdata(0x0D); + 80031ce: 200d movs r0, #13 + 80031d0: f7fd fbac bl 800092c + lcd_wr_xdata(0x00); + 80031d4: 2000 movs r0, #0 + 80031d6: f7fd fba9 bl 800092c + lcd_wr_xdata(0x11); + 80031da: 2011 movs r0, #17 + 80031dc: f7fd fba6 bl 800092c + lcd_wr_xdata(0x00); + 80031e0: 2000 movs r0, #0 + 80031e2: f7fd fba3 bl 800092c + lcd_wr_xdata(0x19); + 80031e6: 2019 movs r0, #25 + 80031e8: f7fd fba0 bl 800092c + lcd_wr_xdata(0x00); + 80031ec: 2000 movs r0, #0 + 80031ee: f7fd fb9d bl 800092c + lcd_wr_xdata(0x21); + 80031f2: 2021 movs r0, #33 @ 0x21 + 80031f4: f7fd fb9a bl 800092c + lcd_wr_xdata(0x00); + 80031f8: 2000 movs r0, #0 + 80031fa: f7fd fb97 bl 800092c + lcd_wr_xdata(0x2D); + 80031fe: 202d movs r0, #45 @ 0x2d + 8003200: f7fd fb94 bl 800092c + lcd_wr_xdata(0x00); + 8003204: 2000 movs r0, #0 + 8003206: f7fd fb91 bl 800092c + lcd_wr_xdata(0x3D); + 800320a: 203d movs r0, #61 @ 0x3d + 800320c: f7fd fb8e bl 800092c + lcd_wr_xdata(0x00); + 8003210: 2000 movs r0, #0 + 8003212: f7fd fb8b bl 800092c + lcd_wr_xdata(0x5D); + 8003216: 205d movs r0, #93 @ 0x5d + 8003218: f7fd fb88 bl 800092c + lcd_wr_xdata(0x00); + 800321c: 2000 movs r0, #0 + 800321e: f7fd fb85 bl 800092c + lcd_wr_xdata(0x5D); + 8003222: 205d movs r0, #93 @ 0x5d + 8003224: f7fd fb82 bl 800092c + lcd_wr_xdata(0x00); + 8003228: 2000 movs r0, #0 + 800322a: f7fd fb7f bl 800092c + 800322e: 23b1 movs r3, #177 @ 0xb1 + 8003230: f8a7 30ca strh.w r3, [r7, #202] @ 0xca + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003234: 4b1d ldr r3, [pc, #116] @ (80032ac ) + 8003236: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800323a: 611a str r2, [r3, #16] + LCD_CS(0); + 800323c: 4b1b ldr r3, [pc, #108] @ (80032ac ) + 800323e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003242: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003244: f8b7 30ca ldrh.w r3, [r7, #202] @ 0xca + 8003248: b29a uxth r2, r3 + 800324a: 4b19 ldr r3, [pc, #100] @ (80032b0 ) + 800324c: 60da str r2, [r3, #12] + LCD_WR(0); + 800324e: 4b17 ldr r3, [pc, #92] @ (80032ac ) + 8003250: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003254: 611a str r2, [r3, #16] + LCD_WR(1); + 8003256: 4b15 ldr r3, [pc, #84] @ (80032ac ) + 8003258: 2280 movs r2, #128 @ 0x80 + 800325a: 611a str r2, [r3, #16] + LCD_CS(1); + 800325c: 4b13 ldr r3, [pc, #76] @ (80032ac ) + 800325e: f44f 7200 mov.w r2, #512 @ 0x200 + 8003262: 611a str r2, [r3, #16] +} + 8003264: bf00 nop + + lcd_wr_regno(0xB1); + lcd_wr_xdata(0x80); + 8003266: 2080 movs r0, #128 @ 0x80 + 8003268: f7fd fb60 bl 800092c + lcd_wr_xdata(0x00); + 800326c: 2000 movs r0, #0 + 800326e: f7fd fb5d bl 800092c + lcd_wr_xdata(0x8B); + 8003272: 208b movs r0, #139 @ 0x8b + 8003274: f7fd fb5a bl 800092c + lcd_wr_xdata(0x00); + 8003278: 2000 movs r0, #0 + 800327a: f7fd fb57 bl 800092c + lcd_wr_xdata(0x96); + 800327e: 2096 movs r0, #150 @ 0x96 + 8003280: f7fd fb54 bl 800092c + lcd_wr_xdata(0x00); + 8003284: 2000 movs r0, #0 + 8003286: f7fd fb51 bl 800092c + 800328a: 23b2 movs r3, #178 @ 0xb2 + 800328c: f8a7 30c8 strh.w r3, [r7, #200] @ 0xc8 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003290: 4b06 ldr r3, [pc, #24] @ (80032ac ) + 8003292: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003296: 611a str r2, [r3, #16] + LCD_CS(0); + 8003298: 4b04 ldr r3, [pc, #16] @ (80032ac ) + 800329a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800329e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80032a0: f8b7 30c8 ldrh.w r3, [r7, #200] @ 0xc8 + 80032a4: b29a uxth r2, r3 + 80032a6: e005 b.n 80032b4 + 80032a8: 2000002c .word 0x2000002c + 80032ac: 40011000 .word 0x40011000 + 80032b0: 40010c00 .word 0x40010c00 + 80032b4: 4bd0 ldr r3, [pc, #832] @ (80035f8 ) + 80032b6: 60da str r2, [r3, #12] + LCD_WR(0); + 80032b8: 4bd0 ldr r3, [pc, #832] @ (80035fc ) + 80032ba: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80032be: 611a str r2, [r3, #16] + LCD_WR(1); + 80032c0: 4bce ldr r3, [pc, #824] @ (80035fc ) + 80032c2: 2280 movs r2, #128 @ 0x80 + 80032c4: 611a str r2, [r3, #16] + LCD_CS(1); + 80032c6: 4bcd ldr r3, [pc, #820] @ (80035fc ) + 80032c8: f44f 7200 mov.w r2, #512 @ 0x200 + 80032cc: 611a str r2, [r3, #16] +} + 80032ce: bf00 nop + + lcd_wr_regno(0xB2); + lcd_wr_xdata(0x00); + 80032d0: 2000 movs r0, #0 + 80032d2: f7fd fb2b bl 800092c + lcd_wr_xdata(0x00); + 80032d6: 2000 movs r0, #0 + 80032d8: f7fd fb28 bl 800092c + lcd_wr_xdata(0x02); + 80032dc: 2002 movs r0, #2 + 80032de: f7fd fb25 bl 800092c + lcd_wr_xdata(0x00); + 80032e2: 2000 movs r0, #0 + 80032e4: f7fd fb22 bl 800092c + lcd_wr_xdata(0x03); + 80032e8: 2003 movs r0, #3 + 80032ea: f7fd fb1f bl 800092c + lcd_wr_xdata(0x00); + 80032ee: 2000 movs r0, #0 + 80032f0: f7fd fb1c bl 800092c + 80032f4: 23b3 movs r3, #179 @ 0xb3 + 80032f6: f8a7 30c6 strh.w r3, [r7, #198] @ 0xc6 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80032fa: 4bc0 ldr r3, [pc, #768] @ (80035fc ) + 80032fc: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003300: 611a str r2, [r3, #16] + LCD_CS(0); + 8003302: 4bbe ldr r3, [pc, #760] @ (80035fc ) + 8003304: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003308: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800330a: f8b7 30c6 ldrh.w r3, [r7, #198] @ 0xc6 + 800330e: b29a uxth r2, r3 + 8003310: 4bb9 ldr r3, [pc, #740] @ (80035f8 ) + 8003312: 60da str r2, [r3, #12] + LCD_WR(0); + 8003314: 4bb9 ldr r3, [pc, #740] @ (80035fc ) + 8003316: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800331a: 611a str r2, [r3, #16] + LCD_WR(1); + 800331c: 4bb7 ldr r3, [pc, #732] @ (80035fc ) + 800331e: 2280 movs r2, #128 @ 0x80 + 8003320: 611a str r2, [r3, #16] + LCD_CS(1); + 8003322: 4bb6 ldr r3, [pc, #728] @ (80035fc ) + 8003324: f44f 7200 mov.w r2, #512 @ 0x200 + 8003328: 611a str r2, [r3, #16] +} + 800332a: bf00 nop + + lcd_wr_regno(0xB3); + lcd_wr_xdata(0x00); + 800332c: 2000 movs r0, #0 + 800332e: f7fd fafd bl 800092c + lcd_wr_xdata(0x00); + 8003332: 2000 movs r0, #0 + 8003334: f7fd fafa bl 800092c + lcd_wr_xdata(0x00); + 8003338: 2000 movs r0, #0 + 800333a: f7fd faf7 bl 800092c + lcd_wr_xdata(0x00); + 800333e: 2000 movs r0, #0 + 8003340: f7fd faf4 bl 800092c + lcd_wr_xdata(0x00); + 8003344: 2000 movs r0, #0 + 8003346: f7fd faf1 bl 800092c + lcd_wr_xdata(0x00); + 800334a: 2000 movs r0, #0 + 800334c: f7fd faee bl 800092c + lcd_wr_xdata(0x00); + 8003350: 2000 movs r0, #0 + 8003352: f7fd faeb bl 800092c + lcd_wr_xdata(0x00); + 8003356: 2000 movs r0, #0 + 8003358: f7fd fae8 bl 800092c + lcd_wr_xdata(0x00); + 800335c: 2000 movs r0, #0 + 800335e: f7fd fae5 bl 800092c + lcd_wr_xdata(0x00); + 8003362: 2000 movs r0, #0 + 8003364: f7fd fae2 bl 800092c + lcd_wr_xdata(0x00); + 8003368: 2000 movs r0, #0 + 800336a: f7fd fadf bl 800092c + lcd_wr_xdata(0x00); + 800336e: 2000 movs r0, #0 + 8003370: f7fd fadc bl 800092c + lcd_wr_xdata(0x00); + 8003374: 2000 movs r0, #0 + 8003376: f7fd fad9 bl 800092c + lcd_wr_xdata(0x00); + 800337a: 2000 movs r0, #0 + 800337c: f7fd fad6 bl 800092c + lcd_wr_xdata(0x00); + 8003380: 2000 movs r0, #0 + 8003382: f7fd fad3 bl 800092c + lcd_wr_xdata(0x00); + 8003386: 2000 movs r0, #0 + 8003388: f7fd fad0 bl 800092c + lcd_wr_xdata(0x00); + 800338c: 2000 movs r0, #0 + 800338e: f7fd facd bl 800092c + lcd_wr_xdata(0x00); + 8003392: 2000 movs r0, #0 + 8003394: f7fd faca bl 800092c + lcd_wr_xdata(0x00); + 8003398: 2000 movs r0, #0 + 800339a: f7fd fac7 bl 800092c + lcd_wr_xdata(0x00); + 800339e: 2000 movs r0, #0 + 80033a0: f7fd fac4 bl 800092c + lcd_wr_xdata(0x00); + 80033a4: 2000 movs r0, #0 + 80033a6: f7fd fac1 bl 800092c + lcd_wr_xdata(0x00); + 80033aa: 2000 movs r0, #0 + 80033ac: f7fd fabe bl 800092c + lcd_wr_xdata(0x00); + 80033b0: 2000 movs r0, #0 + 80033b2: f7fd fabb bl 800092c + lcd_wr_xdata(0x00); + 80033b6: 2000 movs r0, #0 + 80033b8: f7fd fab8 bl 800092c + 80033bc: 23b4 movs r3, #180 @ 0xb4 + 80033be: f8a7 30c4 strh.w r3, [r7, #196] @ 0xc4 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80033c2: 4b8e ldr r3, [pc, #568] @ (80035fc ) + 80033c4: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80033c8: 611a str r2, [r3, #16] + LCD_CS(0); + 80033ca: 4b8c ldr r3, [pc, #560] @ (80035fc ) + 80033cc: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80033d0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80033d2: f8b7 30c4 ldrh.w r3, [r7, #196] @ 0xc4 + 80033d6: b29a uxth r2, r3 + 80033d8: 4b87 ldr r3, [pc, #540] @ (80035f8 ) + 80033da: 60da str r2, [r3, #12] + LCD_WR(0); + 80033dc: 4b87 ldr r3, [pc, #540] @ (80035fc ) + 80033de: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80033e2: 611a str r2, [r3, #16] + LCD_WR(1); + 80033e4: 4b85 ldr r3, [pc, #532] @ (80035fc ) + 80033e6: 2280 movs r2, #128 @ 0x80 + 80033e8: 611a str r2, [r3, #16] + LCD_CS(1); + 80033ea: 4b84 ldr r3, [pc, #528] @ (80035fc ) + 80033ec: f44f 7200 mov.w r2, #512 @ 0x200 + 80033f0: 611a str r2, [r3, #16] +} + 80033f2: bf00 nop + + lcd_wr_regno(0xB4); + lcd_wr_xdata(0x8B); + 80033f4: 208b movs r0, #139 @ 0x8b + 80033f6: f7fd fa99 bl 800092c + lcd_wr_xdata(0x00); + 80033fa: 2000 movs r0, #0 + 80033fc: f7fd fa96 bl 800092c + lcd_wr_xdata(0x96); + 8003400: 2096 movs r0, #150 @ 0x96 + 8003402: f7fd fa93 bl 800092c + lcd_wr_xdata(0x00); + 8003406: 2000 movs r0, #0 + 8003408: f7fd fa90 bl 800092c + lcd_wr_xdata(0xA1); + 800340c: 20a1 movs r0, #161 @ 0xa1 + 800340e: f7fd fa8d bl 800092c + lcd_wr_xdata(0x00); + 8003412: 2000 movs r0, #0 + 8003414: f7fd fa8a bl 800092c + 8003418: 23b5 movs r3, #181 @ 0xb5 + 800341a: f8a7 30c2 strh.w r3, [r7, #194] @ 0xc2 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800341e: 4b77 ldr r3, [pc, #476] @ (80035fc ) + 8003420: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003424: 611a str r2, [r3, #16] + LCD_CS(0); + 8003426: 4b75 ldr r3, [pc, #468] @ (80035fc ) + 8003428: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800342c: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800342e: f8b7 30c2 ldrh.w r3, [r7, #194] @ 0xc2 + 8003432: b29a uxth r2, r3 + 8003434: 4b70 ldr r3, [pc, #448] @ (80035f8 ) + 8003436: 60da str r2, [r3, #12] + LCD_WR(0); + 8003438: 4b70 ldr r3, [pc, #448] @ (80035fc ) + 800343a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800343e: 611a str r2, [r3, #16] + LCD_WR(1); + 8003440: 4b6e ldr r3, [pc, #440] @ (80035fc ) + 8003442: 2280 movs r2, #128 @ 0x80 + 8003444: 611a str r2, [r3, #16] + LCD_CS(1); + 8003446: 4b6d ldr r3, [pc, #436] @ (80035fc ) + 8003448: f44f 7200 mov.w r2, #512 @ 0x200 + 800344c: 611a str r2, [r3, #16] +} + 800344e: bf00 nop + + lcd_wr_regno(0xB5); + lcd_wr_xdata(0x02); + 8003450: 2002 movs r0, #2 + 8003452: f7fd fa6b bl 800092c + lcd_wr_xdata(0x00); + 8003456: 2000 movs r0, #0 + 8003458: f7fd fa68 bl 800092c + lcd_wr_xdata(0x03); + 800345c: 2003 movs r0, #3 + 800345e: f7fd fa65 bl 800092c + lcd_wr_xdata(0x00); + 8003462: 2000 movs r0, #0 + 8003464: f7fd fa62 bl 800092c + lcd_wr_xdata(0x04); + 8003468: 2004 movs r0, #4 + 800346a: f7fd fa5f bl 800092c + lcd_wr_xdata(0x00); + 800346e: 2000 movs r0, #0 + 8003470: f7fd fa5c bl 800092c + 8003474: 23b6 movs r3, #182 @ 0xb6 + 8003476: f8a7 30c0 strh.w r3, [r7, #192] @ 0xc0 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800347a: 4b60 ldr r3, [pc, #384] @ (80035fc ) + 800347c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003480: 611a str r2, [r3, #16] + LCD_CS(0); + 8003482: 4b5e ldr r3, [pc, #376] @ (80035fc ) + 8003484: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003488: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800348a: f8b7 30c0 ldrh.w r3, [r7, #192] @ 0xc0 + 800348e: b29a uxth r2, r3 + 8003490: 4b59 ldr r3, [pc, #356] @ (80035f8 ) + 8003492: 60da str r2, [r3, #12] + LCD_WR(0); + 8003494: 4b59 ldr r3, [pc, #356] @ (80035fc ) + 8003496: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800349a: 611a str r2, [r3, #16] + LCD_WR(1); + 800349c: 4b57 ldr r3, [pc, #348] @ (80035fc ) + 800349e: 2280 movs r2, #128 @ 0x80 + 80034a0: 611a str r2, [r3, #16] + LCD_CS(1); + 80034a2: 4b56 ldr r3, [pc, #344] @ (80035fc ) + 80034a4: f44f 7200 mov.w r2, #512 @ 0x200 + 80034a8: 611a str r2, [r3, #16] +} + 80034aa: bf00 nop + + lcd_wr_regno(0xB6); + lcd_wr_xdata(0x00); + 80034ac: 2000 movs r0, #0 + 80034ae: f7fd fa3d bl 800092c + lcd_wr_xdata(0x00); + 80034b2: 2000 movs r0, #0 + 80034b4: f7fd fa3a bl 800092c + 80034b8: 23b7 movs r3, #183 @ 0xb7 + 80034ba: f8a7 30be strh.w r3, [r7, #190] @ 0xbe + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80034be: 4b4f ldr r3, [pc, #316] @ (80035fc ) + 80034c0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80034c4: 611a str r2, [r3, #16] + LCD_CS(0); + 80034c6: 4b4d ldr r3, [pc, #308] @ (80035fc ) + 80034c8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80034cc: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80034ce: f8b7 30be ldrh.w r3, [r7, #190] @ 0xbe + 80034d2: b29a uxth r2, r3 + 80034d4: 4b48 ldr r3, [pc, #288] @ (80035f8 ) + 80034d6: 60da str r2, [r3, #12] + LCD_WR(0); + 80034d8: 4b48 ldr r3, [pc, #288] @ (80035fc ) + 80034da: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80034de: 611a str r2, [r3, #16] + LCD_WR(1); + 80034e0: 4b46 ldr r3, [pc, #280] @ (80035fc ) + 80034e2: 2280 movs r2, #128 @ 0x80 + 80034e4: 611a str r2, [r3, #16] + LCD_CS(1); + 80034e6: 4b45 ldr r3, [pc, #276] @ (80035fc ) + 80034e8: f44f 7200 mov.w r2, #512 @ 0x200 + 80034ec: 611a str r2, [r3, #16] +} + 80034ee: bf00 nop + + lcd_wr_regno(0xB7); + lcd_wr_xdata(0x00); + 80034f0: 2000 movs r0, #0 + 80034f2: f7fd fa1b bl 800092c + lcd_wr_xdata(0x00); + 80034f6: 2000 movs r0, #0 + 80034f8: f7fd fa18 bl 800092c + lcd_wr_xdata(0x3F); + 80034fc: 203f movs r0, #63 @ 0x3f + 80034fe: f7fd fa15 bl 800092c + lcd_wr_xdata(0x00); + 8003502: 2000 movs r0, #0 + 8003504: f7fd fa12 bl 800092c + lcd_wr_xdata(0x5E); + 8003508: 205e movs r0, #94 @ 0x5e + 800350a: f7fd fa0f bl 800092c + lcd_wr_xdata(0x00); + 800350e: 2000 movs r0, #0 + 8003510: f7fd fa0c bl 800092c + lcd_wr_xdata(0x64); + 8003514: 2064 movs r0, #100 @ 0x64 + 8003516: f7fd fa09 bl 800092c + lcd_wr_xdata(0x00); + 800351a: 2000 movs r0, #0 + 800351c: f7fd fa06 bl 800092c + lcd_wr_xdata(0x8C); + 8003520: 208c movs r0, #140 @ 0x8c + 8003522: f7fd fa03 bl 800092c + lcd_wr_xdata(0x00); + 8003526: 2000 movs r0, #0 + 8003528: f7fd fa00 bl 800092c + lcd_wr_xdata(0xAC); + 800352c: 20ac movs r0, #172 @ 0xac + 800352e: f7fd f9fd bl 800092c + lcd_wr_xdata(0x00); + 8003532: 2000 movs r0, #0 + 8003534: f7fd f9fa bl 800092c + lcd_wr_xdata(0xDC); + 8003538: 20dc movs r0, #220 @ 0xdc + 800353a: f7fd f9f7 bl 800092c + lcd_wr_xdata(0x00); + 800353e: 2000 movs r0, #0 + 8003540: f7fd f9f4 bl 800092c + lcd_wr_xdata(0x70); + 8003544: 2070 movs r0, #112 @ 0x70 + 8003546: f7fd f9f1 bl 800092c + lcd_wr_xdata(0x00); + 800354a: 2000 movs r0, #0 + 800354c: f7fd f9ee bl 800092c + lcd_wr_xdata(0x90); + 8003550: 2090 movs r0, #144 @ 0x90 + 8003552: f7fd f9eb bl 800092c + lcd_wr_xdata(0x00); + 8003556: 2000 movs r0, #0 + 8003558: f7fd f9e8 bl 800092c + lcd_wr_xdata(0xEB); + 800355c: 20eb movs r0, #235 @ 0xeb + 800355e: f7fd f9e5 bl 800092c + lcd_wr_xdata(0x00); + 8003562: 2000 movs r0, #0 + 8003564: f7fd f9e2 bl 800092c + lcd_wr_xdata(0xDC); + 8003568: 20dc movs r0, #220 @ 0xdc + 800356a: f7fd f9df bl 800092c + lcd_wr_xdata(0x00); + 800356e: 2000 movs r0, #0 + 8003570: f7fd f9dc bl 800092c + 8003574: 23b8 movs r3, #184 @ 0xb8 + 8003576: f8a7 30bc strh.w r3, [r7, #188] @ 0xbc + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800357a: 4b20 ldr r3, [pc, #128] @ (80035fc ) + 800357c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003580: 611a str r2, [r3, #16] + LCD_CS(0); + 8003582: 4b1e ldr r3, [pc, #120] @ (80035fc ) + 8003584: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003588: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800358a: f8b7 30bc ldrh.w r3, [r7, #188] @ 0xbc + 800358e: b29a uxth r2, r3 + 8003590: 4b19 ldr r3, [pc, #100] @ (80035f8 ) + 8003592: 60da str r2, [r3, #12] + LCD_WR(0); + 8003594: 4b19 ldr r3, [pc, #100] @ (80035fc ) + 8003596: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800359a: 611a str r2, [r3, #16] + LCD_WR(1); + 800359c: 4b17 ldr r3, [pc, #92] @ (80035fc ) + 800359e: 2280 movs r2, #128 @ 0x80 + 80035a0: 611a str r2, [r3, #16] + LCD_CS(1); + 80035a2: 4b16 ldr r3, [pc, #88] @ (80035fc ) + 80035a4: f44f 7200 mov.w r2, #512 @ 0x200 + 80035a8: 611a str r2, [r3, #16] +} + 80035aa: bf00 nop + + lcd_wr_regno(0xB8); + lcd_wr_xdata(0x00); + 80035ac: 2000 movs r0, #0 + 80035ae: f7fd f9bd bl 800092c + lcd_wr_xdata(0x00); + 80035b2: 2000 movs r0, #0 + 80035b4: f7fd f9ba bl 800092c + lcd_wr_xdata(0x00); + 80035b8: 2000 movs r0, #0 + 80035ba: f7fd f9b7 bl 800092c + lcd_wr_xdata(0x00); + 80035be: 2000 movs r0, #0 + 80035c0: f7fd f9b4 bl 800092c + lcd_wr_xdata(0x00); + 80035c4: 2000 movs r0, #0 + 80035c6: f7fd f9b1 bl 800092c + lcd_wr_xdata(0x00); + 80035ca: 2000 movs r0, #0 + 80035cc: f7fd f9ae bl 800092c + lcd_wr_xdata(0x00); + 80035d0: 2000 movs r0, #0 + 80035d2: f7fd f9ab bl 800092c + lcd_wr_xdata(0x00); + 80035d6: 2000 movs r0, #0 + 80035d8: f7fd f9a8 bl 800092c + 80035dc: 23ba movs r3, #186 @ 0xba + 80035de: f8a7 30ba strh.w r3, [r7, #186] @ 0xba + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80035e2: 4b06 ldr r3, [pc, #24] @ (80035fc ) + 80035e4: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80035e8: 611a str r2, [r3, #16] + LCD_CS(0); + 80035ea: 4b04 ldr r3, [pc, #16] @ (80035fc ) + 80035ec: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80035f0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80035f2: f8b7 30ba ldrh.w r3, [r7, #186] @ 0xba + 80035f6: e003 b.n 8003600 + 80035f8: 40010c00 .word 0x40010c00 + 80035fc: 40011000 .word 0x40011000 + 8003600: b29a uxth r2, r3 + 8003602: 4bd9 ldr r3, [pc, #868] @ (8003968 ) + 8003604: 60da str r2, [r3, #12] + LCD_WR(0); + 8003606: 4bd9 ldr r3, [pc, #868] @ (800396c ) + 8003608: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800360c: 611a str r2, [r3, #16] + LCD_WR(1); + 800360e: 4bd7 ldr r3, [pc, #860] @ (800396c ) + 8003610: 2280 movs r2, #128 @ 0x80 + 8003612: 611a str r2, [r3, #16] + LCD_CS(1); + 8003614: 4bd5 ldr r3, [pc, #852] @ (800396c ) + 8003616: f44f 7200 mov.w r2, #512 @ 0x200 + 800361a: 611a str r2, [r3, #16] +} + 800361c: bf00 nop + + lcd_wr_regno(0xBA); + lcd_wr_xdata(0x24); + 800361e: 2024 movs r0, #36 @ 0x24 + 8003620: f7fd f984 bl 800092c + lcd_wr_xdata(0x00); + 8003624: 2000 movs r0, #0 + 8003626: f7fd f981 bl 800092c + lcd_wr_xdata(0x00); + 800362a: 2000 movs r0, #0 + 800362c: f7fd f97e bl 800092c + lcd_wr_xdata(0x00); + 8003630: 2000 movs r0, #0 + 8003632: f7fd f97b bl 800092c + 8003636: 23c1 movs r3, #193 @ 0xc1 + 8003638: f8a7 30b8 strh.w r3, [r7, #184] @ 0xb8 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800363c: 4bcb ldr r3, [pc, #812] @ (800396c ) + 800363e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003642: 611a str r2, [r3, #16] + LCD_CS(0); + 8003644: 4bc9 ldr r3, [pc, #804] @ (800396c ) + 8003646: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800364a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800364c: f8b7 30b8 ldrh.w r3, [r7, #184] @ 0xb8 + 8003650: b29a uxth r2, r3 + 8003652: 4bc5 ldr r3, [pc, #788] @ (8003968 ) + 8003654: 60da str r2, [r3, #12] + LCD_WR(0); + 8003656: 4bc5 ldr r3, [pc, #788] @ (800396c ) + 8003658: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800365c: 611a str r2, [r3, #16] + LCD_WR(1); + 800365e: 4bc3 ldr r3, [pc, #780] @ (800396c ) + 8003660: 2280 movs r2, #128 @ 0x80 + 8003662: 611a str r2, [r3, #16] + LCD_CS(1); + 8003664: 4bc1 ldr r3, [pc, #772] @ (800396c ) + 8003666: f44f 7200 mov.w r2, #512 @ 0x200 + 800366a: 611a str r2, [r3, #16] +} + 800366c: bf00 nop + + lcd_wr_regno(0xC1); + lcd_wr_xdata(0x20); + 800366e: 2020 movs r0, #32 + 8003670: f7fd f95c bl 800092c + lcd_wr_xdata(0x00); + 8003674: 2000 movs r0, #0 + 8003676: f7fd f959 bl 800092c + lcd_wr_xdata(0x54); + 800367a: 2054 movs r0, #84 @ 0x54 + 800367c: f7fd f956 bl 800092c + lcd_wr_xdata(0x00); + 8003680: 2000 movs r0, #0 + 8003682: f7fd f953 bl 800092c + lcd_wr_xdata(0xFF); + 8003686: 20ff movs r0, #255 @ 0xff + 8003688: f7fd f950 bl 800092c + lcd_wr_xdata(0x00); + 800368c: 2000 movs r0, #0 + 800368e: f7fd f94d bl 800092c + 8003692: 23c2 movs r3, #194 @ 0xc2 + 8003694: f8a7 30b6 strh.w r3, [r7, #182] @ 0xb6 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003698: 4bb4 ldr r3, [pc, #720] @ (800396c ) + 800369a: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800369e: 611a str r2, [r3, #16] + LCD_CS(0); + 80036a0: 4bb2 ldr r3, [pc, #712] @ (800396c ) + 80036a2: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80036a6: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80036a8: f8b7 30b6 ldrh.w r3, [r7, #182] @ 0xb6 + 80036ac: b29a uxth r2, r3 + 80036ae: 4bae ldr r3, [pc, #696] @ (8003968 ) + 80036b0: 60da str r2, [r3, #12] + LCD_WR(0); + 80036b2: 4bae ldr r3, [pc, #696] @ (800396c ) + 80036b4: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80036b8: 611a str r2, [r3, #16] + LCD_WR(1); + 80036ba: 4bac ldr r3, [pc, #688] @ (800396c ) + 80036bc: 2280 movs r2, #128 @ 0x80 + 80036be: 611a str r2, [r3, #16] + LCD_CS(1); + 80036c0: 4baa ldr r3, [pc, #680] @ (800396c ) + 80036c2: f44f 7200 mov.w r2, #512 @ 0x200 + 80036c6: 611a str r2, [r3, #16] +} + 80036c8: bf00 nop + + lcd_wr_regno(0xC2); + lcd_wr_xdata(0x0A); + 80036ca: 200a movs r0, #10 + 80036cc: f7fd f92e bl 800092c + lcd_wr_xdata(0x00); + 80036d0: 2000 movs r0, #0 + 80036d2: f7fd f92b bl 800092c + lcd_wr_xdata(0x04); + 80036d6: 2004 movs r0, #4 + 80036d8: f7fd f928 bl 800092c + lcd_wr_xdata(0x00); + 80036dc: 2000 movs r0, #0 + 80036de: f7fd f925 bl 800092c + 80036e2: 23c3 movs r3, #195 @ 0xc3 + 80036e4: f8a7 30b4 strh.w r3, [r7, #180] @ 0xb4 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80036e8: 4ba0 ldr r3, [pc, #640] @ (800396c ) + 80036ea: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80036ee: 611a str r2, [r3, #16] + LCD_CS(0); + 80036f0: 4b9e ldr r3, [pc, #632] @ (800396c ) + 80036f2: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80036f6: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80036f8: f8b7 30b4 ldrh.w r3, [r7, #180] @ 0xb4 + 80036fc: b29a uxth r2, r3 + 80036fe: 4b9a ldr r3, [pc, #616] @ (8003968 ) + 8003700: 60da str r2, [r3, #12] + LCD_WR(0); + 8003702: 4b9a ldr r3, [pc, #616] @ (800396c ) + 8003704: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003708: 611a str r2, [r3, #16] + LCD_WR(1); + 800370a: 4b98 ldr r3, [pc, #608] @ (800396c ) + 800370c: 2280 movs r2, #128 @ 0x80 + 800370e: 611a str r2, [r3, #16] + LCD_CS(1); + 8003710: 4b96 ldr r3, [pc, #600] @ (800396c ) + 8003712: f44f 7200 mov.w r2, #512 @ 0x200 + 8003716: 611a str r2, [r3, #16] +} + 8003718: bf00 nop + + lcd_wr_regno(0xC3); + lcd_wr_xdata(0x3C); + 800371a: 203c movs r0, #60 @ 0x3c + 800371c: f7fd f906 bl 800092c + lcd_wr_xdata(0x00); + 8003720: 2000 movs r0, #0 + 8003722: f7fd f903 bl 800092c + lcd_wr_xdata(0x3A); + 8003726: 203a movs r0, #58 @ 0x3a + 8003728: f7fd f900 bl 800092c + lcd_wr_xdata(0x00); + 800372c: 2000 movs r0, #0 + 800372e: f7fd f8fd bl 800092c + lcd_wr_xdata(0x39); + 8003732: 2039 movs r0, #57 @ 0x39 + 8003734: f7fd f8fa bl 800092c + lcd_wr_xdata(0x00); + 8003738: 2000 movs r0, #0 + 800373a: f7fd f8f7 bl 800092c + lcd_wr_xdata(0x37); + 800373e: 2037 movs r0, #55 @ 0x37 + 8003740: f7fd f8f4 bl 800092c + lcd_wr_xdata(0x00); + 8003744: 2000 movs r0, #0 + 8003746: f7fd f8f1 bl 800092c + lcd_wr_xdata(0x3C); + 800374a: 203c movs r0, #60 @ 0x3c + 800374c: f7fd f8ee bl 800092c + lcd_wr_xdata(0x00); + 8003750: 2000 movs r0, #0 + 8003752: f7fd f8eb bl 800092c + lcd_wr_xdata(0x36); + 8003756: 2036 movs r0, #54 @ 0x36 + 8003758: f7fd f8e8 bl 800092c + lcd_wr_xdata(0x00); + 800375c: 2000 movs r0, #0 + 800375e: f7fd f8e5 bl 800092c + lcd_wr_xdata(0x32); + 8003762: 2032 movs r0, #50 @ 0x32 + 8003764: f7fd f8e2 bl 800092c + lcd_wr_xdata(0x00); + 8003768: 2000 movs r0, #0 + 800376a: f7fd f8df bl 800092c + lcd_wr_xdata(0x2F); + 800376e: 202f movs r0, #47 @ 0x2f + 8003770: f7fd f8dc bl 800092c + lcd_wr_xdata(0x00); + 8003774: 2000 movs r0, #0 + 8003776: f7fd f8d9 bl 800092c + lcd_wr_xdata(0x2C); + 800377a: 202c movs r0, #44 @ 0x2c + 800377c: f7fd f8d6 bl 800092c + lcd_wr_xdata(0x00); + 8003780: 2000 movs r0, #0 + 8003782: f7fd f8d3 bl 800092c + lcd_wr_xdata(0x29); + 8003786: 2029 movs r0, #41 @ 0x29 + 8003788: f7fd f8d0 bl 800092c + lcd_wr_xdata(0x00); + 800378c: 2000 movs r0, #0 + 800378e: f7fd f8cd bl 800092c + lcd_wr_xdata(0x26); + 8003792: 2026 movs r0, #38 @ 0x26 + 8003794: f7fd f8ca bl 800092c + lcd_wr_xdata(0x00); + 8003798: 2000 movs r0, #0 + 800379a: f7fd f8c7 bl 800092c + lcd_wr_xdata(0x24); + 800379e: 2024 movs r0, #36 @ 0x24 + 80037a0: f7fd f8c4 bl 800092c + lcd_wr_xdata(0x00); + 80037a4: 2000 movs r0, #0 + 80037a6: f7fd f8c1 bl 800092c + lcd_wr_xdata(0x24); + 80037aa: 2024 movs r0, #36 @ 0x24 + 80037ac: f7fd f8be bl 800092c + lcd_wr_xdata(0x00); + 80037b0: 2000 movs r0, #0 + 80037b2: f7fd f8bb bl 800092c + lcd_wr_xdata(0x23); + 80037b6: 2023 movs r0, #35 @ 0x23 + 80037b8: f7fd f8b8 bl 800092c + lcd_wr_xdata(0x00); + 80037bc: 2000 movs r0, #0 + 80037be: f7fd f8b5 bl 800092c + lcd_wr_xdata(0x3C); + 80037c2: 203c movs r0, #60 @ 0x3c + 80037c4: f7fd f8b2 bl 800092c + lcd_wr_xdata(0x00); + 80037c8: 2000 movs r0, #0 + 80037ca: f7fd f8af bl 800092c + lcd_wr_xdata(0x36); + 80037ce: 2036 movs r0, #54 @ 0x36 + 80037d0: f7fd f8ac bl 800092c + lcd_wr_xdata(0x00); + 80037d4: 2000 movs r0, #0 + 80037d6: f7fd f8a9 bl 800092c + lcd_wr_xdata(0x32); + 80037da: 2032 movs r0, #50 @ 0x32 + 80037dc: f7fd f8a6 bl 800092c + lcd_wr_xdata(0x00); + 80037e0: 2000 movs r0, #0 + 80037e2: f7fd f8a3 bl 800092c + lcd_wr_xdata(0x2F); + 80037e6: 202f movs r0, #47 @ 0x2f + 80037e8: f7fd f8a0 bl 800092c + lcd_wr_xdata(0x00); + 80037ec: 2000 movs r0, #0 + 80037ee: f7fd f89d bl 800092c + lcd_wr_xdata(0x2C); + 80037f2: 202c movs r0, #44 @ 0x2c + 80037f4: f7fd f89a bl 800092c + lcd_wr_xdata(0x00); + 80037f8: 2000 movs r0, #0 + 80037fa: f7fd f897 bl 800092c + lcd_wr_xdata(0x29); + 80037fe: 2029 movs r0, #41 @ 0x29 + 8003800: f7fd f894 bl 800092c + lcd_wr_xdata(0x00); + 8003804: 2000 movs r0, #0 + 8003806: f7fd f891 bl 800092c + lcd_wr_xdata(0x26); + 800380a: 2026 movs r0, #38 @ 0x26 + 800380c: f7fd f88e bl 800092c + lcd_wr_xdata(0x00); + 8003810: 2000 movs r0, #0 + 8003812: f7fd f88b bl 800092c + lcd_wr_xdata(0x24); + 8003816: 2024 movs r0, #36 @ 0x24 + 8003818: f7fd f888 bl 800092c + lcd_wr_xdata(0x00); + 800381c: 2000 movs r0, #0 + 800381e: f7fd f885 bl 800092c + lcd_wr_xdata(0x24); + 8003822: 2024 movs r0, #36 @ 0x24 + 8003824: f7fd f882 bl 800092c + lcd_wr_xdata(0x00); + 8003828: 2000 movs r0, #0 + 800382a: f7fd f87f bl 800092c + lcd_wr_xdata(0x23); + 800382e: 2023 movs r0, #35 @ 0x23 + 8003830: f7fd f87c bl 800092c + lcd_wr_xdata(0x00); + 8003834: 2000 movs r0, #0 + 8003836: f7fd f879 bl 800092c + 800383a: 23c4 movs r3, #196 @ 0xc4 + 800383c: f8a7 30b2 strh.w r3, [r7, #178] @ 0xb2 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003840: 4b4a ldr r3, [pc, #296] @ (800396c ) + 8003842: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003846: 611a str r2, [r3, #16] + LCD_CS(0); + 8003848: 4b48 ldr r3, [pc, #288] @ (800396c ) + 800384a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800384e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003850: f8b7 30b2 ldrh.w r3, [r7, #178] @ 0xb2 + 8003854: b29a uxth r2, r3 + 8003856: 4b44 ldr r3, [pc, #272] @ (8003968 ) + 8003858: 60da str r2, [r3, #12] + LCD_WR(0); + 800385a: 4b44 ldr r3, [pc, #272] @ (800396c ) + 800385c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003860: 611a str r2, [r3, #16] + LCD_WR(1); + 8003862: 4b42 ldr r3, [pc, #264] @ (800396c ) + 8003864: 2280 movs r2, #128 @ 0x80 + 8003866: 611a str r2, [r3, #16] + LCD_CS(1); + 8003868: 4b40 ldr r3, [pc, #256] @ (800396c ) + 800386a: f44f 7200 mov.w r2, #512 @ 0x200 + 800386e: 611a str r2, [r3, #16] +} + 8003870: bf00 nop + + lcd_wr_regno(0xC4); + lcd_wr_xdata(0x62); + 8003872: 2062 movs r0, #98 @ 0x62 + 8003874: f7fd f85a bl 800092c + lcd_wr_xdata(0x00); + 8003878: 2000 movs r0, #0 + 800387a: f7fd f857 bl 800092c + lcd_wr_xdata(0x05); + 800387e: 2005 movs r0, #5 + 8003880: f7fd f854 bl 800092c + lcd_wr_xdata(0x00); + 8003884: 2000 movs r0, #0 + 8003886: f7fd f851 bl 800092c + lcd_wr_xdata(0x84); + 800388a: 2084 movs r0, #132 @ 0x84 + 800388c: f7fd f84e bl 800092c + lcd_wr_xdata(0x00); + 8003890: 2000 movs r0, #0 + 8003892: f7fd f84b bl 800092c + lcd_wr_xdata(0xF0); + 8003896: 20f0 movs r0, #240 @ 0xf0 + 8003898: f7fd f848 bl 800092c + lcd_wr_xdata(0x00); + 800389c: 2000 movs r0, #0 + 800389e: f7fd f845 bl 800092c + lcd_wr_xdata(0x18); + 80038a2: 2018 movs r0, #24 + 80038a4: f7fd f842 bl 800092c + lcd_wr_xdata(0x00); + 80038a8: 2000 movs r0, #0 + 80038aa: f7fd f83f bl 800092c + lcd_wr_xdata(0xA4); + 80038ae: 20a4 movs r0, #164 @ 0xa4 + 80038b0: f7fd f83c bl 800092c + lcd_wr_xdata(0x00); + 80038b4: 2000 movs r0, #0 + 80038b6: f7fd f839 bl 800092c + lcd_wr_xdata(0x18); + 80038ba: 2018 movs r0, #24 + 80038bc: f7fd f836 bl 800092c + lcd_wr_xdata(0x00); + 80038c0: 2000 movs r0, #0 + 80038c2: f7fd f833 bl 800092c + lcd_wr_xdata(0x50); + 80038c6: 2050 movs r0, #80 @ 0x50 + 80038c8: f7fd f830 bl 800092c + lcd_wr_xdata(0x00); + 80038cc: 2000 movs r0, #0 + 80038ce: f7fd f82d bl 800092c + lcd_wr_xdata(0x0C); + 80038d2: 200c movs r0, #12 + 80038d4: f7fd f82a bl 800092c + lcd_wr_xdata(0x00); + 80038d8: 2000 movs r0, #0 + 80038da: f7fd f827 bl 800092c + lcd_wr_xdata(0x17); + 80038de: 2017 movs r0, #23 + 80038e0: f7fd f824 bl 800092c + lcd_wr_xdata(0x00); + 80038e4: 2000 movs r0, #0 + 80038e6: f7fd f821 bl 800092c + lcd_wr_xdata(0x95); + 80038ea: 2095 movs r0, #149 @ 0x95 + 80038ec: f7fd f81e bl 800092c + lcd_wr_xdata(0x00); + 80038f0: 2000 movs r0, #0 + 80038f2: f7fd f81b bl 800092c + lcd_wr_xdata(0xF3); + 80038f6: 20f3 movs r0, #243 @ 0xf3 + 80038f8: f7fd f818 bl 800092c + lcd_wr_xdata(0x00); + 80038fc: 2000 movs r0, #0 + 80038fe: f7fd f815 bl 800092c + lcd_wr_xdata(0xE6); + 8003902: 20e6 movs r0, #230 @ 0xe6 + 8003904: f7fd f812 bl 800092c + lcd_wr_xdata(0x00); + 8003908: 2000 movs r0, #0 + 800390a: f7fd f80f bl 800092c + 800390e: 23c5 movs r3, #197 @ 0xc5 + 8003910: f8a7 30b0 strh.w r3, [r7, #176] @ 0xb0 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003914: 4b15 ldr r3, [pc, #84] @ (800396c ) + 8003916: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800391a: 611a str r2, [r3, #16] + LCD_CS(0); + 800391c: 4b13 ldr r3, [pc, #76] @ (800396c ) + 800391e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003922: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003924: f8b7 30b0 ldrh.w r3, [r7, #176] @ 0xb0 + 8003928: b29a uxth r2, r3 + 800392a: 4b0f ldr r3, [pc, #60] @ (8003968 ) + 800392c: 60da str r2, [r3, #12] + LCD_WR(0); + 800392e: 4b0f ldr r3, [pc, #60] @ (800396c ) + 8003930: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003934: 611a str r2, [r3, #16] + LCD_WR(1); + 8003936: 4b0d ldr r3, [pc, #52] @ (800396c ) + 8003938: 2280 movs r2, #128 @ 0x80 + 800393a: 611a str r2, [r3, #16] + LCD_CS(1); + 800393c: 4b0b ldr r3, [pc, #44] @ (800396c ) + 800393e: f44f 7200 mov.w r2, #512 @ 0x200 + 8003942: 611a str r2, [r3, #16] +} + 8003944: bf00 nop + + lcd_wr_regno(0xC5); + lcd_wr_xdata(0x32); + 8003946: 2032 movs r0, #50 @ 0x32 + 8003948: f7fc fff0 bl 800092c + lcd_wr_xdata(0x00); + 800394c: 2000 movs r0, #0 + 800394e: f7fc ffed bl 800092c + lcd_wr_xdata(0x44); + 8003952: 2044 movs r0, #68 @ 0x44 + 8003954: f7fc ffea bl 800092c + lcd_wr_xdata(0x00); + 8003958: 2000 movs r0, #0 + 800395a: f7fc ffe7 bl 800092c + lcd_wr_xdata(0x65); + 800395e: 2065 movs r0, #101 @ 0x65 + 8003960: f7fc ffe4 bl 800092c + lcd_wr_xdata(0x00); + 8003964: 2000 movs r0, #0 + 8003966: e003 b.n 8003970 + 8003968: 40010c00 .word 0x40010c00 + 800396c: 40011000 .word 0x40011000 + 8003970: f7fc ffdc bl 800092c + lcd_wr_xdata(0x76); + 8003974: 2076 movs r0, #118 @ 0x76 + 8003976: f7fc ffd9 bl 800092c + lcd_wr_xdata(0x00); + 800397a: 2000 movs r0, #0 + 800397c: f7fc ffd6 bl 800092c + lcd_wr_xdata(0x88); + 8003980: 2088 movs r0, #136 @ 0x88 + 8003982: f7fc ffd3 bl 800092c + lcd_wr_xdata(0x00); + 8003986: 2000 movs r0, #0 + 8003988: f7fc ffd0 bl 800092c + 800398c: 23c6 movs r3, #198 @ 0xc6 + 800398e: f8a7 30ae strh.w r3, [r7, #174] @ 0xae + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003992: 4bd7 ldr r3, [pc, #860] @ (8003cf0 ) + 8003994: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003998: 611a str r2, [r3, #16] + LCD_CS(0); + 800399a: 4bd5 ldr r3, [pc, #852] @ (8003cf0 ) + 800399c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80039a0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80039a2: f8b7 30ae ldrh.w r3, [r7, #174] @ 0xae + 80039a6: b29a uxth r2, r3 + 80039a8: 4bd2 ldr r3, [pc, #840] @ (8003cf4 ) + 80039aa: 60da str r2, [r3, #12] + LCD_WR(0); + 80039ac: 4bd0 ldr r3, [pc, #832] @ (8003cf0 ) + 80039ae: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80039b2: 611a str r2, [r3, #16] + LCD_WR(1); + 80039b4: 4bce ldr r3, [pc, #824] @ (8003cf0 ) + 80039b6: 2280 movs r2, #128 @ 0x80 + 80039b8: 611a str r2, [r3, #16] + LCD_CS(1); + 80039ba: 4bcd ldr r3, [pc, #820] @ (8003cf0 ) + 80039bc: f44f 7200 mov.w r2, #512 @ 0x200 + 80039c0: 611a str r2, [r3, #16] +} + 80039c2: bf00 nop + + lcd_wr_regno(0xC6); + lcd_wr_xdata(0x20); + 80039c4: 2020 movs r0, #32 + 80039c6: f7fc ffb1 bl 800092c + lcd_wr_xdata(0x00); + 80039ca: 2000 movs r0, #0 + 80039cc: f7fc ffae bl 800092c + lcd_wr_xdata(0x17); + 80039d0: 2017 movs r0, #23 + 80039d2: f7fc ffab bl 800092c + lcd_wr_xdata(0x00); + 80039d6: 2000 movs r0, #0 + 80039d8: f7fc ffa8 bl 800092c + lcd_wr_xdata(0x01); + 80039dc: 2001 movs r0, #1 + 80039de: f7fc ffa5 bl 800092c + lcd_wr_xdata(0x00); + 80039e2: 2000 movs r0, #0 + 80039e4: f7fc ffa2 bl 800092c + 80039e8: 23c7 movs r3, #199 @ 0xc7 + 80039ea: f8a7 30ac strh.w r3, [r7, #172] @ 0xac + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80039ee: 4bc0 ldr r3, [pc, #768] @ (8003cf0 ) + 80039f0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80039f4: 611a str r2, [r3, #16] + LCD_CS(0); + 80039f6: 4bbe ldr r3, [pc, #760] @ (8003cf0 ) + 80039f8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80039fc: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80039fe: f8b7 30ac ldrh.w r3, [r7, #172] @ 0xac + 8003a02: b29a uxth r2, r3 + 8003a04: 4bbb ldr r3, [pc, #748] @ (8003cf4 ) + 8003a06: 60da str r2, [r3, #12] + LCD_WR(0); + 8003a08: 4bb9 ldr r3, [pc, #740] @ (8003cf0 ) + 8003a0a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003a0e: 611a str r2, [r3, #16] + LCD_WR(1); + 8003a10: 4bb7 ldr r3, [pc, #732] @ (8003cf0 ) + 8003a12: 2280 movs r2, #128 @ 0x80 + 8003a14: 611a str r2, [r3, #16] + LCD_CS(1); + 8003a16: 4bb6 ldr r3, [pc, #728] @ (8003cf0 ) + 8003a18: f44f 7200 mov.w r2, #512 @ 0x200 + 8003a1c: 611a str r2, [r3, #16] +} + 8003a1e: bf00 nop + + lcd_wr_regno(0xC7); + lcd_wr_xdata(0x00); + 8003a20: 2000 movs r0, #0 + 8003a22: f7fc ff83 bl 800092c + lcd_wr_xdata(0x00); + 8003a26: 2000 movs r0, #0 + 8003a28: f7fc ff80 bl 800092c + lcd_wr_xdata(0x00); + 8003a2c: 2000 movs r0, #0 + 8003a2e: f7fc ff7d bl 800092c + lcd_wr_xdata(0x00); + 8003a32: 2000 movs r0, #0 + 8003a34: f7fc ff7a bl 800092c + 8003a38: 23c8 movs r3, #200 @ 0xc8 + 8003a3a: f8a7 30aa strh.w r3, [r7, #170] @ 0xaa + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003a3e: 4bac ldr r3, [pc, #688] @ (8003cf0 ) + 8003a40: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003a44: 611a str r2, [r3, #16] + LCD_CS(0); + 8003a46: 4baa ldr r3, [pc, #680] @ (8003cf0 ) + 8003a48: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003a4c: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003a4e: f8b7 30aa ldrh.w r3, [r7, #170] @ 0xaa + 8003a52: b29a uxth r2, r3 + 8003a54: 4ba7 ldr r3, [pc, #668] @ (8003cf4 ) + 8003a56: 60da str r2, [r3, #12] + LCD_WR(0); + 8003a58: 4ba5 ldr r3, [pc, #660] @ (8003cf0 ) + 8003a5a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003a5e: 611a str r2, [r3, #16] + LCD_WR(1); + 8003a60: 4ba3 ldr r3, [pc, #652] @ (8003cf0 ) + 8003a62: 2280 movs r2, #128 @ 0x80 + 8003a64: 611a str r2, [r3, #16] + LCD_CS(1); + 8003a66: 4ba2 ldr r3, [pc, #648] @ (8003cf0 ) + 8003a68: f44f 7200 mov.w r2, #512 @ 0x200 + 8003a6c: 611a str r2, [r3, #16] +} + 8003a6e: bf00 nop + + lcd_wr_regno(0xC8); + lcd_wr_xdata(0x00); + 8003a70: 2000 movs r0, #0 + 8003a72: f7fc ff5b bl 800092c + lcd_wr_xdata(0x00); + 8003a76: 2000 movs r0, #0 + 8003a78: f7fc ff58 bl 800092c + lcd_wr_xdata(0x00); + 8003a7c: 2000 movs r0, #0 + 8003a7e: f7fc ff55 bl 800092c + lcd_wr_xdata(0x00); + 8003a82: 2000 movs r0, #0 + 8003a84: f7fc ff52 bl 800092c + 8003a88: 23c9 movs r3, #201 @ 0xc9 + 8003a8a: f8a7 30a8 strh.w r3, [r7, #168] @ 0xa8 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003a8e: 4b98 ldr r3, [pc, #608] @ (8003cf0 ) + 8003a90: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003a94: 611a str r2, [r3, #16] + LCD_CS(0); + 8003a96: 4b96 ldr r3, [pc, #600] @ (8003cf0 ) + 8003a98: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003a9c: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003a9e: f8b7 30a8 ldrh.w r3, [r7, #168] @ 0xa8 + 8003aa2: b29a uxth r2, r3 + 8003aa4: 4b93 ldr r3, [pc, #588] @ (8003cf4 ) + 8003aa6: 60da str r2, [r3, #12] + LCD_WR(0); + 8003aa8: 4b91 ldr r3, [pc, #580] @ (8003cf0 ) + 8003aaa: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003aae: 611a str r2, [r3, #16] + LCD_WR(1); + 8003ab0: 4b8f ldr r3, [pc, #572] @ (8003cf0 ) + 8003ab2: 2280 movs r2, #128 @ 0x80 + 8003ab4: 611a str r2, [r3, #16] + LCD_CS(1); + 8003ab6: 4b8e ldr r3, [pc, #568] @ (8003cf0 ) + 8003ab8: f44f 7200 mov.w r2, #512 @ 0x200 + 8003abc: 611a str r2, [r3, #16] +} + 8003abe: bf00 nop + + lcd_wr_regno(0xC9); + lcd_wr_xdata(0x00); + 8003ac0: 2000 movs r0, #0 + 8003ac2: f7fc ff33 bl 800092c + lcd_wr_xdata(0x00); + 8003ac6: 2000 movs r0, #0 + 8003ac8: f7fc ff30 bl 800092c + lcd_wr_xdata(0x00); + 8003acc: 2000 movs r0, #0 + 8003ace: f7fc ff2d bl 800092c + lcd_wr_xdata(0x00); + 8003ad2: 2000 movs r0, #0 + 8003ad4: f7fc ff2a bl 800092c + lcd_wr_xdata(0x00); + 8003ad8: 2000 movs r0, #0 + 8003ada: f7fc ff27 bl 800092c + lcd_wr_xdata(0x00); + 8003ade: 2000 movs r0, #0 + 8003ae0: f7fc ff24 bl 800092c + lcd_wr_xdata(0x00); + 8003ae4: 2000 movs r0, #0 + 8003ae6: f7fc ff21 bl 800092c + lcd_wr_xdata(0x00); + 8003aea: 2000 movs r0, #0 + 8003aec: f7fc ff1e bl 800092c + lcd_wr_xdata(0x00); + 8003af0: 2000 movs r0, #0 + 8003af2: f7fc ff1b bl 800092c + lcd_wr_xdata(0x00); + 8003af6: 2000 movs r0, #0 + 8003af8: f7fc ff18 bl 800092c + lcd_wr_xdata(0x00); + 8003afc: 2000 movs r0, #0 + 8003afe: f7fc ff15 bl 800092c + lcd_wr_xdata(0x00); + 8003b02: 2000 movs r0, #0 + 8003b04: f7fc ff12 bl 800092c + lcd_wr_xdata(0x00); + 8003b08: 2000 movs r0, #0 + 8003b0a: f7fc ff0f bl 800092c + lcd_wr_xdata(0x00); + 8003b0e: 2000 movs r0, #0 + 8003b10: f7fc ff0c bl 800092c + lcd_wr_xdata(0x00); + 8003b14: 2000 movs r0, #0 + 8003b16: f7fc ff09 bl 800092c + lcd_wr_xdata(0x00); + 8003b1a: 2000 movs r0, #0 + 8003b1c: f7fc ff06 bl 800092c + 8003b20: 23e0 movs r3, #224 @ 0xe0 + 8003b22: f8a7 30a6 strh.w r3, [r7, #166] @ 0xa6 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003b26: 4b72 ldr r3, [pc, #456] @ (8003cf0 ) + 8003b28: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003b2c: 611a str r2, [r3, #16] + LCD_CS(0); + 8003b2e: 4b70 ldr r3, [pc, #448] @ (8003cf0 ) + 8003b30: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003b34: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003b36: f8b7 30a6 ldrh.w r3, [r7, #166] @ 0xa6 + 8003b3a: b29a uxth r2, r3 + 8003b3c: 4b6d ldr r3, [pc, #436] @ (8003cf4 ) + 8003b3e: 60da str r2, [r3, #12] + LCD_WR(0); + 8003b40: 4b6b ldr r3, [pc, #428] @ (8003cf0 ) + 8003b42: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003b46: 611a str r2, [r3, #16] + LCD_WR(1); + 8003b48: 4b69 ldr r3, [pc, #420] @ (8003cf0 ) + 8003b4a: 2280 movs r2, #128 @ 0x80 + 8003b4c: 611a str r2, [r3, #16] + LCD_CS(1); + 8003b4e: 4b68 ldr r3, [pc, #416] @ (8003cf0 ) + 8003b50: f44f 7200 mov.w r2, #512 @ 0x200 + 8003b54: 611a str r2, [r3, #16] +} + 8003b56: bf00 nop + + lcd_wr_regno(0xE0); + lcd_wr_xdata(0x16); + 8003b58: 2016 movs r0, #22 + 8003b5a: f7fc fee7 bl 800092c + lcd_wr_xdata(0x00); + 8003b5e: 2000 movs r0, #0 + 8003b60: f7fc fee4 bl 800092c + lcd_wr_xdata(0x1C); + 8003b64: 201c movs r0, #28 + 8003b66: f7fc fee1 bl 800092c + lcd_wr_xdata(0x00); + 8003b6a: 2000 movs r0, #0 + 8003b6c: f7fc fede bl 800092c + lcd_wr_xdata(0x21); + 8003b70: 2021 movs r0, #33 @ 0x21 + 8003b72: f7fc fedb bl 800092c + lcd_wr_xdata(0x00); + 8003b76: 2000 movs r0, #0 + 8003b78: f7fc fed8 bl 800092c + lcd_wr_xdata(0x36); + 8003b7c: 2036 movs r0, #54 @ 0x36 + 8003b7e: f7fc fed5 bl 800092c + lcd_wr_xdata(0x00); + 8003b82: 2000 movs r0, #0 + 8003b84: f7fc fed2 bl 800092c + lcd_wr_xdata(0x46); + 8003b88: 2046 movs r0, #70 @ 0x46 + 8003b8a: f7fc fecf bl 800092c + lcd_wr_xdata(0x00); + 8003b8e: 2000 movs r0, #0 + 8003b90: f7fc fecc bl 800092c + lcd_wr_xdata(0x52); + 8003b94: 2052 movs r0, #82 @ 0x52 + 8003b96: f7fc fec9 bl 800092c + lcd_wr_xdata(0x00); + 8003b9a: 2000 movs r0, #0 + 8003b9c: f7fc fec6 bl 800092c + lcd_wr_xdata(0x64); + 8003ba0: 2064 movs r0, #100 @ 0x64 + 8003ba2: f7fc fec3 bl 800092c + lcd_wr_xdata(0x00); + 8003ba6: 2000 movs r0, #0 + 8003ba8: f7fc fec0 bl 800092c + lcd_wr_xdata(0x7A); + 8003bac: 207a movs r0, #122 @ 0x7a + 8003bae: f7fc febd bl 800092c + lcd_wr_xdata(0x00); + 8003bb2: 2000 movs r0, #0 + 8003bb4: f7fc feba bl 800092c + lcd_wr_xdata(0x8B); + 8003bb8: 208b movs r0, #139 @ 0x8b + 8003bba: f7fc feb7 bl 800092c + lcd_wr_xdata(0x00); + 8003bbe: 2000 movs r0, #0 + 8003bc0: f7fc feb4 bl 800092c + lcd_wr_xdata(0x99); + 8003bc4: 2099 movs r0, #153 @ 0x99 + 8003bc6: f7fc feb1 bl 800092c + lcd_wr_xdata(0x00); + 8003bca: 2000 movs r0, #0 + 8003bcc: f7fc feae bl 800092c + lcd_wr_xdata(0xA8); + 8003bd0: 20a8 movs r0, #168 @ 0xa8 + 8003bd2: f7fc feab bl 800092c + lcd_wr_xdata(0x00); + 8003bd6: 2000 movs r0, #0 + 8003bd8: f7fc fea8 bl 800092c + lcd_wr_xdata(0xB9); + 8003bdc: 20b9 movs r0, #185 @ 0xb9 + 8003bde: f7fc fea5 bl 800092c + lcd_wr_xdata(0x00); + 8003be2: 2000 movs r0, #0 + 8003be4: f7fc fea2 bl 800092c + lcd_wr_xdata(0xC4); + 8003be8: 20c4 movs r0, #196 @ 0xc4 + 8003bea: f7fc fe9f bl 800092c + lcd_wr_xdata(0x00); + 8003bee: 2000 movs r0, #0 + 8003bf0: f7fc fe9c bl 800092c + lcd_wr_xdata(0xCA); + 8003bf4: 20ca movs r0, #202 @ 0xca + 8003bf6: f7fc fe99 bl 800092c + lcd_wr_xdata(0x00); + 8003bfa: 2000 movs r0, #0 + 8003bfc: f7fc fe96 bl 800092c + lcd_wr_xdata(0xD2); + 8003c00: 20d2 movs r0, #210 @ 0xd2 + 8003c02: f7fc fe93 bl 800092c + lcd_wr_xdata(0x00); + 8003c06: 2000 movs r0, #0 + 8003c08: f7fc fe90 bl 800092c + lcd_wr_xdata(0xD9); + 8003c0c: 20d9 movs r0, #217 @ 0xd9 + 8003c0e: f7fc fe8d bl 800092c + lcd_wr_xdata(0x00); + 8003c12: 2000 movs r0, #0 + 8003c14: f7fc fe8a bl 800092c + lcd_wr_xdata(0xE0); + 8003c18: 20e0 movs r0, #224 @ 0xe0 + 8003c1a: f7fc fe87 bl 800092c + lcd_wr_xdata(0x00); + 8003c1e: 2000 movs r0, #0 + 8003c20: f7fc fe84 bl 800092c + lcd_wr_xdata(0xF3); + 8003c24: 20f3 movs r0, #243 @ 0xf3 + 8003c26: f7fc fe81 bl 800092c + lcd_wr_xdata(0x00); + 8003c2a: 2000 movs r0, #0 + 8003c2c: f7fc fe7e bl 800092c + 8003c30: 23e1 movs r3, #225 @ 0xe1 + 8003c32: f8a7 30a4 strh.w r3, [r7, #164] @ 0xa4 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003c36: 4b2e ldr r3, [pc, #184] @ (8003cf0 ) + 8003c38: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003c3c: 611a str r2, [r3, #16] + LCD_CS(0); + 8003c3e: 4b2c ldr r3, [pc, #176] @ (8003cf0 ) + 8003c40: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003c44: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003c46: f8b7 30a4 ldrh.w r3, [r7, #164] @ 0xa4 + 8003c4a: b29a uxth r2, r3 + 8003c4c: 4b29 ldr r3, [pc, #164] @ (8003cf4 ) + 8003c4e: 60da str r2, [r3, #12] + LCD_WR(0); + 8003c50: 4b27 ldr r3, [pc, #156] @ (8003cf0 ) + 8003c52: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003c56: 611a str r2, [r3, #16] + LCD_WR(1); + 8003c58: 4b25 ldr r3, [pc, #148] @ (8003cf0 ) + 8003c5a: 2280 movs r2, #128 @ 0x80 + 8003c5c: 611a str r2, [r3, #16] + LCD_CS(1); + 8003c5e: 4b24 ldr r3, [pc, #144] @ (8003cf0 ) + 8003c60: f44f 7200 mov.w r2, #512 @ 0x200 + 8003c64: 611a str r2, [r3, #16] +} + 8003c66: bf00 nop + + lcd_wr_regno(0xE1); + lcd_wr_xdata(0x16); + 8003c68: 2016 movs r0, #22 + 8003c6a: f7fc fe5f bl 800092c + lcd_wr_xdata(0x00); + 8003c6e: 2000 movs r0, #0 + 8003c70: f7fc fe5c bl 800092c + lcd_wr_xdata(0x1C); + 8003c74: 201c movs r0, #28 + 8003c76: f7fc fe59 bl 800092c + lcd_wr_xdata(0x00); + 8003c7a: 2000 movs r0, #0 + 8003c7c: f7fc fe56 bl 800092c + lcd_wr_xdata(0x22); + 8003c80: 2022 movs r0, #34 @ 0x22 + 8003c82: f7fc fe53 bl 800092c + lcd_wr_xdata(0x00); + 8003c86: 2000 movs r0, #0 + 8003c88: f7fc fe50 bl 800092c + lcd_wr_xdata(0x36); + 8003c8c: 2036 movs r0, #54 @ 0x36 + 8003c8e: f7fc fe4d bl 800092c + lcd_wr_xdata(0x00); + 8003c92: 2000 movs r0, #0 + 8003c94: f7fc fe4a bl 800092c + lcd_wr_xdata(0x45); + 8003c98: 2045 movs r0, #69 @ 0x45 + 8003c9a: f7fc fe47 bl 800092c + lcd_wr_xdata(0x00); + 8003c9e: 2000 movs r0, #0 + 8003ca0: f7fc fe44 bl 800092c + lcd_wr_xdata(0x52); + 8003ca4: 2052 movs r0, #82 @ 0x52 + 8003ca6: f7fc fe41 bl 800092c + lcd_wr_xdata(0x00); + 8003caa: 2000 movs r0, #0 + 8003cac: f7fc fe3e bl 800092c + lcd_wr_xdata(0x64); + 8003cb0: 2064 movs r0, #100 @ 0x64 + 8003cb2: f7fc fe3b bl 800092c + lcd_wr_xdata(0x00); + 8003cb6: 2000 movs r0, #0 + 8003cb8: f7fc fe38 bl 800092c + lcd_wr_xdata(0x7A); + 8003cbc: 207a movs r0, #122 @ 0x7a + 8003cbe: f7fc fe35 bl 800092c + lcd_wr_xdata(0x00); + 8003cc2: 2000 movs r0, #0 + 8003cc4: f7fc fe32 bl 800092c + lcd_wr_xdata(0x8B); + 8003cc8: 208b movs r0, #139 @ 0x8b + 8003cca: f7fc fe2f bl 800092c + lcd_wr_xdata(0x00); + 8003cce: 2000 movs r0, #0 + 8003cd0: f7fc fe2c bl 800092c + lcd_wr_xdata(0x99); + 8003cd4: 2099 movs r0, #153 @ 0x99 + 8003cd6: f7fc fe29 bl 800092c + lcd_wr_xdata(0x00); + 8003cda: 2000 movs r0, #0 + 8003cdc: f7fc fe26 bl 800092c + lcd_wr_xdata(0xA8); + 8003ce0: 20a8 movs r0, #168 @ 0xa8 + 8003ce2: f7fc fe23 bl 800092c + lcd_wr_xdata(0x00); + 8003ce6: 2000 movs r0, #0 + 8003ce8: f7fc fe20 bl 800092c + lcd_wr_xdata(0xB9); + 8003cec: 20b9 movs r0, #185 @ 0xb9 + 8003cee: e003 b.n 8003cf8 + 8003cf0: 40011000 .word 0x40011000 + 8003cf4: 40010c00 .word 0x40010c00 + 8003cf8: f7fc fe18 bl 800092c + lcd_wr_xdata(0x00); + 8003cfc: 2000 movs r0, #0 + 8003cfe: f7fc fe15 bl 800092c + lcd_wr_xdata(0xC4); + 8003d02: 20c4 movs r0, #196 @ 0xc4 + 8003d04: f7fc fe12 bl 800092c + lcd_wr_xdata(0x00); + 8003d08: 2000 movs r0, #0 + 8003d0a: f7fc fe0f bl 800092c + lcd_wr_xdata(0xCA); + 8003d0e: 20ca movs r0, #202 @ 0xca + 8003d10: f7fc fe0c bl 800092c + lcd_wr_xdata(0x00); + 8003d14: 2000 movs r0, #0 + 8003d16: f7fc fe09 bl 800092c + lcd_wr_xdata(0xD2); + 8003d1a: 20d2 movs r0, #210 @ 0xd2 + 8003d1c: f7fc fe06 bl 800092c + lcd_wr_xdata(0x00); + 8003d20: 2000 movs r0, #0 + 8003d22: f7fc fe03 bl 800092c + lcd_wr_xdata(0xD8); + 8003d26: 20d8 movs r0, #216 @ 0xd8 + 8003d28: f7fc fe00 bl 800092c + lcd_wr_xdata(0x00); + 8003d2c: 2000 movs r0, #0 + 8003d2e: f7fc fdfd bl 800092c + lcd_wr_xdata(0xE0); + 8003d32: 20e0 movs r0, #224 @ 0xe0 + 8003d34: f7fc fdfa bl 800092c + lcd_wr_xdata(0x00); + 8003d38: 2000 movs r0, #0 + 8003d3a: f7fc fdf7 bl 800092c + lcd_wr_xdata(0xF3); + 8003d3e: 20f3 movs r0, #243 @ 0xf3 + 8003d40: f7fc fdf4 bl 800092c + lcd_wr_xdata(0x00); + 8003d44: 2000 movs r0, #0 + 8003d46: f7fc fdf1 bl 800092c + 8003d4a: 23e2 movs r3, #226 @ 0xe2 + 8003d4c: f8a7 30a2 strh.w r3, [r7, #162] @ 0xa2 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003d50: 4be3 ldr r3, [pc, #908] @ (80040e0 ) + 8003d52: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003d56: 611a str r2, [r3, #16] + LCD_CS(0); + 8003d58: 4be1 ldr r3, [pc, #900] @ (80040e0 ) + 8003d5a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003d5e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003d60: f8b7 30a2 ldrh.w r3, [r7, #162] @ 0xa2 + 8003d64: b29a uxth r2, r3 + 8003d66: 4bdf ldr r3, [pc, #892] @ (80040e4 ) + 8003d68: 60da str r2, [r3, #12] + LCD_WR(0); + 8003d6a: 4bdd ldr r3, [pc, #884] @ (80040e0 ) + 8003d6c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003d70: 611a str r2, [r3, #16] + LCD_WR(1); + 8003d72: 4bdb ldr r3, [pc, #876] @ (80040e0 ) + 8003d74: 2280 movs r2, #128 @ 0x80 + 8003d76: 611a str r2, [r3, #16] + LCD_CS(1); + 8003d78: 4bd9 ldr r3, [pc, #868] @ (80040e0 ) + 8003d7a: f44f 7200 mov.w r2, #512 @ 0x200 + 8003d7e: 611a str r2, [r3, #16] +} + 8003d80: bf00 nop + + lcd_wr_regno(0xE2); + lcd_wr_xdata(0x05); + 8003d82: 2005 movs r0, #5 + 8003d84: f7fc fdd2 bl 800092c + lcd_wr_xdata(0x00); + 8003d88: 2000 movs r0, #0 + 8003d8a: f7fc fdcf bl 800092c + lcd_wr_xdata(0x0B); + 8003d8e: 200b movs r0, #11 + 8003d90: f7fc fdcc bl 800092c + lcd_wr_xdata(0x00); + 8003d94: 2000 movs r0, #0 + 8003d96: f7fc fdc9 bl 800092c + lcd_wr_xdata(0x1B); + 8003d9a: 201b movs r0, #27 + 8003d9c: f7fc fdc6 bl 800092c + lcd_wr_xdata(0x00); + 8003da0: 2000 movs r0, #0 + 8003da2: f7fc fdc3 bl 800092c + lcd_wr_xdata(0x34); + 8003da6: 2034 movs r0, #52 @ 0x34 + 8003da8: f7fc fdc0 bl 800092c + lcd_wr_xdata(0x00); + 8003dac: 2000 movs r0, #0 + 8003dae: f7fc fdbd bl 800092c + lcd_wr_xdata(0x44); + 8003db2: 2044 movs r0, #68 @ 0x44 + 8003db4: f7fc fdba bl 800092c + lcd_wr_xdata(0x00); + 8003db8: 2000 movs r0, #0 + 8003dba: f7fc fdb7 bl 800092c + lcd_wr_xdata(0x4F); + 8003dbe: 204f movs r0, #79 @ 0x4f + 8003dc0: f7fc fdb4 bl 800092c + lcd_wr_xdata(0x00); + 8003dc4: 2000 movs r0, #0 + 8003dc6: f7fc fdb1 bl 800092c + lcd_wr_xdata(0x61); + 8003dca: 2061 movs r0, #97 @ 0x61 + 8003dcc: f7fc fdae bl 800092c + lcd_wr_xdata(0x00); + 8003dd0: 2000 movs r0, #0 + 8003dd2: f7fc fdab bl 800092c + lcd_wr_xdata(0x79); + 8003dd6: 2079 movs r0, #121 @ 0x79 + 8003dd8: f7fc fda8 bl 800092c + lcd_wr_xdata(0x00); + 8003ddc: 2000 movs r0, #0 + 8003dde: f7fc fda5 bl 800092c + lcd_wr_xdata(0x88); + 8003de2: 2088 movs r0, #136 @ 0x88 + 8003de4: f7fc fda2 bl 800092c + lcd_wr_xdata(0x00); + 8003de8: 2000 movs r0, #0 + 8003dea: f7fc fd9f bl 800092c + lcd_wr_xdata(0x97); + 8003dee: 2097 movs r0, #151 @ 0x97 + 8003df0: f7fc fd9c bl 800092c + lcd_wr_xdata(0x00); + 8003df4: 2000 movs r0, #0 + 8003df6: f7fc fd99 bl 800092c + lcd_wr_xdata(0xA6); + 8003dfa: 20a6 movs r0, #166 @ 0xa6 + 8003dfc: f7fc fd96 bl 800092c + lcd_wr_xdata(0x00); + 8003e00: 2000 movs r0, #0 + 8003e02: f7fc fd93 bl 800092c + lcd_wr_xdata(0xB7); + 8003e06: 20b7 movs r0, #183 @ 0xb7 + 8003e08: f7fc fd90 bl 800092c + lcd_wr_xdata(0x00); + 8003e0c: 2000 movs r0, #0 + 8003e0e: f7fc fd8d bl 800092c + lcd_wr_xdata(0xC2); + 8003e12: 20c2 movs r0, #194 @ 0xc2 + 8003e14: f7fc fd8a bl 800092c + lcd_wr_xdata(0x00); + 8003e18: 2000 movs r0, #0 + 8003e1a: f7fc fd87 bl 800092c + lcd_wr_xdata(0xC7); + 8003e1e: 20c7 movs r0, #199 @ 0xc7 + 8003e20: f7fc fd84 bl 800092c + lcd_wr_xdata(0x00); + 8003e24: 2000 movs r0, #0 + 8003e26: f7fc fd81 bl 800092c + lcd_wr_xdata(0xD1); + 8003e2a: 20d1 movs r0, #209 @ 0xd1 + 8003e2c: f7fc fd7e bl 800092c + lcd_wr_xdata(0x00); + 8003e30: 2000 movs r0, #0 + 8003e32: f7fc fd7b bl 800092c + lcd_wr_xdata(0xD6); + 8003e36: 20d6 movs r0, #214 @ 0xd6 + 8003e38: f7fc fd78 bl 800092c + lcd_wr_xdata(0x00); + 8003e3c: 2000 movs r0, #0 + 8003e3e: f7fc fd75 bl 800092c + lcd_wr_xdata(0xDD); + 8003e42: 20dd movs r0, #221 @ 0xdd + 8003e44: f7fc fd72 bl 800092c + lcd_wr_xdata(0x00); + 8003e48: 2000 movs r0, #0 + 8003e4a: f7fc fd6f bl 800092c + lcd_wr_xdata(0xF3); + 8003e4e: 20f3 movs r0, #243 @ 0xf3 + 8003e50: f7fc fd6c bl 800092c + lcd_wr_xdata(0x00); + 8003e54: 2000 movs r0, #0 + 8003e56: f7fc fd69 bl 800092c + 8003e5a: 23e3 movs r3, #227 @ 0xe3 + 8003e5c: f8a7 30a0 strh.w r3, [r7, #160] @ 0xa0 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003e60: 4b9f ldr r3, [pc, #636] @ (80040e0 ) + 8003e62: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003e66: 611a str r2, [r3, #16] + LCD_CS(0); + 8003e68: 4b9d ldr r3, [pc, #628] @ (80040e0 ) + 8003e6a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003e6e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003e70: f8b7 30a0 ldrh.w r3, [r7, #160] @ 0xa0 + 8003e74: b29a uxth r2, r3 + 8003e76: 4b9b ldr r3, [pc, #620] @ (80040e4 ) + 8003e78: 60da str r2, [r3, #12] + LCD_WR(0); + 8003e7a: 4b99 ldr r3, [pc, #612] @ (80040e0 ) + 8003e7c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003e80: 611a str r2, [r3, #16] + LCD_WR(1); + 8003e82: 4b97 ldr r3, [pc, #604] @ (80040e0 ) + 8003e84: 2280 movs r2, #128 @ 0x80 + 8003e86: 611a str r2, [r3, #16] + LCD_CS(1); + 8003e88: 4b95 ldr r3, [pc, #596] @ (80040e0 ) + 8003e8a: f44f 7200 mov.w r2, #512 @ 0x200 + 8003e8e: 611a str r2, [r3, #16] +} + 8003e90: bf00 nop + lcd_wr_regno(0xE3); + lcd_wr_xdata(0x05); + 8003e92: 2005 movs r0, #5 + 8003e94: f7fc fd4a bl 800092c + lcd_wr_xdata(0x00); + 8003e98: 2000 movs r0, #0 + 8003e9a: f7fc fd47 bl 800092c + lcd_wr_xdata(0xA); + 8003e9e: 200a movs r0, #10 + 8003ea0: f7fc fd44 bl 800092c + lcd_wr_xdata(0x00); + 8003ea4: 2000 movs r0, #0 + 8003ea6: f7fc fd41 bl 800092c + lcd_wr_xdata(0x1C); + 8003eaa: 201c movs r0, #28 + 8003eac: f7fc fd3e bl 800092c + lcd_wr_xdata(0x00); + 8003eb0: 2000 movs r0, #0 + 8003eb2: f7fc fd3b bl 800092c + lcd_wr_xdata(0x33); + 8003eb6: 2033 movs r0, #51 @ 0x33 + 8003eb8: f7fc fd38 bl 800092c + lcd_wr_xdata(0x00); + 8003ebc: 2000 movs r0, #0 + 8003ebe: f7fc fd35 bl 800092c + lcd_wr_xdata(0x44); + 8003ec2: 2044 movs r0, #68 @ 0x44 + 8003ec4: f7fc fd32 bl 800092c + lcd_wr_xdata(0x00); + 8003ec8: 2000 movs r0, #0 + 8003eca: f7fc fd2f bl 800092c + lcd_wr_xdata(0x50); + 8003ece: 2050 movs r0, #80 @ 0x50 + 8003ed0: f7fc fd2c bl 800092c + lcd_wr_xdata(0x00); + 8003ed4: 2000 movs r0, #0 + 8003ed6: f7fc fd29 bl 800092c + lcd_wr_xdata(0x62); + 8003eda: 2062 movs r0, #98 @ 0x62 + 8003edc: f7fc fd26 bl 800092c + lcd_wr_xdata(0x00); + 8003ee0: 2000 movs r0, #0 + 8003ee2: f7fc fd23 bl 800092c + lcd_wr_xdata(0x78); + 8003ee6: 2078 movs r0, #120 @ 0x78 + 8003ee8: f7fc fd20 bl 800092c + lcd_wr_xdata(0x00); + 8003eec: 2000 movs r0, #0 + 8003eee: f7fc fd1d bl 800092c + lcd_wr_xdata(0x88); + 8003ef2: 2088 movs r0, #136 @ 0x88 + 8003ef4: f7fc fd1a bl 800092c + lcd_wr_xdata(0x00); + 8003ef8: 2000 movs r0, #0 + 8003efa: f7fc fd17 bl 800092c + lcd_wr_xdata(0x97); + 8003efe: 2097 movs r0, #151 @ 0x97 + 8003f00: f7fc fd14 bl 800092c + lcd_wr_xdata(0x00); + 8003f04: 2000 movs r0, #0 + 8003f06: f7fc fd11 bl 800092c + lcd_wr_xdata(0xA6); + 8003f0a: 20a6 movs r0, #166 @ 0xa6 + 8003f0c: f7fc fd0e bl 800092c + lcd_wr_xdata(0x00); + 8003f10: 2000 movs r0, #0 + 8003f12: f7fc fd0b bl 800092c + lcd_wr_xdata(0xB7); + 8003f16: 20b7 movs r0, #183 @ 0xb7 + 8003f18: f7fc fd08 bl 800092c + lcd_wr_xdata(0x00); + 8003f1c: 2000 movs r0, #0 + 8003f1e: f7fc fd05 bl 800092c + lcd_wr_xdata(0xC2); + 8003f22: 20c2 movs r0, #194 @ 0xc2 + 8003f24: f7fc fd02 bl 800092c + lcd_wr_xdata(0x00); + 8003f28: 2000 movs r0, #0 + 8003f2a: f7fc fcff bl 800092c + lcd_wr_xdata(0xC7); + 8003f2e: 20c7 movs r0, #199 @ 0xc7 + 8003f30: f7fc fcfc bl 800092c + lcd_wr_xdata(0x00); + 8003f34: 2000 movs r0, #0 + 8003f36: f7fc fcf9 bl 800092c + lcd_wr_xdata(0xD1); + 8003f3a: 20d1 movs r0, #209 @ 0xd1 + 8003f3c: f7fc fcf6 bl 800092c + lcd_wr_xdata(0x00); + 8003f40: 2000 movs r0, #0 + 8003f42: f7fc fcf3 bl 800092c + lcd_wr_xdata(0xD5); + 8003f46: 20d5 movs r0, #213 @ 0xd5 + 8003f48: f7fc fcf0 bl 800092c + lcd_wr_xdata(0x00); + 8003f4c: 2000 movs r0, #0 + 8003f4e: f7fc fced bl 800092c + lcd_wr_xdata(0xDD); + 8003f52: 20dd movs r0, #221 @ 0xdd + 8003f54: f7fc fcea bl 800092c + lcd_wr_xdata(0x00); + 8003f58: 2000 movs r0, #0 + 8003f5a: f7fc fce7 bl 800092c + lcd_wr_xdata(0xF3); + 8003f5e: 20f3 movs r0, #243 @ 0xf3 + 8003f60: f7fc fce4 bl 800092c + lcd_wr_xdata(0x00); + 8003f64: 2000 movs r0, #0 + 8003f66: f7fc fce1 bl 800092c + 8003f6a: 23e4 movs r3, #228 @ 0xe4 + 8003f6c: f8a7 309e strh.w r3, [r7, #158] @ 0x9e + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8003f70: 4b5b ldr r3, [pc, #364] @ (80040e0 ) + 8003f72: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8003f76: 611a str r2, [r3, #16] + LCD_CS(0); + 8003f78: 4b59 ldr r3, [pc, #356] @ (80040e0 ) + 8003f7a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8003f7e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8003f80: f8b7 309e ldrh.w r3, [r7, #158] @ 0x9e + 8003f84: b29a uxth r2, r3 + 8003f86: 4b57 ldr r3, [pc, #348] @ (80040e4 ) + 8003f88: 60da str r2, [r3, #12] + LCD_WR(0); + 8003f8a: 4b55 ldr r3, [pc, #340] @ (80040e0 ) + 8003f8c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8003f90: 611a str r2, [r3, #16] + LCD_WR(1); + 8003f92: 4b53 ldr r3, [pc, #332] @ (80040e0 ) + 8003f94: 2280 movs r2, #128 @ 0x80 + 8003f96: 611a str r2, [r3, #16] + LCD_CS(1); + 8003f98: 4b51 ldr r3, [pc, #324] @ (80040e0 ) + 8003f9a: f44f 7200 mov.w r2, #512 @ 0x200 + 8003f9e: 611a str r2, [r3, #16] +} + 8003fa0: bf00 nop + + lcd_wr_regno(0xE4); + lcd_wr_xdata(0x01); + 8003fa2: 2001 movs r0, #1 + 8003fa4: f7fc fcc2 bl 800092c + lcd_wr_xdata(0x00); + 8003fa8: 2000 movs r0, #0 + 8003faa: f7fc fcbf bl 800092c + lcd_wr_xdata(0x01); + 8003fae: 2001 movs r0, #1 + 8003fb0: f7fc fcbc bl 800092c + lcd_wr_xdata(0x00); + 8003fb4: 2000 movs r0, #0 + 8003fb6: f7fc fcb9 bl 800092c + lcd_wr_xdata(0x02); + 8003fba: 2002 movs r0, #2 + 8003fbc: f7fc fcb6 bl 800092c + lcd_wr_xdata(0x00); + 8003fc0: 2000 movs r0, #0 + 8003fc2: f7fc fcb3 bl 800092c + lcd_wr_xdata(0x2A); + 8003fc6: 202a movs r0, #42 @ 0x2a + 8003fc8: f7fc fcb0 bl 800092c + lcd_wr_xdata(0x00); + 8003fcc: 2000 movs r0, #0 + 8003fce: f7fc fcad bl 800092c + lcd_wr_xdata(0x3C); + 8003fd2: 203c movs r0, #60 @ 0x3c + 8003fd4: f7fc fcaa bl 800092c + lcd_wr_xdata(0x00); + 8003fd8: 2000 movs r0, #0 + 8003fda: f7fc fca7 bl 800092c + lcd_wr_xdata(0x4B); + 8003fde: 204b movs r0, #75 @ 0x4b + 8003fe0: f7fc fca4 bl 800092c + lcd_wr_xdata(0x00); + 8003fe4: 2000 movs r0, #0 + 8003fe6: f7fc fca1 bl 800092c + lcd_wr_xdata(0x5D); + 8003fea: 205d movs r0, #93 @ 0x5d + 8003fec: f7fc fc9e bl 800092c + lcd_wr_xdata(0x00); + 8003ff0: 2000 movs r0, #0 + 8003ff2: f7fc fc9b bl 800092c + lcd_wr_xdata(0x74); + 8003ff6: 2074 movs r0, #116 @ 0x74 + 8003ff8: f7fc fc98 bl 800092c + lcd_wr_xdata(0x00); + 8003ffc: 2000 movs r0, #0 + 8003ffe: f7fc fc95 bl 800092c + lcd_wr_xdata(0x84); + 8004002: 2084 movs r0, #132 @ 0x84 + 8004004: f7fc fc92 bl 800092c + lcd_wr_xdata(0x00); + 8004008: 2000 movs r0, #0 + 800400a: f7fc fc8f bl 800092c + lcd_wr_xdata(0x93); + 800400e: 2093 movs r0, #147 @ 0x93 + 8004010: f7fc fc8c bl 800092c + lcd_wr_xdata(0x00); + 8004014: 2000 movs r0, #0 + 8004016: f7fc fc89 bl 800092c + lcd_wr_xdata(0xA2); + 800401a: 20a2 movs r0, #162 @ 0xa2 + 800401c: f7fc fc86 bl 800092c + lcd_wr_xdata(0x00); + 8004020: 2000 movs r0, #0 + 8004022: f7fc fc83 bl 800092c + lcd_wr_xdata(0xB3); + 8004026: 20b3 movs r0, #179 @ 0xb3 + 8004028: f7fc fc80 bl 800092c + lcd_wr_xdata(0x00); + 800402c: 2000 movs r0, #0 + 800402e: f7fc fc7d bl 800092c + lcd_wr_xdata(0xBE); + 8004032: 20be movs r0, #190 @ 0xbe + 8004034: f7fc fc7a bl 800092c + lcd_wr_xdata(0x00); + 8004038: 2000 movs r0, #0 + 800403a: f7fc fc77 bl 800092c + lcd_wr_xdata(0xC4); + 800403e: 20c4 movs r0, #196 @ 0xc4 + 8004040: f7fc fc74 bl 800092c + lcd_wr_xdata(0x00); + 8004044: 2000 movs r0, #0 + 8004046: f7fc fc71 bl 800092c + lcd_wr_xdata(0xCD); + 800404a: 20cd movs r0, #205 @ 0xcd + 800404c: f7fc fc6e bl 800092c + lcd_wr_xdata(0x00); + 8004050: 2000 movs r0, #0 + 8004052: f7fc fc6b bl 800092c + lcd_wr_xdata(0xD3); + 8004056: 20d3 movs r0, #211 @ 0xd3 + 8004058: f7fc fc68 bl 800092c + lcd_wr_xdata(0x00); + 800405c: 2000 movs r0, #0 + 800405e: f7fc fc65 bl 800092c + lcd_wr_xdata(0xDD); + 8004062: 20dd movs r0, #221 @ 0xdd + 8004064: f7fc fc62 bl 800092c + lcd_wr_xdata(0x00); + 8004068: 2000 movs r0, #0 + 800406a: f7fc fc5f bl 800092c + lcd_wr_xdata(0xF3); + 800406e: 20f3 movs r0, #243 @ 0xf3 + 8004070: f7fc fc5c bl 800092c + lcd_wr_xdata(0x00); + 8004074: 2000 movs r0, #0 + 8004076: f7fc fc59 bl 800092c + 800407a: 23e5 movs r3, #229 @ 0xe5 + 800407c: f8a7 309c strh.w r3, [r7, #156] @ 0x9c + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004080: 4b17 ldr r3, [pc, #92] @ (80040e0 ) + 8004082: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004086: 611a str r2, [r3, #16] + LCD_CS(0); + 8004088: 4b15 ldr r3, [pc, #84] @ (80040e0 ) + 800408a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800408e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004090: f8b7 309c ldrh.w r3, [r7, #156] @ 0x9c + 8004094: b29a uxth r2, r3 + 8004096: 4b13 ldr r3, [pc, #76] @ (80040e4 ) + 8004098: 60da str r2, [r3, #12] + LCD_WR(0); + 800409a: 4b11 ldr r3, [pc, #68] @ (80040e0 ) + 800409c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80040a0: 611a str r2, [r3, #16] + LCD_WR(1); + 80040a2: 4b0f ldr r3, [pc, #60] @ (80040e0 ) + 80040a4: 2280 movs r2, #128 @ 0x80 + 80040a6: 611a str r2, [r3, #16] + LCD_CS(1); + 80040a8: 4b0d ldr r3, [pc, #52] @ (80040e0 ) + 80040aa: f44f 7200 mov.w r2, #512 @ 0x200 + 80040ae: 611a str r2, [r3, #16] +} + 80040b0: bf00 nop + lcd_wr_regno(0xE5); + lcd_wr_xdata(0x00); + 80040b2: 2000 movs r0, #0 + 80040b4: f7fc fc3a bl 800092c + lcd_wr_xdata(0x00); + 80040b8: 2000 movs r0, #0 + 80040ba: f7fc fc37 bl 800092c + lcd_wr_xdata(0x00); + 80040be: 2000 movs r0, #0 + 80040c0: f7fc fc34 bl 800092c + lcd_wr_xdata(0x00); + 80040c4: 2000 movs r0, #0 + 80040c6: f7fc fc31 bl 800092c + lcd_wr_xdata(0x02); + 80040ca: 2002 movs r0, #2 + 80040cc: f7fc fc2e bl 800092c + lcd_wr_xdata(0x00); + 80040d0: 2000 movs r0, #0 + 80040d2: f7fc fc2b bl 800092c + lcd_wr_xdata(0x29); + 80040d6: 2029 movs r0, #41 @ 0x29 + 80040d8: f7fc fc28 bl 800092c + lcd_wr_xdata(0x00); + 80040dc: 2000 movs r0, #0 + 80040de: e003 b.n 80040e8 + 80040e0: 40011000 .word 0x40011000 + 80040e4: 40010c00 .word 0x40010c00 + 80040e8: f7fc fc20 bl 800092c + lcd_wr_xdata(0x3C); + 80040ec: 203c movs r0, #60 @ 0x3c + 80040ee: f7fc fc1d bl 800092c + lcd_wr_xdata(0x00); + 80040f2: 2000 movs r0, #0 + 80040f4: f7fc fc1a bl 800092c + lcd_wr_xdata(0x4B); + 80040f8: 204b movs r0, #75 @ 0x4b + 80040fa: f7fc fc17 bl 800092c + lcd_wr_xdata(0x00); + 80040fe: 2000 movs r0, #0 + 8004100: f7fc fc14 bl 800092c + lcd_wr_xdata(0x5D); + 8004104: 205d movs r0, #93 @ 0x5d + 8004106: f7fc fc11 bl 800092c + lcd_wr_xdata(0x00); + 800410a: 2000 movs r0, #0 + 800410c: f7fc fc0e bl 800092c + lcd_wr_xdata(0x74); + 8004110: 2074 movs r0, #116 @ 0x74 + 8004112: f7fc fc0b bl 800092c + lcd_wr_xdata(0x00); + 8004116: 2000 movs r0, #0 + 8004118: f7fc fc08 bl 800092c + lcd_wr_xdata(0x84); + 800411c: 2084 movs r0, #132 @ 0x84 + 800411e: f7fc fc05 bl 800092c + lcd_wr_xdata(0x00); + 8004122: 2000 movs r0, #0 + 8004124: f7fc fc02 bl 800092c + lcd_wr_xdata(0x93); + 8004128: 2093 movs r0, #147 @ 0x93 + 800412a: f7fc fbff bl 800092c + lcd_wr_xdata(0x00); + 800412e: 2000 movs r0, #0 + 8004130: f7fc fbfc bl 800092c + lcd_wr_xdata(0xA2); + 8004134: 20a2 movs r0, #162 @ 0xa2 + 8004136: f7fc fbf9 bl 800092c + lcd_wr_xdata(0x00); + 800413a: 2000 movs r0, #0 + 800413c: f7fc fbf6 bl 800092c + lcd_wr_xdata(0xB3); + 8004140: 20b3 movs r0, #179 @ 0xb3 + 8004142: f7fc fbf3 bl 800092c + lcd_wr_xdata(0x00); + 8004146: 2000 movs r0, #0 + 8004148: f7fc fbf0 bl 800092c + lcd_wr_xdata(0xBE); + 800414c: 20be movs r0, #190 @ 0xbe + 800414e: f7fc fbed bl 800092c + lcd_wr_xdata(0x00); + 8004152: 2000 movs r0, #0 + 8004154: f7fc fbea bl 800092c + lcd_wr_xdata(0xC4); + 8004158: 20c4 movs r0, #196 @ 0xc4 + 800415a: f7fc fbe7 bl 800092c + lcd_wr_xdata(0x00); + 800415e: 2000 movs r0, #0 + 8004160: f7fc fbe4 bl 800092c + lcd_wr_xdata(0xCD); + 8004164: 20cd movs r0, #205 @ 0xcd + 8004166: f7fc fbe1 bl 800092c + lcd_wr_xdata(0x00); + 800416a: 2000 movs r0, #0 + 800416c: f7fc fbde bl 800092c + lcd_wr_xdata(0xD3); + 8004170: 20d3 movs r0, #211 @ 0xd3 + 8004172: f7fc fbdb bl 800092c + lcd_wr_xdata(0x00); + 8004176: 2000 movs r0, #0 + 8004178: f7fc fbd8 bl 800092c + lcd_wr_xdata(0xDC); + 800417c: 20dc movs r0, #220 @ 0xdc + 800417e: f7fc fbd5 bl 800092c + lcd_wr_xdata(0x00); + 8004182: 2000 movs r0, #0 + 8004184: f7fc fbd2 bl 800092c + lcd_wr_xdata(0xF3); + 8004188: 20f3 movs r0, #243 @ 0xf3 + 800418a: f7fc fbcf bl 800092c + lcd_wr_xdata(0x00); + 800418e: 2000 movs r0, #0 + 8004190: f7fc fbcc bl 800092c + 8004194: 23e6 movs r3, #230 @ 0xe6 + 8004196: f8a7 309a strh.w r3, [r7, #154] @ 0x9a + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800419a: 4bde ldr r3, [pc, #888] @ (8004514 ) + 800419c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80041a0: 611a str r2, [r3, #16] + LCD_CS(0); + 80041a2: 4bdc ldr r3, [pc, #880] @ (8004514 ) + 80041a4: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80041a8: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80041aa: f8b7 309a ldrh.w r3, [r7, #154] @ 0x9a + 80041ae: b29a uxth r2, r3 + 80041b0: 4bd9 ldr r3, [pc, #868] @ (8004518 ) + 80041b2: 60da str r2, [r3, #12] + LCD_WR(0); + 80041b4: 4bd7 ldr r3, [pc, #860] @ (8004514 ) + 80041b6: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80041ba: 611a str r2, [r3, #16] + LCD_WR(1); + 80041bc: 4bd5 ldr r3, [pc, #852] @ (8004514 ) + 80041be: 2280 movs r2, #128 @ 0x80 + 80041c0: 611a str r2, [r3, #16] + LCD_CS(1); + 80041c2: 4bd4 ldr r3, [pc, #848] @ (8004514 ) + 80041c4: f44f 7200 mov.w r2, #512 @ 0x200 + 80041c8: 611a str r2, [r3, #16] +} + 80041ca: bf00 nop + + lcd_wr_regno(0xE6); + lcd_wr_xdata(0x11); + 80041cc: 2011 movs r0, #17 + 80041ce: f7fc fbad bl 800092c + lcd_wr_xdata(0x00); + 80041d2: 2000 movs r0, #0 + 80041d4: f7fc fbaa bl 800092c + lcd_wr_xdata(0x34); + 80041d8: 2034 movs r0, #52 @ 0x34 + 80041da: f7fc fba7 bl 800092c + lcd_wr_xdata(0x00); + 80041de: 2000 movs r0, #0 + 80041e0: f7fc fba4 bl 800092c + lcd_wr_xdata(0x56); + 80041e4: 2056 movs r0, #86 @ 0x56 + 80041e6: f7fc fba1 bl 800092c + lcd_wr_xdata(0x00); + 80041ea: 2000 movs r0, #0 + 80041ec: f7fc fb9e bl 800092c + lcd_wr_xdata(0x76); + 80041f0: 2076 movs r0, #118 @ 0x76 + 80041f2: f7fc fb9b bl 800092c + lcd_wr_xdata(0x00); + 80041f6: 2000 movs r0, #0 + 80041f8: f7fc fb98 bl 800092c + lcd_wr_xdata(0x77); + 80041fc: 2077 movs r0, #119 @ 0x77 + 80041fe: f7fc fb95 bl 800092c + lcd_wr_xdata(0x00); + 8004202: 2000 movs r0, #0 + 8004204: f7fc fb92 bl 800092c + lcd_wr_xdata(0x66); + 8004208: 2066 movs r0, #102 @ 0x66 + 800420a: f7fc fb8f bl 800092c + lcd_wr_xdata(0x00); + 800420e: 2000 movs r0, #0 + 8004210: f7fc fb8c bl 800092c + lcd_wr_xdata(0x88); + 8004214: 2088 movs r0, #136 @ 0x88 + 8004216: f7fc fb89 bl 800092c + lcd_wr_xdata(0x00); + 800421a: 2000 movs r0, #0 + 800421c: f7fc fb86 bl 800092c + lcd_wr_xdata(0x99); + 8004220: 2099 movs r0, #153 @ 0x99 + 8004222: f7fc fb83 bl 800092c + lcd_wr_xdata(0x00); + 8004226: 2000 movs r0, #0 + 8004228: f7fc fb80 bl 800092c + lcd_wr_xdata(0xBB); + 800422c: 20bb movs r0, #187 @ 0xbb + 800422e: f7fc fb7d bl 800092c + lcd_wr_xdata(0x00); + 8004232: 2000 movs r0, #0 + 8004234: f7fc fb7a bl 800092c + lcd_wr_xdata(0x99); + 8004238: 2099 movs r0, #153 @ 0x99 + 800423a: f7fc fb77 bl 800092c + lcd_wr_xdata(0x00); + 800423e: 2000 movs r0, #0 + 8004240: f7fc fb74 bl 800092c + lcd_wr_xdata(0x66); + 8004244: 2066 movs r0, #102 @ 0x66 + 8004246: f7fc fb71 bl 800092c + lcd_wr_xdata(0x00); + 800424a: 2000 movs r0, #0 + 800424c: f7fc fb6e bl 800092c + lcd_wr_xdata(0x55); + 8004250: 2055 movs r0, #85 @ 0x55 + 8004252: f7fc fb6b bl 800092c + lcd_wr_xdata(0x00); + 8004256: 2000 movs r0, #0 + 8004258: f7fc fb68 bl 800092c + lcd_wr_xdata(0x55); + 800425c: 2055 movs r0, #85 @ 0x55 + 800425e: f7fc fb65 bl 800092c + lcd_wr_xdata(0x00); + 8004262: 2000 movs r0, #0 + 8004264: f7fc fb62 bl 800092c + lcd_wr_xdata(0x45); + 8004268: 2045 movs r0, #69 @ 0x45 + 800426a: f7fc fb5f bl 800092c + lcd_wr_xdata(0x00); + 800426e: 2000 movs r0, #0 + 8004270: f7fc fb5c bl 800092c + lcd_wr_xdata(0x43); + 8004274: 2043 movs r0, #67 @ 0x43 + 8004276: f7fc fb59 bl 800092c + lcd_wr_xdata(0x00); + 800427a: 2000 movs r0, #0 + 800427c: f7fc fb56 bl 800092c + lcd_wr_xdata(0x44); + 8004280: 2044 movs r0, #68 @ 0x44 + 8004282: f7fc fb53 bl 800092c + lcd_wr_xdata(0x00); + 8004286: 2000 movs r0, #0 + 8004288: f7fc fb50 bl 800092c + 800428c: 23e7 movs r3, #231 @ 0xe7 + 800428e: f8a7 3098 strh.w r3, [r7, #152] @ 0x98 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004292: 4ba0 ldr r3, [pc, #640] @ (8004514 ) + 8004294: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004298: 611a str r2, [r3, #16] + LCD_CS(0); + 800429a: 4b9e ldr r3, [pc, #632] @ (8004514 ) + 800429c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80042a0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80042a2: f8b7 3098 ldrh.w r3, [r7, #152] @ 0x98 + 80042a6: b29a uxth r2, r3 + 80042a8: 4b9b ldr r3, [pc, #620] @ (8004518 ) + 80042aa: 60da str r2, [r3, #12] + LCD_WR(0); + 80042ac: 4b99 ldr r3, [pc, #612] @ (8004514 ) + 80042ae: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80042b2: 611a str r2, [r3, #16] + LCD_WR(1); + 80042b4: 4b97 ldr r3, [pc, #604] @ (8004514 ) + 80042b6: 2280 movs r2, #128 @ 0x80 + 80042b8: 611a str r2, [r3, #16] + LCD_CS(1); + 80042ba: 4b96 ldr r3, [pc, #600] @ (8004514 ) + 80042bc: f44f 7200 mov.w r2, #512 @ 0x200 + 80042c0: 611a str r2, [r3, #16] +} + 80042c2: bf00 nop + + lcd_wr_regno(0xE7); + lcd_wr_xdata(0x32); + 80042c4: 2032 movs r0, #50 @ 0x32 + 80042c6: f7fc fb31 bl 800092c + lcd_wr_xdata(0x00); + 80042ca: 2000 movs r0, #0 + 80042cc: f7fc fb2e bl 800092c + lcd_wr_xdata(0x55); + 80042d0: 2055 movs r0, #85 @ 0x55 + 80042d2: f7fc fb2b bl 800092c + lcd_wr_xdata(0x00); + 80042d6: 2000 movs r0, #0 + 80042d8: f7fc fb28 bl 800092c + lcd_wr_xdata(0x76); + 80042dc: 2076 movs r0, #118 @ 0x76 + 80042de: f7fc fb25 bl 800092c + lcd_wr_xdata(0x00); + 80042e2: 2000 movs r0, #0 + 80042e4: f7fc fb22 bl 800092c + lcd_wr_xdata(0x66); + 80042e8: 2066 movs r0, #102 @ 0x66 + 80042ea: f7fc fb1f bl 800092c + lcd_wr_xdata(0x00); + 80042ee: 2000 movs r0, #0 + 80042f0: f7fc fb1c bl 800092c + lcd_wr_xdata(0x67); + 80042f4: 2067 movs r0, #103 @ 0x67 + 80042f6: f7fc fb19 bl 800092c + lcd_wr_xdata(0x00); + 80042fa: 2000 movs r0, #0 + 80042fc: f7fc fb16 bl 800092c + lcd_wr_xdata(0x67); + 8004300: 2067 movs r0, #103 @ 0x67 + 8004302: f7fc fb13 bl 800092c + lcd_wr_xdata(0x00); + 8004306: 2000 movs r0, #0 + 8004308: f7fc fb10 bl 800092c + lcd_wr_xdata(0x87); + 800430c: 2087 movs r0, #135 @ 0x87 + 800430e: f7fc fb0d bl 800092c + lcd_wr_xdata(0x00); + 8004312: 2000 movs r0, #0 + 8004314: f7fc fb0a bl 800092c + lcd_wr_xdata(0x99); + 8004318: 2099 movs r0, #153 @ 0x99 + 800431a: f7fc fb07 bl 800092c + lcd_wr_xdata(0x00); + 800431e: 2000 movs r0, #0 + 8004320: f7fc fb04 bl 800092c + lcd_wr_xdata(0xBB); + 8004324: 20bb movs r0, #187 @ 0xbb + 8004326: f7fc fb01 bl 800092c + lcd_wr_xdata(0x00); + 800432a: 2000 movs r0, #0 + 800432c: f7fc fafe bl 800092c + lcd_wr_xdata(0x99); + 8004330: 2099 movs r0, #153 @ 0x99 + 8004332: f7fc fafb bl 800092c + lcd_wr_xdata(0x00); + 8004336: 2000 movs r0, #0 + 8004338: f7fc faf8 bl 800092c + lcd_wr_xdata(0x77); + 800433c: 2077 movs r0, #119 @ 0x77 + 800433e: f7fc faf5 bl 800092c + lcd_wr_xdata(0x00); + 8004342: 2000 movs r0, #0 + 8004344: f7fc faf2 bl 800092c + lcd_wr_xdata(0x44); + 8004348: 2044 movs r0, #68 @ 0x44 + 800434a: f7fc faef bl 800092c + lcd_wr_xdata(0x00); + 800434e: 2000 movs r0, #0 + 8004350: f7fc faec bl 800092c + lcd_wr_xdata(0x56); + 8004354: 2056 movs r0, #86 @ 0x56 + 8004356: f7fc fae9 bl 800092c + lcd_wr_xdata(0x00); + 800435a: 2000 movs r0, #0 + 800435c: f7fc fae6 bl 800092c + lcd_wr_xdata(0x23); + 8004360: 2023 movs r0, #35 @ 0x23 + 8004362: f7fc fae3 bl 800092c + lcd_wr_xdata(0x00); + 8004366: 2000 movs r0, #0 + 8004368: f7fc fae0 bl 800092c + lcd_wr_xdata(0x33); + 800436c: 2033 movs r0, #51 @ 0x33 + 800436e: f7fc fadd bl 800092c + lcd_wr_xdata(0x00); + 8004372: 2000 movs r0, #0 + 8004374: f7fc fada bl 800092c + lcd_wr_xdata(0x45); + 8004378: 2045 movs r0, #69 @ 0x45 + 800437a: f7fc fad7 bl 800092c + lcd_wr_xdata(0x00); + 800437e: 2000 movs r0, #0 + 8004380: f7fc fad4 bl 800092c + 8004384: 23e8 movs r3, #232 @ 0xe8 + 8004386: f8a7 3096 strh.w r3, [r7, #150] @ 0x96 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800438a: 4b62 ldr r3, [pc, #392] @ (8004514 ) + 800438c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004390: 611a str r2, [r3, #16] + LCD_CS(0); + 8004392: 4b60 ldr r3, [pc, #384] @ (8004514 ) + 8004394: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004398: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800439a: f8b7 3096 ldrh.w r3, [r7, #150] @ 0x96 + 800439e: b29a uxth r2, r3 + 80043a0: 4b5d ldr r3, [pc, #372] @ (8004518 ) + 80043a2: 60da str r2, [r3, #12] + LCD_WR(0); + 80043a4: 4b5b ldr r3, [pc, #364] @ (8004514 ) + 80043a6: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80043aa: 611a str r2, [r3, #16] + LCD_WR(1); + 80043ac: 4b59 ldr r3, [pc, #356] @ (8004514 ) + 80043ae: 2280 movs r2, #128 @ 0x80 + 80043b0: 611a str r2, [r3, #16] + LCD_CS(1); + 80043b2: 4b58 ldr r3, [pc, #352] @ (8004514 ) + 80043b4: f44f 7200 mov.w r2, #512 @ 0x200 + 80043b8: 611a str r2, [r3, #16] +} + 80043ba: bf00 nop + + lcd_wr_regno(0xE8); + lcd_wr_xdata(0x00); + 80043bc: 2000 movs r0, #0 + 80043be: f7fc fab5 bl 800092c + lcd_wr_xdata(0x00); + 80043c2: 2000 movs r0, #0 + 80043c4: f7fc fab2 bl 800092c + lcd_wr_xdata(0x99); + 80043c8: 2099 movs r0, #153 @ 0x99 + 80043ca: f7fc faaf bl 800092c + lcd_wr_xdata(0x00); + 80043ce: 2000 movs r0, #0 + 80043d0: f7fc faac bl 800092c + lcd_wr_xdata(0x87); + 80043d4: 2087 movs r0, #135 @ 0x87 + 80043d6: f7fc faa9 bl 800092c + lcd_wr_xdata(0x00); + 80043da: 2000 movs r0, #0 + 80043dc: f7fc faa6 bl 800092c + lcd_wr_xdata(0x88); + 80043e0: 2088 movs r0, #136 @ 0x88 + 80043e2: f7fc faa3 bl 800092c + lcd_wr_xdata(0x00); + 80043e6: 2000 movs r0, #0 + 80043e8: f7fc faa0 bl 800092c + lcd_wr_xdata(0x77); + 80043ec: 2077 movs r0, #119 @ 0x77 + 80043ee: f7fc fa9d bl 800092c + lcd_wr_xdata(0x00); + 80043f2: 2000 movs r0, #0 + 80043f4: f7fc fa9a bl 800092c + lcd_wr_xdata(0x66); + 80043f8: 2066 movs r0, #102 @ 0x66 + 80043fa: f7fc fa97 bl 800092c + lcd_wr_xdata(0x00); + 80043fe: 2000 movs r0, #0 + 8004400: f7fc fa94 bl 800092c + lcd_wr_xdata(0x88); + 8004404: 2088 movs r0, #136 @ 0x88 + 8004406: f7fc fa91 bl 800092c + lcd_wr_xdata(0x00); + 800440a: 2000 movs r0, #0 + 800440c: f7fc fa8e bl 800092c + lcd_wr_xdata(0xAA); + 8004410: 20aa movs r0, #170 @ 0xaa + 8004412: f7fc fa8b bl 800092c + lcd_wr_xdata(0x00); + 8004416: 2000 movs r0, #0 + 8004418: f7fc fa88 bl 800092c + lcd_wr_xdata(0xBB); + 800441c: 20bb movs r0, #187 @ 0xbb + 800441e: f7fc fa85 bl 800092c + lcd_wr_xdata(0x00); + 8004422: 2000 movs r0, #0 + 8004424: f7fc fa82 bl 800092c + lcd_wr_xdata(0x99); + 8004428: 2099 movs r0, #153 @ 0x99 + 800442a: f7fc fa7f bl 800092c + lcd_wr_xdata(0x00); + 800442e: 2000 movs r0, #0 + 8004430: f7fc fa7c bl 800092c + lcd_wr_xdata(0x66); + 8004434: 2066 movs r0, #102 @ 0x66 + 8004436: f7fc fa79 bl 800092c + lcd_wr_xdata(0x00); + 800443a: 2000 movs r0, #0 + 800443c: f7fc fa76 bl 800092c + lcd_wr_xdata(0x55); + 8004440: 2055 movs r0, #85 @ 0x55 + 8004442: f7fc fa73 bl 800092c + lcd_wr_xdata(0x00); + 8004446: 2000 movs r0, #0 + 8004448: f7fc fa70 bl 800092c + lcd_wr_xdata(0x55); + 800444c: 2055 movs r0, #85 @ 0x55 + 800444e: f7fc fa6d bl 800092c + lcd_wr_xdata(0x00); + 8004452: 2000 movs r0, #0 + 8004454: f7fc fa6a bl 800092c + lcd_wr_xdata(0x44); + 8004458: 2044 movs r0, #68 @ 0x44 + 800445a: f7fc fa67 bl 800092c + lcd_wr_xdata(0x00); + 800445e: 2000 movs r0, #0 + 8004460: f7fc fa64 bl 800092c + lcd_wr_xdata(0x44); + 8004464: 2044 movs r0, #68 @ 0x44 + 8004466: f7fc fa61 bl 800092c + lcd_wr_xdata(0x00); + 800446a: 2000 movs r0, #0 + 800446c: f7fc fa5e bl 800092c + lcd_wr_xdata(0x55); + 8004470: 2055 movs r0, #85 @ 0x55 + 8004472: f7fc fa5b bl 800092c + lcd_wr_xdata(0x00); + 8004476: 2000 movs r0, #0 + 8004478: f7fc fa58 bl 800092c + 800447c: 23e9 movs r3, #233 @ 0xe9 + 800447e: f8a7 3094 strh.w r3, [r7, #148] @ 0x94 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004482: 4b24 ldr r3, [pc, #144] @ (8004514 ) + 8004484: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004488: 611a str r2, [r3, #16] + LCD_CS(0); + 800448a: 4b22 ldr r3, [pc, #136] @ (8004514 ) + 800448c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004490: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004492: f8b7 3094 ldrh.w r3, [r7, #148] @ 0x94 + 8004496: b29a uxth r2, r3 + 8004498: 4b1f ldr r3, [pc, #124] @ (8004518 ) + 800449a: 60da str r2, [r3, #12] + LCD_WR(0); + 800449c: 4b1d ldr r3, [pc, #116] @ (8004514 ) + 800449e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80044a2: 611a str r2, [r3, #16] + LCD_WR(1); + 80044a4: 4b1b ldr r3, [pc, #108] @ (8004514 ) + 80044a6: 2280 movs r2, #128 @ 0x80 + 80044a8: 611a str r2, [r3, #16] + LCD_CS(1); + 80044aa: 4b1a ldr r3, [pc, #104] @ (8004514 ) + 80044ac: f44f 7200 mov.w r2, #512 @ 0x200 + 80044b0: 611a str r2, [r3, #16] +} + 80044b2: bf00 nop + + lcd_wr_regno(0xE9); + lcd_wr_xdata(0xAA); + 80044b4: 20aa movs r0, #170 @ 0xaa + 80044b6: f7fc fa39 bl 800092c + lcd_wr_xdata(0x00); + 80044ba: 2000 movs r0, #0 + 80044bc: f7fc fa36 bl 800092c + lcd_wr_xdata(0x00); + 80044c0: 2000 movs r0, #0 + 80044c2: f7fc fa33 bl 800092c + lcd_wr_xdata(0x00); + 80044c6: 2000 movs r0, #0 + 80044c8: f7fc fa30 bl 800092c + 80044cc: 2300 movs r3, #0 + 80044ce: f8a7 3092 strh.w r3, [r7, #146] @ 0x92 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80044d2: 4b10 ldr r3, [pc, #64] @ (8004514 ) + 80044d4: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80044d8: 611a str r2, [r3, #16] + LCD_CS(0); + 80044da: 4b0e ldr r3, [pc, #56] @ (8004514 ) + 80044dc: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80044e0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80044e2: f8b7 3092 ldrh.w r3, [r7, #146] @ 0x92 + 80044e6: b29a uxth r2, r3 + 80044e8: 4b0b ldr r3, [pc, #44] @ (8004518 ) + 80044ea: 60da str r2, [r3, #12] + LCD_WR(0); + 80044ec: 4b09 ldr r3, [pc, #36] @ (8004514 ) + 80044ee: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80044f2: 611a str r2, [r3, #16] + LCD_WR(1); + 80044f4: 4b07 ldr r3, [pc, #28] @ (8004514 ) + 80044f6: 2280 movs r2, #128 @ 0x80 + 80044f8: 611a str r2, [r3, #16] + LCD_CS(1); + 80044fa: 4b06 ldr r3, [pc, #24] @ (8004514 ) + 80044fc: f44f 7200 mov.w r2, #512 @ 0x200 + 8004500: 611a str r2, [r3, #16] +} + 8004502: bf00 nop + + lcd_wr_regno(0x00); + lcd_wr_xdata(0xAA); + 8004504: 20aa movs r0, #170 @ 0xaa + 8004506: f7fc fa11 bl 800092c + 800450a: 23cf movs r3, #207 @ 0xcf + 800450c: f8a7 3090 strh.w r3, [r7, #144] @ 0x90 + 8004510: e004 b.n 800451c + 8004512: bf00 nop + 8004514: 40011000 .word 0x40011000 + 8004518: 40010c00 .word 0x40010c00 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800451c: 4bbc ldr r3, [pc, #752] @ (8004810 ) + 800451e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004522: 611a str r2, [r3, #16] + LCD_CS(0); + 8004524: 4bba ldr r3, [pc, #744] @ (8004810 ) + 8004526: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800452a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800452c: f8b7 3090 ldrh.w r3, [r7, #144] @ 0x90 + 8004530: b29a uxth r2, r3 + 8004532: 4bb8 ldr r3, [pc, #736] @ (8004814 ) + 8004534: 60da str r2, [r3, #12] + LCD_WR(0); + 8004536: 4bb6 ldr r3, [pc, #728] @ (8004810 ) + 8004538: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800453c: 611a str r2, [r3, #16] + LCD_WR(1); + 800453e: 4bb4 ldr r3, [pc, #720] @ (8004810 ) + 8004540: 2280 movs r2, #128 @ 0x80 + 8004542: 611a str r2, [r3, #16] + LCD_CS(1); + 8004544: 4bb2 ldr r3, [pc, #712] @ (8004810 ) + 8004546: f44f 7200 mov.w r2, #512 @ 0x200 + 800454a: 611a str r2, [r3, #16] +} + 800454c: bf00 nop + + lcd_wr_regno(0xCF); + lcd_wr_xdata(0x00); + 800454e: 2000 movs r0, #0 + 8004550: f7fc f9ec bl 800092c + lcd_wr_xdata(0x00); + 8004554: 2000 movs r0, #0 + 8004556: f7fc f9e9 bl 800092c + lcd_wr_xdata(0x00); + 800455a: 2000 movs r0, #0 + 800455c: f7fc f9e6 bl 800092c + lcd_wr_xdata(0x00); + 8004560: 2000 movs r0, #0 + 8004562: f7fc f9e3 bl 800092c + lcd_wr_xdata(0x00); + 8004566: 2000 movs r0, #0 + 8004568: f7fc f9e0 bl 800092c + lcd_wr_xdata(0x00); + 800456c: 2000 movs r0, #0 + 800456e: f7fc f9dd bl 800092c + lcd_wr_xdata(0x00); + 8004572: 2000 movs r0, #0 + 8004574: f7fc f9da bl 800092c + lcd_wr_xdata(0x00); + 8004578: 2000 movs r0, #0 + 800457a: f7fc f9d7 bl 800092c + lcd_wr_xdata(0x00); + 800457e: 2000 movs r0, #0 + 8004580: f7fc f9d4 bl 800092c + lcd_wr_xdata(0x00); + 8004584: 2000 movs r0, #0 + 8004586: f7fc f9d1 bl 800092c + lcd_wr_xdata(0x00); + 800458a: 2000 movs r0, #0 + 800458c: f7fc f9ce bl 800092c + lcd_wr_xdata(0x00); + 8004590: 2000 movs r0, #0 + 8004592: f7fc f9cb bl 800092c + lcd_wr_xdata(0x00); + 8004596: 2000 movs r0, #0 + 8004598: f7fc f9c8 bl 800092c + lcd_wr_xdata(0x00); + 800459c: 2000 movs r0, #0 + 800459e: f7fc f9c5 bl 800092c + lcd_wr_xdata(0x00); + 80045a2: 2000 movs r0, #0 + 80045a4: f7fc f9c2 bl 800092c + lcd_wr_xdata(0x00); + 80045a8: 2000 movs r0, #0 + 80045aa: f7fc f9bf bl 800092c + lcd_wr_xdata(0x00); + 80045ae: 2000 movs r0, #0 + 80045b0: f7fc f9bc bl 800092c + 80045b4: 23f0 movs r3, #240 @ 0xf0 + 80045b6: f8a7 308e strh.w r3, [r7, #142] @ 0x8e + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80045ba: 4b95 ldr r3, [pc, #596] @ (8004810 ) + 80045bc: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80045c0: 611a str r2, [r3, #16] + LCD_CS(0); + 80045c2: 4b93 ldr r3, [pc, #588] @ (8004810 ) + 80045c4: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80045c8: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80045ca: f8b7 308e ldrh.w r3, [r7, #142] @ 0x8e + 80045ce: b29a uxth r2, r3 + 80045d0: 4b90 ldr r3, [pc, #576] @ (8004814 ) + 80045d2: 60da str r2, [r3, #12] + LCD_WR(0); + 80045d4: 4b8e ldr r3, [pc, #568] @ (8004810 ) + 80045d6: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80045da: 611a str r2, [r3, #16] + LCD_WR(1); + 80045dc: 4b8c ldr r3, [pc, #560] @ (8004810 ) + 80045de: 2280 movs r2, #128 @ 0x80 + 80045e0: 611a str r2, [r3, #16] + LCD_CS(1); + 80045e2: 4b8b ldr r3, [pc, #556] @ (8004810 ) + 80045e4: f44f 7200 mov.w r2, #512 @ 0x200 + 80045e8: 611a str r2, [r3, #16] +} + 80045ea: bf00 nop + + lcd_wr_regno(0xF0); + lcd_wr_xdata(0x00); + 80045ec: 2000 movs r0, #0 + 80045ee: f7fc f99d bl 800092c + lcd_wr_xdata(0x50); + 80045f2: 2050 movs r0, #80 @ 0x50 + 80045f4: f7fc f99a bl 800092c + lcd_wr_xdata(0x00); + 80045f8: 2000 movs r0, #0 + 80045fa: f7fc f997 bl 800092c + lcd_wr_xdata(0x00); + 80045fe: 2000 movs r0, #0 + 8004600: f7fc f994 bl 800092c + lcd_wr_xdata(0x00); + 8004604: 2000 movs r0, #0 + 8004606: f7fc f991 bl 800092c + 800460a: 23f3 movs r3, #243 @ 0xf3 + 800460c: f8a7 308c strh.w r3, [r7, #140] @ 0x8c + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004610: 4b7f ldr r3, [pc, #508] @ (8004810 ) + 8004612: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004616: 611a str r2, [r3, #16] + LCD_CS(0); + 8004618: 4b7d ldr r3, [pc, #500] @ (8004810 ) + 800461a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800461e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004620: f8b7 308c ldrh.w r3, [r7, #140] @ 0x8c + 8004624: b29a uxth r2, r3 + 8004626: 4b7b ldr r3, [pc, #492] @ (8004814 ) + 8004628: 60da str r2, [r3, #12] + LCD_WR(0); + 800462a: 4b79 ldr r3, [pc, #484] @ (8004810 ) + 800462c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004630: 611a str r2, [r3, #16] + LCD_WR(1); + 8004632: 4b77 ldr r3, [pc, #476] @ (8004810 ) + 8004634: 2280 movs r2, #128 @ 0x80 + 8004636: 611a str r2, [r3, #16] + LCD_CS(1); + 8004638: 4b75 ldr r3, [pc, #468] @ (8004810 ) + 800463a: f44f 7200 mov.w r2, #512 @ 0x200 + 800463e: 611a str r2, [r3, #16] +} + 8004640: bf00 nop + + lcd_wr_regno(0xF3); + lcd_wr_xdata(0x00); + 8004642: 2000 movs r0, #0 + 8004644: f7fc f972 bl 800092c + 8004648: 23f9 movs r3, #249 @ 0xf9 + 800464a: f8a7 308a strh.w r3, [r7, #138] @ 0x8a + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800464e: 4b70 ldr r3, [pc, #448] @ (8004810 ) + 8004650: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004654: 611a str r2, [r3, #16] + LCD_CS(0); + 8004656: 4b6e ldr r3, [pc, #440] @ (8004810 ) + 8004658: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800465c: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800465e: f8b7 308a ldrh.w r3, [r7, #138] @ 0x8a + 8004662: b29a uxth r2, r3 + 8004664: 4b6b ldr r3, [pc, #428] @ (8004814 ) + 8004666: 60da str r2, [r3, #12] + LCD_WR(0); + 8004668: 4b69 ldr r3, [pc, #420] @ (8004810 ) + 800466a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800466e: 611a str r2, [r3, #16] + LCD_WR(1); + 8004670: 4b67 ldr r3, [pc, #412] @ (8004810 ) + 8004672: 2280 movs r2, #128 @ 0x80 + 8004674: 611a str r2, [r3, #16] + LCD_CS(1); + 8004676: 4b66 ldr r3, [pc, #408] @ (8004810 ) + 8004678: f44f 7200 mov.w r2, #512 @ 0x200 + 800467c: 611a str r2, [r3, #16] +} + 800467e: bf00 nop + + lcd_wr_regno(0xF9); + lcd_wr_xdata(0x06); + 8004680: 2006 movs r0, #6 + 8004682: f7fc f953 bl 800092c + lcd_wr_xdata(0x10); + 8004686: 2010 movs r0, #16 + 8004688: f7fc f950 bl 800092c + lcd_wr_xdata(0x29); + 800468c: 2029 movs r0, #41 @ 0x29 + 800468e: f7fc f94d bl 800092c + lcd_wr_xdata(0x00); + 8004692: 2000 movs r0, #0 + 8004694: f7fc f94a bl 800092c + 8004698: 233a movs r3, #58 @ 0x3a + 800469a: f8a7 3088 strh.w r3, [r7, #136] @ 0x88 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800469e: 4b5c ldr r3, [pc, #368] @ (8004810 ) + 80046a0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80046a4: 611a str r2, [r3, #16] + LCD_CS(0); + 80046a6: 4b5a ldr r3, [pc, #360] @ (8004810 ) + 80046a8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80046ac: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80046ae: f8b7 3088 ldrh.w r3, [r7, #136] @ 0x88 + 80046b2: b29a uxth r2, r3 + 80046b4: 4b57 ldr r3, [pc, #348] @ (8004814 ) + 80046b6: 60da str r2, [r3, #12] + LCD_WR(0); + 80046b8: 4b55 ldr r3, [pc, #340] @ (8004810 ) + 80046ba: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80046be: 611a str r2, [r3, #16] + LCD_WR(1); + 80046c0: 4b53 ldr r3, [pc, #332] @ (8004810 ) + 80046c2: 2280 movs r2, #128 @ 0x80 + 80046c4: 611a str r2, [r3, #16] + LCD_CS(1); + 80046c6: 4b52 ldr r3, [pc, #328] @ (8004810 ) + 80046c8: f44f 7200 mov.w r2, #512 @ 0x200 + 80046cc: 611a str r2, [r3, #16] +} + 80046ce: bf00 nop + + lcd_wr_regno(0x3A); + lcd_wr_xdata(0x55); /* 66 */ + 80046d0: 2055 movs r0, #85 @ 0x55 + 80046d2: f7fc f92b bl 800092c + 80046d6: 2311 movs r3, #17 + 80046d8: f8a7 3086 strh.w r3, [r7, #134] @ 0x86 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80046dc: 4b4c ldr r3, [pc, #304] @ (8004810 ) + 80046de: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80046e2: 611a str r2, [r3, #16] + LCD_CS(0); + 80046e4: 4b4a ldr r3, [pc, #296] @ (8004810 ) + 80046e6: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80046ea: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80046ec: f8b7 3086 ldrh.w r3, [r7, #134] @ 0x86 + 80046f0: b29a uxth r2, r3 + 80046f2: 4b48 ldr r3, [pc, #288] @ (8004814 ) + 80046f4: 60da str r2, [r3, #12] + LCD_WR(0); + 80046f6: 4b46 ldr r3, [pc, #280] @ (8004810 ) + 80046f8: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80046fc: 611a str r2, [r3, #16] + LCD_WR(1); + 80046fe: 4b44 ldr r3, [pc, #272] @ (8004810 ) + 8004700: 2280 movs r2, #128 @ 0x80 + 8004702: 611a str r2, [r3, #16] + LCD_CS(1); + 8004704: 4b42 ldr r3, [pc, #264] @ (8004810 ) + 8004706: f44f 7200 mov.w r2, #512 @ 0x200 + 800470a: 611a str r2, [r3, #16] +} + 800470c: bf00 nop + + lcd_wr_regno(0x11); + HAL_Delay(100); + 800470e: 2064 movs r0, #100 @ 0x64 + 8004710: f002 fed2 bl 80074b8 + 8004714: 2329 movs r3, #41 @ 0x29 + 8004716: f8a7 3084 strh.w r3, [r7, #132] @ 0x84 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800471a: 4b3d ldr r3, [pc, #244] @ (8004810 ) + 800471c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004720: 611a str r2, [r3, #16] + LCD_CS(0); + 8004722: 4b3b ldr r3, [pc, #236] @ (8004810 ) + 8004724: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004728: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800472a: f8b7 3084 ldrh.w r3, [r7, #132] @ 0x84 + 800472e: b29a uxth r2, r3 + 8004730: 4b38 ldr r3, [pc, #224] @ (8004814 ) + 8004732: 60da str r2, [r3, #12] + LCD_WR(0); + 8004734: 4b36 ldr r3, [pc, #216] @ (8004810 ) + 8004736: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800473a: 611a str r2, [r3, #16] + LCD_WR(1); + 800473c: 4b34 ldr r3, [pc, #208] @ (8004810 ) + 800473e: 2280 movs r2, #128 @ 0x80 + 8004740: 611a str r2, [r3, #16] + LCD_CS(1); + 8004742: 4b33 ldr r3, [pc, #204] @ (8004810 ) + 8004744: f44f 7200 mov.w r2, #512 @ 0x200 + 8004748: 611a str r2, [r3, #16] +} + 800474a: bf00 nop + 800474c: 2335 movs r3, #53 @ 0x35 + 800474e: f8a7 3082 strh.w r3, [r7, #130] @ 0x82 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004752: 4b2f ldr r3, [pc, #188] @ (8004810 ) + 8004754: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004758: 611a str r2, [r3, #16] + LCD_CS(0); + 800475a: 4b2d ldr r3, [pc, #180] @ (8004810 ) + 800475c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004760: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004762: f8b7 3082 ldrh.w r3, [r7, #130] @ 0x82 + 8004766: b29a uxth r2, r3 + 8004768: 4b2a ldr r3, [pc, #168] @ (8004814 ) + 800476a: 60da str r2, [r3, #12] + LCD_WR(0); + 800476c: 4b28 ldr r3, [pc, #160] @ (8004810 ) + 800476e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004772: 611a str r2, [r3, #16] + LCD_WR(1); + 8004774: 4b26 ldr r3, [pc, #152] @ (8004810 ) + 8004776: 2280 movs r2, #128 @ 0x80 + 8004778: 611a str r2, [r3, #16] + LCD_CS(1); + 800477a: 4b25 ldr r3, [pc, #148] @ (8004810 ) + 800477c: f44f 7200 mov.w r2, #512 @ 0x200 + 8004780: 611a str r2, [r3, #16] +} + 8004782: bf00 nop + lcd_wr_regno(0x29); + lcd_wr_regno(0x35); + lcd_wr_xdata(0x00); + 8004784: 2000 movs r0, #0 + 8004786: f7fc f8d1 bl 800092c + 800478a: 2351 movs r3, #81 @ 0x51 + 800478c: f8a7 3080 strh.w r3, [r7, #128] @ 0x80 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004790: 4b1f ldr r3, [pc, #124] @ (8004810 ) + 8004792: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004796: 611a str r2, [r3, #16] + LCD_CS(0); + 8004798: 4b1d ldr r3, [pc, #116] @ (8004810 ) + 800479a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800479e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80047a0: f8b7 3080 ldrh.w r3, [r7, #128] @ 0x80 + 80047a4: b29a uxth r2, r3 + 80047a6: 4b1b ldr r3, [pc, #108] @ (8004814 ) + 80047a8: 60da str r2, [r3, #12] + LCD_WR(0); + 80047aa: 4b19 ldr r3, [pc, #100] @ (8004810 ) + 80047ac: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80047b0: 611a str r2, [r3, #16] + LCD_WR(1); + 80047b2: 4b17 ldr r3, [pc, #92] @ (8004810 ) + 80047b4: 2280 movs r2, #128 @ 0x80 + 80047b6: 611a str r2, [r3, #16] + LCD_CS(1); + 80047b8: 4b15 ldr r3, [pc, #84] @ (8004810 ) + 80047ba: f44f 7200 mov.w r2, #512 @ 0x200 + 80047be: 611a str r2, [r3, #16] +} + 80047c0: bf00 nop + + lcd_wr_regno(0x51); + lcd_wr_xdata(0xFF); + 80047c2: 20ff movs r0, #255 @ 0xff + 80047c4: f7fc f8b2 bl 800092c + 80047c8: 2353 movs r3, #83 @ 0x53 + 80047ca: f8a7 307e strh.w r3, [r7, #126] @ 0x7e + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80047ce: 4b10 ldr r3, [pc, #64] @ (8004810 ) + 80047d0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80047d4: 611a str r2, [r3, #16] + LCD_CS(0); + 80047d6: 4b0e ldr r3, [pc, #56] @ (8004810 ) + 80047d8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80047dc: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80047de: f8b7 307e ldrh.w r3, [r7, #126] @ 0x7e + 80047e2: b29a uxth r2, r3 + 80047e4: 4b0b ldr r3, [pc, #44] @ (8004814 ) + 80047e6: 60da str r2, [r3, #12] + LCD_WR(0); + 80047e8: 4b09 ldr r3, [pc, #36] @ (8004810 ) + 80047ea: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80047ee: 611a str r2, [r3, #16] + LCD_WR(1); + 80047f0: 4b07 ldr r3, [pc, #28] @ (8004810 ) + 80047f2: 2280 movs r2, #128 @ 0x80 + 80047f4: 611a str r2, [r3, #16] + LCD_CS(1); + 80047f6: 4b06 ldr r3, [pc, #24] @ (8004810 ) + 80047f8: f44f 7200 mov.w r2, #512 @ 0x200 + 80047fc: 611a str r2, [r3, #16] +} + 80047fe: bf00 nop + lcd_wr_regno(0x53); + lcd_wr_xdata(0x2C); + 8004800: 202c movs r0, #44 @ 0x2c + 8004802: f7fc f893 bl 800092c + 8004806: 2355 movs r3, #85 @ 0x55 + 8004808: f8a7 307c strh.w r3, [r7, #124] @ 0x7c + 800480c: e004 b.n 8004818 + 800480e: bf00 nop + 8004810: 40011000 .word 0x40011000 + 8004814: 40010c00 .word 0x40010c00 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004818: 4b1c ldr r3, [pc, #112] @ (800488c ) + 800481a: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800481e: 611a str r2, [r3, #16] + LCD_CS(0); + 8004820: 4b1a ldr r3, [pc, #104] @ (800488c ) + 8004822: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004826: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004828: f8b7 307c ldrh.w r3, [r7, #124] @ 0x7c + 800482c: b29a uxth r2, r3 + 800482e: 4b18 ldr r3, [pc, #96] @ (8004890 ) + 8004830: 60da str r2, [r3, #12] + LCD_WR(0); + 8004832: 4b16 ldr r3, [pc, #88] @ (800488c ) + 8004834: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004838: 611a str r2, [r3, #16] + LCD_WR(1); + 800483a: 4b14 ldr r3, [pc, #80] @ (800488c ) + 800483c: 2280 movs r2, #128 @ 0x80 + 800483e: 611a str r2, [r3, #16] + LCD_CS(1); + 8004840: 4b12 ldr r3, [pc, #72] @ (800488c ) + 8004842: f44f 7200 mov.w r2, #512 @ 0x200 + 8004846: 611a str r2, [r3, #16] +} + 8004848: bf00 nop + lcd_wr_regno(0x55); + lcd_wr_xdata(0x82); + 800484a: 2082 movs r0, #130 @ 0x82 + 800484c: f7fc f86e bl 800092c + 8004850: 232c movs r3, #44 @ 0x2c + 8004852: f8a7 307a strh.w r3, [r7, #122] @ 0x7a + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004856: 4b0d ldr r3, [pc, #52] @ (800488c ) + 8004858: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800485c: 611a str r2, [r3, #16] + LCD_CS(0); + 800485e: 4b0b ldr r3, [pc, #44] @ (800488c ) + 8004860: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004864: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004866: f8b7 307a ldrh.w r3, [r7, #122] @ 0x7a + 800486a: b29a uxth r2, r3 + 800486c: 4b08 ldr r3, [pc, #32] @ (8004890 ) + 800486e: 60da str r2, [r3, #12] + LCD_WR(0); + 8004870: 4b06 ldr r3, [pc, #24] @ (800488c ) + 8004872: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004876: 611a str r2, [r3, #16] + LCD_WR(1); + 8004878: 4b04 ldr r3, [pc, #16] @ (800488c ) + 800487a: 2280 movs r2, #128 @ 0x80 + 800487c: 611a str r2, [r3, #16] + LCD_CS(1); + 800487e: 4b03 ldr r3, [pc, #12] @ (800488c ) + 8004880: f44f 7200 mov.w r2, #512 @ 0x200 + 8004884: 611a str r2, [r3, #16] +} + 8004886: f002 b8d8 b.w 8006a3a + 800488a: bf00 nop + 800488c: 40011000 .word 0x40011000 + 8004890: 40010c00 .word 0x40010c00 + lcd_wr_regno(0x2c); + } + else if (lcddev.id == 0x7796) + 8004894: 4bb4 ldr r3, [pc, #720] @ (8004b68 ) + 8004896: 889b ldrh r3, [r3, #4] + 8004898: f247 7296 movw r2, #30614 @ 0x7796 + 800489c: 4293 cmp r3, r2 + 800489e: f040 82e3 bne.w 8004e68 + 80048a2: 2311 movs r3, #17 + 80048a4: f8a7 3102 strh.w r3, [r7, #258] @ 0x102 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80048a8: 4bb0 ldr r3, [pc, #704] @ (8004b6c ) + 80048aa: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80048ae: 611a str r2, [r3, #16] + LCD_CS(0); + 80048b0: 4bae ldr r3, [pc, #696] @ (8004b6c ) + 80048b2: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80048b6: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80048b8: f8b7 3102 ldrh.w r3, [r7, #258] @ 0x102 + 80048bc: b29a uxth r2, r3 + 80048be: 4bac ldr r3, [pc, #688] @ (8004b70 ) + 80048c0: 60da str r2, [r3, #12] + LCD_WR(0); + 80048c2: 4baa ldr r3, [pc, #680] @ (8004b6c ) + 80048c4: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80048c8: 611a str r2, [r3, #16] + LCD_WR(1); + 80048ca: 4ba8 ldr r3, [pc, #672] @ (8004b6c ) + 80048cc: 2280 movs r2, #128 @ 0x80 + 80048ce: 611a str r2, [r3, #16] + LCD_CS(1); + 80048d0: 4ba6 ldr r3, [pc, #664] @ (8004b6c ) + 80048d2: f44f 7200 mov.w r2, #512 @ 0x200 + 80048d6: 611a str r2, [r3, #16] +} + 80048d8: bf00 nop + { + // lcd_ex_st7796_reginit(); /* ִ��ST7796��ʼ�� */ + lcd_wr_regno(0x11); + + HAL_Delay(120); + 80048da: 2078 movs r0, #120 @ 0x78 + 80048dc: f002 fdec bl 80074b8 + 80048e0: 2336 movs r3, #54 @ 0x36 + 80048e2: f8a7 3100 strh.w r3, [r7, #256] @ 0x100 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80048e6: 4ba1 ldr r3, [pc, #644] @ (8004b6c ) + 80048e8: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80048ec: 611a str r2, [r3, #16] + LCD_CS(0); + 80048ee: 4b9f ldr r3, [pc, #636] @ (8004b6c ) + 80048f0: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80048f4: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80048f6: f8b7 3100 ldrh.w r3, [r7, #256] @ 0x100 + 80048fa: b29a uxth r2, r3 + 80048fc: 4b9c ldr r3, [pc, #624] @ (8004b70 ) + 80048fe: 60da str r2, [r3, #12] + LCD_WR(0); + 8004900: 4b9a ldr r3, [pc, #616] @ (8004b6c ) + 8004902: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004906: 611a str r2, [r3, #16] + LCD_WR(1); + 8004908: 4b98 ldr r3, [pc, #608] @ (8004b6c ) + 800490a: 2280 movs r2, #128 @ 0x80 + 800490c: 611a str r2, [r3, #16] + LCD_CS(1); + 800490e: 4b97 ldr r3, [pc, #604] @ (8004b6c ) + 8004910: f44f 7200 mov.w r2, #512 @ 0x200 + 8004914: 611a str r2, [r3, #16] +} + 8004916: bf00 nop + + lcd_wr_regno(0x36); /* Memory Data Access Control MY,MX~~ */ + lcd_wr_xdata(0x48); + 8004918: 2048 movs r0, #72 @ 0x48 + 800491a: f7fc f807 bl 800092c + 800491e: 233a movs r3, #58 @ 0x3a + 8004920: f8a7 30fe strh.w r3, [r7, #254] @ 0xfe + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004924: 4b91 ldr r3, [pc, #580] @ (8004b6c ) + 8004926: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800492a: 611a str r2, [r3, #16] + LCD_CS(0); + 800492c: 4b8f ldr r3, [pc, #572] @ (8004b6c ) + 800492e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004932: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004934: f8b7 30fe ldrh.w r3, [r7, #254] @ 0xfe + 8004938: b29a uxth r2, r3 + 800493a: 4b8d ldr r3, [pc, #564] @ (8004b70 ) + 800493c: 60da str r2, [r3, #12] + LCD_WR(0); + 800493e: 4b8b ldr r3, [pc, #556] @ (8004b6c ) + 8004940: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004944: 611a str r2, [r3, #16] + LCD_WR(1); + 8004946: 4b89 ldr r3, [pc, #548] @ (8004b6c ) + 8004948: 2280 movs r2, #128 @ 0x80 + 800494a: 611a str r2, [r3, #16] + LCD_CS(1); + 800494c: 4b87 ldr r3, [pc, #540] @ (8004b6c ) + 800494e: f44f 7200 mov.w r2, #512 @ 0x200 + 8004952: 611a str r2, [r3, #16] +} + 8004954: bf00 nop + + lcd_wr_regno(0x3A); + lcd_wr_xdata(0x55); + 8004956: 2055 movs r0, #85 @ 0x55 + 8004958: f7fb ffe8 bl 800092c + 800495c: 23f0 movs r3, #240 @ 0xf0 + 800495e: f8a7 30fc strh.w r3, [r7, #252] @ 0xfc + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004962: 4b82 ldr r3, [pc, #520] @ (8004b6c ) + 8004964: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004968: 611a str r2, [r3, #16] + LCD_CS(0); + 800496a: 4b80 ldr r3, [pc, #512] @ (8004b6c ) + 800496c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004970: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004972: f8b7 30fc ldrh.w r3, [r7, #252] @ 0xfc + 8004976: b29a uxth r2, r3 + 8004978: 4b7d ldr r3, [pc, #500] @ (8004b70 ) + 800497a: 60da str r2, [r3, #12] + LCD_WR(0); + 800497c: 4b7b ldr r3, [pc, #492] @ (8004b6c ) + 800497e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004982: 611a str r2, [r3, #16] + LCD_WR(1); + 8004984: 4b79 ldr r3, [pc, #484] @ (8004b6c ) + 8004986: 2280 movs r2, #128 @ 0x80 + 8004988: 611a str r2, [r3, #16] + LCD_CS(1); + 800498a: 4b78 ldr r3, [pc, #480] @ (8004b6c ) + 800498c: f44f 7200 mov.w r2, #512 @ 0x200 + 8004990: 611a str r2, [r3, #16] +} + 8004992: bf00 nop + + lcd_wr_regno(0xF0); + lcd_wr_xdata(0xC3); + 8004994: 20c3 movs r0, #195 @ 0xc3 + 8004996: f7fb ffc9 bl 800092c + 800499a: 23f0 movs r3, #240 @ 0xf0 + 800499c: f8a7 30fa strh.w r3, [r7, #250] @ 0xfa + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80049a0: 4b72 ldr r3, [pc, #456] @ (8004b6c ) + 80049a2: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80049a6: 611a str r2, [r3, #16] + LCD_CS(0); + 80049a8: 4b70 ldr r3, [pc, #448] @ (8004b6c ) + 80049aa: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80049ae: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80049b0: f8b7 30fa ldrh.w r3, [r7, #250] @ 0xfa + 80049b4: b29a uxth r2, r3 + 80049b6: 4b6e ldr r3, [pc, #440] @ (8004b70 ) + 80049b8: 60da str r2, [r3, #12] + LCD_WR(0); + 80049ba: 4b6c ldr r3, [pc, #432] @ (8004b6c ) + 80049bc: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80049c0: 611a str r2, [r3, #16] + LCD_WR(1); + 80049c2: 4b6a ldr r3, [pc, #424] @ (8004b6c ) + 80049c4: 2280 movs r2, #128 @ 0x80 + 80049c6: 611a str r2, [r3, #16] + LCD_CS(1); + 80049c8: 4b68 ldr r3, [pc, #416] @ (8004b6c ) + 80049ca: f44f 7200 mov.w r2, #512 @ 0x200 + 80049ce: 611a str r2, [r3, #16] +} + 80049d0: bf00 nop + + lcd_wr_regno(0xF0); + lcd_wr_xdata(0x96); + 80049d2: 2096 movs r0, #150 @ 0x96 + 80049d4: f7fb ffaa bl 800092c + 80049d8: 23b4 movs r3, #180 @ 0xb4 + 80049da: f8a7 30f8 strh.w r3, [r7, #248] @ 0xf8 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80049de: 4b63 ldr r3, [pc, #396] @ (8004b6c ) + 80049e0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80049e4: 611a str r2, [r3, #16] + LCD_CS(0); + 80049e6: 4b61 ldr r3, [pc, #388] @ (8004b6c ) + 80049e8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80049ec: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80049ee: f8b7 30f8 ldrh.w r3, [r7, #248] @ 0xf8 + 80049f2: b29a uxth r2, r3 + 80049f4: 4b5e ldr r3, [pc, #376] @ (8004b70 ) + 80049f6: 60da str r2, [r3, #12] + LCD_WR(0); + 80049f8: 4b5c ldr r3, [pc, #368] @ (8004b6c ) + 80049fa: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80049fe: 611a str r2, [r3, #16] + LCD_WR(1); + 8004a00: 4b5a ldr r3, [pc, #360] @ (8004b6c ) + 8004a02: 2280 movs r2, #128 @ 0x80 + 8004a04: 611a str r2, [r3, #16] + LCD_CS(1); + 8004a06: 4b59 ldr r3, [pc, #356] @ (8004b6c ) + 8004a08: f44f 7200 mov.w r2, #512 @ 0x200 + 8004a0c: 611a str r2, [r3, #16] +} + 8004a0e: bf00 nop + + lcd_wr_regno(0xB4); + lcd_wr_xdata(0x01); + 8004a10: 2001 movs r0, #1 + 8004a12: f7fb ff8b bl 800092c + 8004a16: 23b6 movs r3, #182 @ 0xb6 + 8004a18: f8a7 30f6 strh.w r3, [r7, #246] @ 0xf6 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004a1c: 4b53 ldr r3, [pc, #332] @ (8004b6c ) + 8004a1e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004a22: 611a str r2, [r3, #16] + LCD_CS(0); + 8004a24: 4b51 ldr r3, [pc, #324] @ (8004b6c ) + 8004a26: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004a2a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004a2c: f8b7 30f6 ldrh.w r3, [r7, #246] @ 0xf6 + 8004a30: b29a uxth r2, r3 + 8004a32: 4b4f ldr r3, [pc, #316] @ (8004b70 ) + 8004a34: 60da str r2, [r3, #12] + LCD_WR(0); + 8004a36: 4b4d ldr r3, [pc, #308] @ (8004b6c ) + 8004a38: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004a3c: 611a str r2, [r3, #16] + LCD_WR(1); + 8004a3e: 4b4b ldr r3, [pc, #300] @ (8004b6c ) + 8004a40: 2280 movs r2, #128 @ 0x80 + 8004a42: 611a str r2, [r3, #16] + LCD_CS(1); + 8004a44: 4b49 ldr r3, [pc, #292] @ (8004b6c ) + 8004a46: f44f 7200 mov.w r2, #512 @ 0x200 + 8004a4a: 611a str r2, [r3, #16] +} + 8004a4c: bf00 nop + + lcd_wr_regno(0xB6); /* Display Function Control */ + lcd_wr_xdata(0x0A); + 8004a4e: 200a movs r0, #10 + 8004a50: f7fb ff6c bl 800092c + lcd_wr_xdata(0xA2); + 8004a54: 20a2 movs r0, #162 @ 0xa2 + 8004a56: f7fb ff69 bl 800092c + 8004a5a: 23b7 movs r3, #183 @ 0xb7 + 8004a5c: f8a7 30f4 strh.w r3, [r7, #244] @ 0xf4 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004a60: 4b42 ldr r3, [pc, #264] @ (8004b6c ) + 8004a62: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004a66: 611a str r2, [r3, #16] + LCD_CS(0); + 8004a68: 4b40 ldr r3, [pc, #256] @ (8004b6c ) + 8004a6a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004a6e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004a70: f8b7 30f4 ldrh.w r3, [r7, #244] @ 0xf4 + 8004a74: b29a uxth r2, r3 + 8004a76: 4b3e ldr r3, [pc, #248] @ (8004b70 ) + 8004a78: 60da str r2, [r3, #12] + LCD_WR(0); + 8004a7a: 4b3c ldr r3, [pc, #240] @ (8004b6c ) + 8004a7c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004a80: 611a str r2, [r3, #16] + LCD_WR(1); + 8004a82: 4b3a ldr r3, [pc, #232] @ (8004b6c ) + 8004a84: 2280 movs r2, #128 @ 0x80 + 8004a86: 611a str r2, [r3, #16] + LCD_CS(1); + 8004a88: 4b38 ldr r3, [pc, #224] @ (8004b6c ) + 8004a8a: f44f 7200 mov.w r2, #512 @ 0x200 + 8004a8e: 611a str r2, [r3, #16] +} + 8004a90: bf00 nop + + lcd_wr_regno(0xB7); + lcd_wr_xdata(0xC6); + 8004a92: 20c6 movs r0, #198 @ 0xc6 + 8004a94: f7fb ff4a bl 800092c + 8004a98: 23b9 movs r3, #185 @ 0xb9 + 8004a9a: f8a7 30f2 strh.w r3, [r7, #242] @ 0xf2 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004a9e: 4b33 ldr r3, [pc, #204] @ (8004b6c ) + 8004aa0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004aa4: 611a str r2, [r3, #16] + LCD_CS(0); + 8004aa6: 4b31 ldr r3, [pc, #196] @ (8004b6c ) + 8004aa8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004aac: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004aae: f8b7 30f2 ldrh.w r3, [r7, #242] @ 0xf2 + 8004ab2: b29a uxth r2, r3 + 8004ab4: 4b2e ldr r3, [pc, #184] @ (8004b70 ) + 8004ab6: 60da str r2, [r3, #12] + LCD_WR(0); + 8004ab8: 4b2c ldr r3, [pc, #176] @ (8004b6c ) + 8004aba: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004abe: 611a str r2, [r3, #16] + LCD_WR(1); + 8004ac0: 4b2a ldr r3, [pc, #168] @ (8004b6c ) + 8004ac2: 2280 movs r2, #128 @ 0x80 + 8004ac4: 611a str r2, [r3, #16] + LCD_CS(1); + 8004ac6: 4b29 ldr r3, [pc, #164] @ (8004b6c ) + 8004ac8: f44f 7200 mov.w r2, #512 @ 0x200 + 8004acc: 611a str r2, [r3, #16] +} + 8004ace: bf00 nop + + lcd_wr_regno(0xB9); + lcd_wr_xdata(0x02); + 8004ad0: 2002 movs r0, #2 + 8004ad2: f7fb ff2b bl 800092c + lcd_wr_xdata(0xE0); + 8004ad6: 20e0 movs r0, #224 @ 0xe0 + 8004ad8: f7fb ff28 bl 800092c + 8004adc: 23c0 movs r3, #192 @ 0xc0 + 8004ade: f8a7 30f0 strh.w r3, [r7, #240] @ 0xf0 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004ae2: 4b22 ldr r3, [pc, #136] @ (8004b6c ) + 8004ae4: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004ae8: 611a str r2, [r3, #16] + LCD_CS(0); + 8004aea: 4b20 ldr r3, [pc, #128] @ (8004b6c ) + 8004aec: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004af0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004af2: f8b7 30f0 ldrh.w r3, [r7, #240] @ 0xf0 + 8004af6: b29a uxth r2, r3 + 8004af8: 4b1d ldr r3, [pc, #116] @ (8004b70 ) + 8004afa: 60da str r2, [r3, #12] + LCD_WR(0); + 8004afc: 4b1b ldr r3, [pc, #108] @ (8004b6c ) + 8004afe: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004b02: 611a str r2, [r3, #16] + LCD_WR(1); + 8004b04: 4b19 ldr r3, [pc, #100] @ (8004b6c ) + 8004b06: 2280 movs r2, #128 @ 0x80 + 8004b08: 611a str r2, [r3, #16] + LCD_CS(1); + 8004b0a: 4b18 ldr r3, [pc, #96] @ (8004b6c ) + 8004b0c: f44f 7200 mov.w r2, #512 @ 0x200 + 8004b10: 611a str r2, [r3, #16] +} + 8004b12: bf00 nop + + lcd_wr_regno(0xC0); + lcd_wr_xdata(0x80); + 8004b14: 2080 movs r0, #128 @ 0x80 + 8004b16: f7fb ff09 bl 800092c + lcd_wr_xdata(0x16); + 8004b1a: 2016 movs r0, #22 + 8004b1c: f7fb ff06 bl 800092c + 8004b20: 23c1 movs r3, #193 @ 0xc1 + 8004b22: f8a7 30ee strh.w r3, [r7, #238] @ 0xee + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004b26: 4b11 ldr r3, [pc, #68] @ (8004b6c ) + 8004b28: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004b2c: 611a str r2, [r3, #16] + LCD_CS(0); + 8004b2e: 4b0f ldr r3, [pc, #60] @ (8004b6c ) + 8004b30: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004b34: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004b36: f8b7 30ee ldrh.w r3, [r7, #238] @ 0xee + 8004b3a: b29a uxth r2, r3 + 8004b3c: 4b0c ldr r3, [pc, #48] @ (8004b70 ) + 8004b3e: 60da str r2, [r3, #12] + LCD_WR(0); + 8004b40: 4b0a ldr r3, [pc, #40] @ (8004b6c ) + 8004b42: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004b46: 611a str r2, [r3, #16] + LCD_WR(1); + 8004b48: 4b08 ldr r3, [pc, #32] @ (8004b6c ) + 8004b4a: 2280 movs r2, #128 @ 0x80 + 8004b4c: 611a str r2, [r3, #16] + LCD_CS(1); + 8004b4e: 4b07 ldr r3, [pc, #28] @ (8004b6c ) + 8004b50: f44f 7200 mov.w r2, #512 @ 0x200 + 8004b54: 611a str r2, [r3, #16] +} + 8004b56: bf00 nop + + lcd_wr_regno(0xC1); + lcd_wr_xdata(0x19); + 8004b58: 2019 movs r0, #25 + 8004b5a: f7fb fee7 bl 800092c + 8004b5e: 23c2 movs r3, #194 @ 0xc2 + 8004b60: f8a7 30ec strh.w r3, [r7, #236] @ 0xec + 8004b64: e006 b.n 8004b74 + 8004b66: bf00 nop + 8004b68: 2000002c .word 0x2000002c + 8004b6c: 40011000 .word 0x40011000 + 8004b70: 40010c00 .word 0x40010c00 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004b74: 4bba ldr r3, [pc, #744] @ (8004e60 ) + 8004b76: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004b7a: 611a str r2, [r3, #16] + LCD_CS(0); + 8004b7c: 4bb8 ldr r3, [pc, #736] @ (8004e60 ) + 8004b7e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004b82: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004b84: f8b7 30ec ldrh.w r3, [r7, #236] @ 0xec + 8004b88: b29a uxth r2, r3 + 8004b8a: 4bb6 ldr r3, [pc, #728] @ (8004e64 ) + 8004b8c: 60da str r2, [r3, #12] + LCD_WR(0); + 8004b8e: 4bb4 ldr r3, [pc, #720] @ (8004e60 ) + 8004b90: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004b94: 611a str r2, [r3, #16] + LCD_WR(1); + 8004b96: 4bb2 ldr r3, [pc, #712] @ (8004e60 ) + 8004b98: 2280 movs r2, #128 @ 0x80 + 8004b9a: 611a str r2, [r3, #16] + LCD_CS(1); + 8004b9c: 4bb0 ldr r3, [pc, #704] @ (8004e60 ) + 8004b9e: f44f 7200 mov.w r2, #512 @ 0x200 + 8004ba2: 611a str r2, [r3, #16] +} + 8004ba4: bf00 nop + + lcd_wr_regno(0xC2); + lcd_wr_xdata(0xA7); + 8004ba6: 20a7 movs r0, #167 @ 0xa7 + 8004ba8: f7fb fec0 bl 800092c + 8004bac: 23c5 movs r3, #197 @ 0xc5 + 8004bae: f8a7 30ea strh.w r3, [r7, #234] @ 0xea + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004bb2: 4bab ldr r3, [pc, #684] @ (8004e60 ) + 8004bb4: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004bb8: 611a str r2, [r3, #16] + LCD_CS(0); + 8004bba: 4ba9 ldr r3, [pc, #676] @ (8004e60 ) + 8004bbc: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004bc0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004bc2: f8b7 30ea ldrh.w r3, [r7, #234] @ 0xea + 8004bc6: b29a uxth r2, r3 + 8004bc8: 4ba6 ldr r3, [pc, #664] @ (8004e64 ) + 8004bca: 60da str r2, [r3, #12] + LCD_WR(0); + 8004bcc: 4ba4 ldr r3, [pc, #656] @ (8004e60 ) + 8004bce: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004bd2: 611a str r2, [r3, #16] + LCD_WR(1); + 8004bd4: 4ba2 ldr r3, [pc, #648] @ (8004e60 ) + 8004bd6: 2280 movs r2, #128 @ 0x80 + 8004bd8: 611a str r2, [r3, #16] + LCD_CS(1); + 8004bda: 4ba1 ldr r3, [pc, #644] @ (8004e60 ) + 8004bdc: f44f 7200 mov.w r2, #512 @ 0x200 + 8004be0: 611a str r2, [r3, #16] +} + 8004be2: bf00 nop + + lcd_wr_regno(0xC5); + lcd_wr_xdata(0x16); + 8004be4: 2016 movs r0, #22 + 8004be6: f7fb fea1 bl 800092c + 8004bea: 23e8 movs r3, #232 @ 0xe8 + 8004bec: f8a7 30e8 strh.w r3, [r7, #232] @ 0xe8 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004bf0: 4b9b ldr r3, [pc, #620] @ (8004e60 ) + 8004bf2: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004bf6: 611a str r2, [r3, #16] + LCD_CS(0); + 8004bf8: 4b99 ldr r3, [pc, #612] @ (8004e60 ) + 8004bfa: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004bfe: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004c00: f8b7 30e8 ldrh.w r3, [r7, #232] @ 0xe8 + 8004c04: b29a uxth r2, r3 + 8004c06: 4b97 ldr r3, [pc, #604] @ (8004e64 ) + 8004c08: 60da str r2, [r3, #12] + LCD_WR(0); + 8004c0a: 4b95 ldr r3, [pc, #596] @ (8004e60 ) + 8004c0c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004c10: 611a str r2, [r3, #16] + LCD_WR(1); + 8004c12: 4b93 ldr r3, [pc, #588] @ (8004e60 ) + 8004c14: 2280 movs r2, #128 @ 0x80 + 8004c16: 611a str r2, [r3, #16] + LCD_CS(1); + 8004c18: 4b91 ldr r3, [pc, #580] @ (8004e60 ) + 8004c1a: f44f 7200 mov.w r2, #512 @ 0x200 + 8004c1e: 611a str r2, [r3, #16] +} + 8004c20: bf00 nop + + lcd_wr_regno(0xE8); + lcd_wr_xdata(0x40); + 8004c22: 2040 movs r0, #64 @ 0x40 + 8004c24: f7fb fe82 bl 800092c + lcd_wr_xdata(0x8A); + 8004c28: 208a movs r0, #138 @ 0x8a + 8004c2a: f7fb fe7f bl 800092c + lcd_wr_xdata(0x00); + 8004c2e: 2000 movs r0, #0 + 8004c30: f7fb fe7c bl 800092c + lcd_wr_xdata(0x00); + 8004c34: 2000 movs r0, #0 + 8004c36: f7fb fe79 bl 800092c + lcd_wr_xdata(0x29); + 8004c3a: 2029 movs r0, #41 @ 0x29 + 8004c3c: f7fb fe76 bl 800092c + lcd_wr_xdata(0x19); + 8004c40: 2019 movs r0, #25 + 8004c42: f7fb fe73 bl 800092c + lcd_wr_xdata(0xA5); + 8004c46: 20a5 movs r0, #165 @ 0xa5 + 8004c48: f7fb fe70 bl 800092c + lcd_wr_xdata(0x33); + 8004c4c: 2033 movs r0, #51 @ 0x33 + 8004c4e: f7fb fe6d bl 800092c + 8004c52: 23e0 movs r3, #224 @ 0xe0 + 8004c54: f8a7 30e6 strh.w r3, [r7, #230] @ 0xe6 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004c58: 4b81 ldr r3, [pc, #516] @ (8004e60 ) + 8004c5a: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004c5e: 611a str r2, [r3, #16] + LCD_CS(0); + 8004c60: 4b7f ldr r3, [pc, #508] @ (8004e60 ) + 8004c62: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004c66: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004c68: f8b7 30e6 ldrh.w r3, [r7, #230] @ 0xe6 + 8004c6c: b29a uxth r2, r3 + 8004c6e: 4b7d ldr r3, [pc, #500] @ (8004e64 ) + 8004c70: 60da str r2, [r3, #12] + LCD_WR(0); + 8004c72: 4b7b ldr r3, [pc, #492] @ (8004e60 ) + 8004c74: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004c78: 611a str r2, [r3, #16] + LCD_WR(1); + 8004c7a: 4b79 ldr r3, [pc, #484] @ (8004e60 ) + 8004c7c: 2280 movs r2, #128 @ 0x80 + 8004c7e: 611a str r2, [r3, #16] + LCD_CS(1); + 8004c80: 4b77 ldr r3, [pc, #476] @ (8004e60 ) + 8004c82: f44f 7200 mov.w r2, #512 @ 0x200 + 8004c86: 611a str r2, [r3, #16] +} + 8004c88: bf00 nop + + lcd_wr_regno(0xE0); + lcd_wr_xdata(0xF0); + 8004c8a: 20f0 movs r0, #240 @ 0xf0 + 8004c8c: f7fb fe4e bl 800092c + lcd_wr_xdata(0x07); + 8004c90: 2007 movs r0, #7 + 8004c92: f7fb fe4b bl 800092c + lcd_wr_xdata(0x0D); + 8004c96: 200d movs r0, #13 + 8004c98: f7fb fe48 bl 800092c + lcd_wr_xdata(0x04); + 8004c9c: 2004 movs r0, #4 + 8004c9e: f7fb fe45 bl 800092c + lcd_wr_xdata(0x05); + 8004ca2: 2005 movs r0, #5 + 8004ca4: f7fb fe42 bl 800092c + lcd_wr_xdata(0x14); + 8004ca8: 2014 movs r0, #20 + 8004caa: f7fb fe3f bl 800092c + lcd_wr_xdata(0x36); + 8004cae: 2036 movs r0, #54 @ 0x36 + 8004cb0: f7fb fe3c bl 800092c + lcd_wr_xdata(0x54); + 8004cb4: 2054 movs r0, #84 @ 0x54 + 8004cb6: f7fb fe39 bl 800092c + lcd_wr_xdata(0x4C); + 8004cba: 204c movs r0, #76 @ 0x4c + 8004cbc: f7fb fe36 bl 800092c + lcd_wr_xdata(0x38); + 8004cc0: 2038 movs r0, #56 @ 0x38 + 8004cc2: f7fb fe33 bl 800092c + lcd_wr_xdata(0x13); + 8004cc6: 2013 movs r0, #19 + 8004cc8: f7fb fe30 bl 800092c + lcd_wr_xdata(0x14); + 8004ccc: 2014 movs r0, #20 + 8004cce: f7fb fe2d bl 800092c + lcd_wr_xdata(0x2E); + 8004cd2: 202e movs r0, #46 @ 0x2e + 8004cd4: f7fb fe2a bl 800092c + lcd_wr_xdata(0x34); + 8004cd8: 2034 movs r0, #52 @ 0x34 + 8004cda: f7fb fe27 bl 800092c + 8004cde: 23e1 movs r3, #225 @ 0xe1 + 8004ce0: f8a7 30e4 strh.w r3, [r7, #228] @ 0xe4 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004ce4: 4b5e ldr r3, [pc, #376] @ (8004e60 ) + 8004ce6: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004cea: 611a str r2, [r3, #16] + LCD_CS(0); + 8004cec: 4b5c ldr r3, [pc, #368] @ (8004e60 ) + 8004cee: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004cf2: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004cf4: f8b7 30e4 ldrh.w r3, [r7, #228] @ 0xe4 + 8004cf8: b29a uxth r2, r3 + 8004cfa: 4b5a ldr r3, [pc, #360] @ (8004e64 ) + 8004cfc: 60da str r2, [r3, #12] + LCD_WR(0); + 8004cfe: 4b58 ldr r3, [pc, #352] @ (8004e60 ) + 8004d00: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004d04: 611a str r2, [r3, #16] + LCD_WR(1); + 8004d06: 4b56 ldr r3, [pc, #344] @ (8004e60 ) + 8004d08: 2280 movs r2, #128 @ 0x80 + 8004d0a: 611a str r2, [r3, #16] + LCD_CS(1); + 8004d0c: 4b54 ldr r3, [pc, #336] @ (8004e60 ) + 8004d0e: f44f 7200 mov.w r2, #512 @ 0x200 + 8004d12: 611a str r2, [r3, #16] +} + 8004d14: bf00 nop + + lcd_wr_regno(0xE1); + lcd_wr_xdata(0xF0); + 8004d16: 20f0 movs r0, #240 @ 0xf0 + 8004d18: f7fb fe08 bl 800092c + lcd_wr_xdata(0x10); + 8004d1c: 2010 movs r0, #16 + 8004d1e: f7fb fe05 bl 800092c + lcd_wr_xdata(0x14); + 8004d22: 2014 movs r0, #20 + 8004d24: f7fb fe02 bl 800092c + lcd_wr_xdata(0x0E); + 8004d28: 200e movs r0, #14 + 8004d2a: f7fb fdff bl 800092c + lcd_wr_xdata(0x0C); + 8004d2e: 200c movs r0, #12 + 8004d30: f7fb fdfc bl 800092c + lcd_wr_xdata(0x08); + 8004d34: 2008 movs r0, #8 + 8004d36: f7fb fdf9 bl 800092c + lcd_wr_xdata(0x35); + 8004d3a: 2035 movs r0, #53 @ 0x35 + 8004d3c: f7fb fdf6 bl 800092c + lcd_wr_xdata(0x44); + 8004d40: 2044 movs r0, #68 @ 0x44 + 8004d42: f7fb fdf3 bl 800092c + lcd_wr_xdata(0x4C); + 8004d46: 204c movs r0, #76 @ 0x4c + 8004d48: f7fb fdf0 bl 800092c + lcd_wr_xdata(0x26); + 8004d4c: 2026 movs r0, #38 @ 0x26 + 8004d4e: f7fb fded bl 800092c + lcd_wr_xdata(0x10); + 8004d52: 2010 movs r0, #16 + 8004d54: f7fb fdea bl 800092c + lcd_wr_xdata(0x12); + 8004d58: 2012 movs r0, #18 + 8004d5a: f7fb fde7 bl 800092c + lcd_wr_xdata(0x2C); + 8004d5e: 202c movs r0, #44 @ 0x2c + 8004d60: f7fb fde4 bl 800092c + lcd_wr_xdata(0x32); + 8004d64: 2032 movs r0, #50 @ 0x32 + 8004d66: f7fb fde1 bl 800092c + 8004d6a: 23f0 movs r3, #240 @ 0xf0 + 8004d6c: f8a7 30e2 strh.w r3, [r7, #226] @ 0xe2 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004d70: 4b3b ldr r3, [pc, #236] @ (8004e60 ) + 8004d72: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004d76: 611a str r2, [r3, #16] + LCD_CS(0); + 8004d78: 4b39 ldr r3, [pc, #228] @ (8004e60 ) + 8004d7a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004d7e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004d80: f8b7 30e2 ldrh.w r3, [r7, #226] @ 0xe2 + 8004d84: b29a uxth r2, r3 + 8004d86: 4b37 ldr r3, [pc, #220] @ (8004e64 ) + 8004d88: 60da str r2, [r3, #12] + LCD_WR(0); + 8004d8a: 4b35 ldr r3, [pc, #212] @ (8004e60 ) + 8004d8c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004d90: 611a str r2, [r3, #16] + LCD_WR(1); + 8004d92: 4b33 ldr r3, [pc, #204] @ (8004e60 ) + 8004d94: 2280 movs r2, #128 @ 0x80 + 8004d96: 611a str r2, [r3, #16] + LCD_CS(1); + 8004d98: 4b31 ldr r3, [pc, #196] @ (8004e60 ) + 8004d9a: f44f 7200 mov.w r2, #512 @ 0x200 + 8004d9e: 611a str r2, [r3, #16] +} + 8004da0: bf00 nop + + lcd_wr_regno(0xF0); + lcd_wr_xdata(0x3C); + 8004da2: 203c movs r0, #60 @ 0x3c + 8004da4: f7fb fdc2 bl 800092c + 8004da8: 23f0 movs r3, #240 @ 0xf0 + 8004daa: f8a7 30e0 strh.w r3, [r7, #224] @ 0xe0 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004dae: 4b2c ldr r3, [pc, #176] @ (8004e60 ) + 8004db0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004db4: 611a str r2, [r3, #16] + LCD_CS(0); + 8004db6: 4b2a ldr r3, [pc, #168] @ (8004e60 ) + 8004db8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004dbc: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004dbe: f8b7 30e0 ldrh.w r3, [r7, #224] @ 0xe0 + 8004dc2: b29a uxth r2, r3 + 8004dc4: 4b27 ldr r3, [pc, #156] @ (8004e64 ) + 8004dc6: 60da str r2, [r3, #12] + LCD_WR(0); + 8004dc8: 4b25 ldr r3, [pc, #148] @ (8004e60 ) + 8004dca: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004dce: 611a str r2, [r3, #16] + LCD_WR(1); + 8004dd0: 4b23 ldr r3, [pc, #140] @ (8004e60 ) + 8004dd2: 2280 movs r2, #128 @ 0x80 + 8004dd4: 611a str r2, [r3, #16] + LCD_CS(1); + 8004dd6: 4b22 ldr r3, [pc, #136] @ (8004e60 ) + 8004dd8: f44f 7200 mov.w r2, #512 @ 0x200 + 8004ddc: 611a str r2, [r3, #16] +} + 8004dde: bf00 nop + + lcd_wr_regno(0xF0); + lcd_wr_xdata(0x69); + 8004de0: 2069 movs r0, #105 @ 0x69 + 8004de2: f7fb fda3 bl 800092c + + HAL_Delay(120); + 8004de6: 2078 movs r0, #120 @ 0x78 + 8004de8: f002 fb66 bl 80074b8 + 8004dec: 2321 movs r3, #33 @ 0x21 + 8004dee: f8a7 30de strh.w r3, [r7, #222] @ 0xde + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004df2: 4b1b ldr r3, [pc, #108] @ (8004e60 ) + 8004df4: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004df8: 611a str r2, [r3, #16] + LCD_CS(0); + 8004dfa: 4b19 ldr r3, [pc, #100] @ (8004e60 ) + 8004dfc: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004e00: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004e02: f8b7 30de ldrh.w r3, [r7, #222] @ 0xde + 8004e06: b29a uxth r2, r3 + 8004e08: 4b16 ldr r3, [pc, #88] @ (8004e64 ) + 8004e0a: 60da str r2, [r3, #12] + LCD_WR(0); + 8004e0c: 4b14 ldr r3, [pc, #80] @ (8004e60 ) + 8004e0e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004e12: 611a str r2, [r3, #16] + LCD_WR(1); + 8004e14: 4b12 ldr r3, [pc, #72] @ (8004e60 ) + 8004e16: 2280 movs r2, #128 @ 0x80 + 8004e18: 611a str r2, [r3, #16] + LCD_CS(1); + 8004e1a: 4b11 ldr r3, [pc, #68] @ (8004e60 ) + 8004e1c: f44f 7200 mov.w r2, #512 @ 0x200 + 8004e20: 611a str r2, [r3, #16] +} + 8004e22: bf00 nop + 8004e24: 2329 movs r3, #41 @ 0x29 + 8004e26: f8a7 30dc strh.w r3, [r7, #220] @ 0xdc + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8004e2a: 4b0d ldr r3, [pc, #52] @ (8004e60 ) + 8004e2c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8004e30: 611a str r2, [r3, #16] + LCD_CS(0); + 8004e32: 4b0b ldr r3, [pc, #44] @ (8004e60 ) + 8004e34: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8004e38: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8004e3a: f8b7 30dc ldrh.w r3, [r7, #220] @ 0xdc + 8004e3e: b29a uxth r2, r3 + 8004e40: 4b08 ldr r3, [pc, #32] @ (8004e64 ) + 8004e42: 60da str r2, [r3, #12] + LCD_WR(0); + 8004e44: 4b06 ldr r3, [pc, #24] @ (8004e60 ) + 8004e46: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8004e4a: 611a str r2, [r3, #16] + LCD_WR(1); + 8004e4c: 4b04 ldr r3, [pc, #16] @ (8004e60 ) + 8004e4e: 2280 movs r2, #128 @ 0x80 + 8004e50: 611a str r2, [r3, #16] + LCD_CS(1); + 8004e52: 4b03 ldr r3, [pc, #12] @ (8004e60 ) + 8004e54: f44f 7200 mov.w r2, #512 @ 0x200 + 8004e58: 611a str r2, [r3, #16] +} + 8004e5a: f001 bdee b.w 8006a3a + 8004e5e: bf00 nop + 8004e60: 40011000 .word 0x40011000 + 8004e64: 40010c00 .word 0x40010c00 + + lcd_wr_regno(0x21); + lcd_wr_regno(0x29); + } + else if (lcddev.id == 0x5510) + 8004e68: 4b03 ldr r3, [pc, #12] @ (8004e78 ) + 8004e6a: 889b ldrh r3, [r3, #4] + 8004e6c: f245 5210 movw r2, #21776 @ 0x5510 + 8004e70: 4293 cmp r3, r2 + 8004e72: f040 87b3 bne.w 8005ddc + 8004e76: e001 b.n 8004e7c + 8004e78: 2000002c .word 0x2000002c + { + //lcd_ex_nt35510_reginit(); /* ִ��NT35510��ʼ�� */ + + lcd_write_reg(0xF000, 0x55); + 8004e7c: 2155 movs r1, #85 @ 0x55 + 8004e7e: f44f 4070 mov.w r0, #61440 @ 0xf000 + 8004e82: f7fb fd77 bl 8000974 + lcd_write_reg(0xF001, 0xAA); + 8004e86: 21aa movs r1, #170 @ 0xaa + 8004e88: f24f 0001 movw r0, #61441 @ 0xf001 + 8004e8c: f7fb fd72 bl 8000974 + lcd_write_reg(0xF002, 0x52); + 8004e90: 2152 movs r1, #82 @ 0x52 + 8004e92: f24f 0002 movw r0, #61442 @ 0xf002 + 8004e96: f7fb fd6d bl 8000974 + lcd_write_reg(0xF003, 0x08); + 8004e9a: 2108 movs r1, #8 + 8004e9c: f24f 0003 movw r0, #61443 @ 0xf003 + 8004ea0: f7fb fd68 bl 8000974 + lcd_write_reg(0xF004, 0x01); + 8004ea4: 2101 movs r1, #1 + 8004ea6: f24f 0004 movw r0, #61444 @ 0xf004 + 8004eaa: f7fb fd63 bl 8000974 + /* AVDD Set AVDD 5.2V */ + lcd_write_reg(0xB000, 0x0D); + 8004eae: 210d movs r1, #13 + 8004eb0: f44f 4030 mov.w r0, #45056 @ 0xb000 + 8004eb4: f7fb fd5e bl 8000974 + lcd_write_reg(0xB001, 0x0D); + 8004eb8: 210d movs r1, #13 + 8004eba: f24b 0001 movw r0, #45057 @ 0xb001 + 8004ebe: f7fb fd59 bl 8000974 + lcd_write_reg(0xB002, 0x0D); + 8004ec2: 210d movs r1, #13 + 8004ec4: f24b 0002 movw r0, #45058 @ 0xb002 + 8004ec8: f7fb fd54 bl 8000974 + /* AVDD ratio */ + lcd_write_reg(0xB600, 0x34); + 8004ecc: 2134 movs r1, #52 @ 0x34 + 8004ece: f44f 4036 mov.w r0, #46592 @ 0xb600 + 8004ed2: f7fb fd4f bl 8000974 + lcd_write_reg(0xB601, 0x34); + 8004ed6: 2134 movs r1, #52 @ 0x34 + 8004ed8: f24b 6001 movw r0, #46593 @ 0xb601 + 8004edc: f7fb fd4a bl 8000974 + lcd_write_reg(0xB602, 0x34); + 8004ee0: 2134 movs r1, #52 @ 0x34 + 8004ee2: f24b 6002 movw r0, #46594 @ 0xb602 + 8004ee6: f7fb fd45 bl 8000974 + /* AVEE -5.2V */ + lcd_write_reg(0xB100, 0x0D); + 8004eea: 210d movs r1, #13 + 8004eec: f44f 4031 mov.w r0, #45312 @ 0xb100 + 8004ef0: f7fb fd40 bl 8000974 + lcd_write_reg(0xB101, 0x0D); + 8004ef4: 210d movs r1, #13 + 8004ef6: f24b 1001 movw r0, #45313 @ 0xb101 + 8004efa: f7fb fd3b bl 8000974 + lcd_write_reg(0xB102, 0x0D); + 8004efe: 210d movs r1, #13 + 8004f00: f24b 1002 movw r0, #45314 @ 0xb102 + 8004f04: f7fb fd36 bl 8000974 + /* AVEE ratio */ + lcd_write_reg(0xB700, 0x34); + 8004f08: 2134 movs r1, #52 @ 0x34 + 8004f0a: f44f 4037 mov.w r0, #46848 @ 0xb700 + 8004f0e: f7fb fd31 bl 8000974 + lcd_write_reg(0xB701, 0x34); + 8004f12: 2134 movs r1, #52 @ 0x34 + 8004f14: f24b 7001 movw r0, #46849 @ 0xb701 + 8004f18: f7fb fd2c bl 8000974 + lcd_write_reg(0xB702, 0x34); + 8004f1c: 2134 movs r1, #52 @ 0x34 + 8004f1e: f24b 7002 movw r0, #46850 @ 0xb702 + 8004f22: f7fb fd27 bl 8000974 + /* VCL -2.5V */ + lcd_write_reg(0xB200, 0x00); + 8004f26: 2100 movs r1, #0 + 8004f28: f44f 4032 mov.w r0, #45568 @ 0xb200 + 8004f2c: f7fb fd22 bl 8000974 + lcd_write_reg(0xB201, 0x00); + 8004f30: 2100 movs r1, #0 + 8004f32: f24b 2001 movw r0, #45569 @ 0xb201 + 8004f36: f7fb fd1d bl 8000974 + lcd_write_reg(0xB202, 0x00); + 8004f3a: 2100 movs r1, #0 + 8004f3c: f24b 2002 movw r0, #45570 @ 0xb202 + 8004f40: f7fb fd18 bl 8000974 + /* VCL ratio */ + lcd_write_reg(0xB800, 0x24); + 8004f44: 2124 movs r1, #36 @ 0x24 + 8004f46: f44f 4038 mov.w r0, #47104 @ 0xb800 + 8004f4a: f7fb fd13 bl 8000974 + lcd_write_reg(0xB801, 0x24); + 8004f4e: 2124 movs r1, #36 @ 0x24 + 8004f50: f64b 0001 movw r0, #47105 @ 0xb801 + 8004f54: f7fb fd0e bl 8000974 + lcd_write_reg(0xB802, 0x24); + 8004f58: 2124 movs r1, #36 @ 0x24 + 8004f5a: f64b 0002 movw r0, #47106 @ 0xb802 + 8004f5e: f7fb fd09 bl 8000974 + /* VGH 15V (Free pump) */ + lcd_write_reg(0xBF00, 0x01); + 8004f62: 2101 movs r1, #1 + 8004f64: f44f 403f mov.w r0, #48896 @ 0xbf00 + 8004f68: f7fb fd04 bl 8000974 + lcd_write_reg(0xB300, 0x0F); + 8004f6c: 210f movs r1, #15 + 8004f6e: f44f 4033 mov.w r0, #45824 @ 0xb300 + 8004f72: f7fb fcff bl 8000974 + lcd_write_reg(0xB301, 0x0F); + 8004f76: 210f movs r1, #15 + 8004f78: f24b 3001 movw r0, #45825 @ 0xb301 + 8004f7c: f7fb fcfa bl 8000974 + lcd_write_reg(0xB302, 0x0F); + 8004f80: 210f movs r1, #15 + 8004f82: f24b 3002 movw r0, #45826 @ 0xb302 + 8004f86: f7fb fcf5 bl 8000974 + /* VGH ratio */ + lcd_write_reg(0xB900, 0x34); + 8004f8a: 2134 movs r1, #52 @ 0x34 + 8004f8c: f44f 4039 mov.w r0, #47360 @ 0xb900 + 8004f90: f7fb fcf0 bl 8000974 + lcd_write_reg(0xB901, 0x34); + 8004f94: 2134 movs r1, #52 @ 0x34 + 8004f96: f64b 1001 movw r0, #47361 @ 0xb901 + 8004f9a: f7fb fceb bl 8000974 + lcd_write_reg(0xB902, 0x34); + 8004f9e: 2134 movs r1, #52 @ 0x34 + 8004fa0: f64b 1002 movw r0, #47362 @ 0xb902 + 8004fa4: f7fb fce6 bl 8000974 + /* VGL_REG -10V */ + lcd_write_reg(0xB500, 0x08); + 8004fa8: 2108 movs r1, #8 + 8004faa: f44f 4035 mov.w r0, #46336 @ 0xb500 + 8004fae: f7fb fce1 bl 8000974 + lcd_write_reg(0xB501, 0x08); + 8004fb2: 2108 movs r1, #8 + 8004fb4: f24b 5001 movw r0, #46337 @ 0xb501 + 8004fb8: f7fb fcdc bl 8000974 + lcd_write_reg(0xB502, 0x08); + 8004fbc: 2108 movs r1, #8 + 8004fbe: f24b 5002 movw r0, #46338 @ 0xb502 + 8004fc2: f7fb fcd7 bl 8000974 + lcd_write_reg(0xC200, 0x03); + 8004fc6: 2103 movs r1, #3 + 8004fc8: f44f 4042 mov.w r0, #49664 @ 0xc200 + 8004fcc: f7fb fcd2 bl 8000974 + /* VGLX ratio */ + lcd_write_reg(0xBA00, 0x24); + 8004fd0: 2124 movs r1, #36 @ 0x24 + 8004fd2: f44f 403a mov.w r0, #47616 @ 0xba00 + 8004fd6: f7fb fccd bl 8000974 + lcd_write_reg(0xBA01, 0x24); + 8004fda: 2124 movs r1, #36 @ 0x24 + 8004fdc: f64b 2001 movw r0, #47617 @ 0xba01 + 8004fe0: f7fb fcc8 bl 8000974 + lcd_write_reg(0xBA02, 0x24); + 8004fe4: 2124 movs r1, #36 @ 0x24 + 8004fe6: f64b 2002 movw r0, #47618 @ 0xba02 + 8004fea: f7fb fcc3 bl 8000974 + /* VGMP/VGSP 4.5V/0V */ + lcd_write_reg(0xBC00, 0x00); + 8004fee: 2100 movs r1, #0 + 8004ff0: f44f 403c mov.w r0, #48128 @ 0xbc00 + 8004ff4: f7fb fcbe bl 8000974 + lcd_write_reg(0xBC01, 0x78); + 8004ff8: 2178 movs r1, #120 @ 0x78 + 8004ffa: f64b 4001 movw r0, #48129 @ 0xbc01 + 8004ffe: f7fb fcb9 bl 8000974 + lcd_write_reg(0xBC02, 0x00); + 8005002: 2100 movs r1, #0 + 8005004: f64b 4002 movw r0, #48130 @ 0xbc02 + 8005008: f7fb fcb4 bl 8000974 + /* VGMN/VGSN -4.5V/0V */ + lcd_write_reg(0xBD00, 0x00); + 800500c: 2100 movs r1, #0 + 800500e: f44f 403d mov.w r0, #48384 @ 0xbd00 + 8005012: f7fb fcaf bl 8000974 + lcd_write_reg(0xBD01, 0x78); + 8005016: 2178 movs r1, #120 @ 0x78 + 8005018: f64b 5001 movw r0, #48385 @ 0xbd01 + 800501c: f7fb fcaa bl 8000974 + lcd_write_reg(0xBD02, 0x00); + 8005020: 2100 movs r1, #0 + 8005022: f64b 5002 movw r0, #48386 @ 0xbd02 + 8005026: f7fb fca5 bl 8000974 + /* VCOM */ + lcd_write_reg(0xBE00, 0x00); + 800502a: 2100 movs r1, #0 + 800502c: f44f 403e mov.w r0, #48640 @ 0xbe00 + 8005030: f7fb fca0 bl 8000974 + lcd_write_reg(0xBE01, 0x64); + 8005034: 2164 movs r1, #100 @ 0x64 + 8005036: f64b 6001 movw r0, #48641 @ 0xbe01 + 800503a: f7fb fc9b bl 8000974 + /* Gamma Setting */ + lcd_write_reg(0xD100, 0x00); + 800503e: 2100 movs r1, #0 + 8005040: f44f 4051 mov.w r0, #53504 @ 0xd100 + 8005044: f7fb fc96 bl 8000974 + lcd_write_reg(0xD101, 0x33); + 8005048: 2133 movs r1, #51 @ 0x33 + 800504a: f24d 1001 movw r0, #53505 @ 0xd101 + 800504e: f7fb fc91 bl 8000974 + lcd_write_reg(0xD102, 0x00); + 8005052: 2100 movs r1, #0 + 8005054: f24d 1002 movw r0, #53506 @ 0xd102 + 8005058: f7fb fc8c bl 8000974 + lcd_write_reg(0xD103, 0x34); + 800505c: 2134 movs r1, #52 @ 0x34 + 800505e: f24d 1003 movw r0, #53507 @ 0xd103 + 8005062: f7fb fc87 bl 8000974 + lcd_write_reg(0xD104, 0x00); + 8005066: 2100 movs r1, #0 + 8005068: f24d 1004 movw r0, #53508 @ 0xd104 + 800506c: f7fb fc82 bl 8000974 + lcd_write_reg(0xD105, 0x3A); + 8005070: 213a movs r1, #58 @ 0x3a + 8005072: f24d 1005 movw r0, #53509 @ 0xd105 + 8005076: f7fb fc7d bl 8000974 + lcd_write_reg(0xD106, 0x00); + 800507a: 2100 movs r1, #0 + 800507c: f24d 1006 movw r0, #53510 @ 0xd106 + 8005080: f7fb fc78 bl 8000974 + lcd_write_reg(0xD107, 0x4A); + 8005084: 214a movs r1, #74 @ 0x4a + 8005086: f24d 1007 movw r0, #53511 @ 0xd107 + 800508a: f7fb fc73 bl 8000974 + lcd_write_reg(0xD108, 0x00); + 800508e: 2100 movs r1, #0 + 8005090: f24d 1008 movw r0, #53512 @ 0xd108 + 8005094: f7fb fc6e bl 8000974 + lcd_write_reg(0xD109, 0x5C); + 8005098: 215c movs r1, #92 @ 0x5c + 800509a: f24d 1009 movw r0, #53513 @ 0xd109 + 800509e: f7fb fc69 bl 8000974 + lcd_write_reg(0xD10A, 0x00); + 80050a2: 2100 movs r1, #0 + 80050a4: f24d 100a movw r0, #53514 @ 0xd10a + 80050a8: f7fb fc64 bl 8000974 + lcd_write_reg(0xD10B, 0x81); + 80050ac: 2181 movs r1, #129 @ 0x81 + 80050ae: f24d 100b movw r0, #53515 @ 0xd10b + 80050b2: f7fb fc5f bl 8000974 + lcd_write_reg(0xD10C, 0x00); + 80050b6: 2100 movs r1, #0 + 80050b8: f24d 100c movw r0, #53516 @ 0xd10c + 80050bc: f7fb fc5a bl 8000974 + lcd_write_reg(0xD10D, 0xA6); + 80050c0: 21a6 movs r1, #166 @ 0xa6 + 80050c2: f24d 100d movw r0, #53517 @ 0xd10d + 80050c6: f7fb fc55 bl 8000974 + lcd_write_reg(0xD10E, 0x00); + 80050ca: 2100 movs r1, #0 + 80050cc: f24d 100e movw r0, #53518 @ 0xd10e + 80050d0: f7fb fc50 bl 8000974 + lcd_write_reg(0xD10F, 0xE5); + 80050d4: 21e5 movs r1, #229 @ 0xe5 + 80050d6: f24d 100f movw r0, #53519 @ 0xd10f + 80050da: f7fb fc4b bl 8000974 + lcd_write_reg(0xD110, 0x01); + 80050de: 2101 movs r1, #1 + 80050e0: f24d 1010 movw r0, #53520 @ 0xd110 + 80050e4: f7fb fc46 bl 8000974 + lcd_write_reg(0xD111, 0x13); + 80050e8: 2113 movs r1, #19 + 80050ea: f24d 1011 movw r0, #53521 @ 0xd111 + 80050ee: f7fb fc41 bl 8000974 + lcd_write_reg(0xD112, 0x01); + 80050f2: 2101 movs r1, #1 + 80050f4: f24d 1012 movw r0, #53522 @ 0xd112 + 80050f8: f7fb fc3c bl 8000974 + lcd_write_reg(0xD113, 0x54); + 80050fc: 2154 movs r1, #84 @ 0x54 + 80050fe: f24d 1013 movw r0, #53523 @ 0xd113 + 8005102: f7fb fc37 bl 8000974 + lcd_write_reg(0xD114, 0x01); + 8005106: 2101 movs r1, #1 + 8005108: f24d 1014 movw r0, #53524 @ 0xd114 + 800510c: f7fb fc32 bl 8000974 + lcd_write_reg(0xD115, 0x82); + 8005110: 2182 movs r1, #130 @ 0x82 + 8005112: f24d 1015 movw r0, #53525 @ 0xd115 + 8005116: f7fb fc2d bl 8000974 + lcd_write_reg(0xD116, 0x01); + 800511a: 2101 movs r1, #1 + 800511c: f24d 1016 movw r0, #53526 @ 0xd116 + 8005120: f7fb fc28 bl 8000974 + lcd_write_reg(0xD117, 0xCA); + 8005124: 21ca movs r1, #202 @ 0xca + 8005126: f24d 1017 movw r0, #53527 @ 0xd117 + 800512a: f7fb fc23 bl 8000974 + lcd_write_reg(0xD118, 0x02); + 800512e: 2102 movs r1, #2 + 8005130: f24d 1018 movw r0, #53528 @ 0xd118 + 8005134: f7fb fc1e bl 8000974 + lcd_write_reg(0xD119, 0x00); + 8005138: 2100 movs r1, #0 + 800513a: f24d 1019 movw r0, #53529 @ 0xd119 + 800513e: f7fb fc19 bl 8000974 + lcd_write_reg(0xD11A, 0x02); + 8005142: 2102 movs r1, #2 + 8005144: f24d 101a movw r0, #53530 @ 0xd11a + 8005148: f7fb fc14 bl 8000974 + lcd_write_reg(0xD11B, 0x01); + 800514c: 2101 movs r1, #1 + 800514e: f24d 101b movw r0, #53531 @ 0xd11b + 8005152: f7fb fc0f bl 8000974 + lcd_write_reg(0xD11C, 0x02); + 8005156: 2102 movs r1, #2 + 8005158: f24d 101c movw r0, #53532 @ 0xd11c + 800515c: f7fb fc0a bl 8000974 + lcd_write_reg(0xD11D, 0x34); + 8005160: 2134 movs r1, #52 @ 0x34 + 8005162: f24d 101d movw r0, #53533 @ 0xd11d + 8005166: f7fb fc05 bl 8000974 + lcd_write_reg(0xD11E, 0x02); + 800516a: 2102 movs r1, #2 + 800516c: f24d 101e movw r0, #53534 @ 0xd11e + 8005170: f7fb fc00 bl 8000974 + lcd_write_reg(0xD11F, 0x67); + 8005174: 2167 movs r1, #103 @ 0x67 + 8005176: f24d 101f movw r0, #53535 @ 0xd11f + 800517a: f7fb fbfb bl 8000974 + lcd_write_reg(0xD120, 0x02); + 800517e: 2102 movs r1, #2 + 8005180: f24d 1020 movw r0, #53536 @ 0xd120 + 8005184: f7fb fbf6 bl 8000974 + lcd_write_reg(0xD121, 0x84); + 8005188: 2184 movs r1, #132 @ 0x84 + 800518a: f24d 1021 movw r0, #53537 @ 0xd121 + 800518e: f7fb fbf1 bl 8000974 + lcd_write_reg(0xD122, 0x02); + 8005192: 2102 movs r1, #2 + 8005194: f24d 1022 movw r0, #53538 @ 0xd122 + 8005198: f7fb fbec bl 8000974 + lcd_write_reg(0xD123, 0xA4); + 800519c: 21a4 movs r1, #164 @ 0xa4 + 800519e: f24d 1023 movw r0, #53539 @ 0xd123 + 80051a2: f7fb fbe7 bl 8000974 + lcd_write_reg(0xD124, 0x02); + 80051a6: 2102 movs r1, #2 + 80051a8: f24d 1024 movw r0, #53540 @ 0xd124 + 80051ac: f7fb fbe2 bl 8000974 + lcd_write_reg(0xD125, 0xB7); + 80051b0: 21b7 movs r1, #183 @ 0xb7 + 80051b2: f24d 1025 movw r0, #53541 @ 0xd125 + 80051b6: f7fb fbdd bl 8000974 + lcd_write_reg(0xD126, 0x02); + 80051ba: 2102 movs r1, #2 + 80051bc: f24d 1026 movw r0, #53542 @ 0xd126 + 80051c0: f7fb fbd8 bl 8000974 + lcd_write_reg(0xD127, 0xCF); + 80051c4: 21cf movs r1, #207 @ 0xcf + 80051c6: f24d 1027 movw r0, #53543 @ 0xd127 + 80051ca: f7fb fbd3 bl 8000974 + lcd_write_reg(0xD128, 0x02); + 80051ce: 2102 movs r1, #2 + 80051d0: f24d 1028 movw r0, #53544 @ 0xd128 + 80051d4: f7fb fbce bl 8000974 + lcd_write_reg(0xD129, 0xDE); + 80051d8: 21de movs r1, #222 @ 0xde + 80051da: f24d 1029 movw r0, #53545 @ 0xd129 + 80051de: f7fb fbc9 bl 8000974 + lcd_write_reg(0xD12A, 0x02); + 80051e2: 2102 movs r1, #2 + 80051e4: f24d 102a movw r0, #53546 @ 0xd12a + 80051e8: f7fb fbc4 bl 8000974 + lcd_write_reg(0xD12B, 0xF2); + 80051ec: 21f2 movs r1, #242 @ 0xf2 + 80051ee: f24d 102b movw r0, #53547 @ 0xd12b + 80051f2: f7fb fbbf bl 8000974 + lcd_write_reg(0xD12C, 0x02); + 80051f6: 2102 movs r1, #2 + 80051f8: f24d 102c movw r0, #53548 @ 0xd12c + 80051fc: f7fb fbba bl 8000974 + lcd_write_reg(0xD12D, 0xFE); + 8005200: 21fe movs r1, #254 @ 0xfe + 8005202: f24d 102d movw r0, #53549 @ 0xd12d + 8005206: f7fb fbb5 bl 8000974 + lcd_write_reg(0xD12E, 0x03); + 800520a: 2103 movs r1, #3 + 800520c: f24d 102e movw r0, #53550 @ 0xd12e + 8005210: f7fb fbb0 bl 8000974 + lcd_write_reg(0xD12F, 0x10); + 8005214: 2110 movs r1, #16 + 8005216: f24d 102f movw r0, #53551 @ 0xd12f + 800521a: f7fb fbab bl 8000974 + lcd_write_reg(0xD130, 0x03); + 800521e: 2103 movs r1, #3 + 8005220: f24d 1030 movw r0, #53552 @ 0xd130 + 8005224: f7fb fba6 bl 8000974 + lcd_write_reg(0xD131, 0x33); + 8005228: 2133 movs r1, #51 @ 0x33 + 800522a: f24d 1031 movw r0, #53553 @ 0xd131 + 800522e: f7fb fba1 bl 8000974 + lcd_write_reg(0xD132, 0x03); + 8005232: 2103 movs r1, #3 + 8005234: f24d 1032 movw r0, #53554 @ 0xd132 + 8005238: f7fb fb9c bl 8000974 + lcd_write_reg(0xD133, 0x6D); + 800523c: 216d movs r1, #109 @ 0x6d + 800523e: f24d 1033 movw r0, #53555 @ 0xd133 + 8005242: f7fb fb97 bl 8000974 + lcd_write_reg(0xD200, 0x00); + 8005246: 2100 movs r1, #0 + 8005248: f44f 4052 mov.w r0, #53760 @ 0xd200 + 800524c: f7fb fb92 bl 8000974 + lcd_write_reg(0xD201, 0x33); + 8005250: 2133 movs r1, #51 @ 0x33 + 8005252: f24d 2001 movw r0, #53761 @ 0xd201 + 8005256: f7fb fb8d bl 8000974 + lcd_write_reg(0xD202, 0x00); + 800525a: 2100 movs r1, #0 + 800525c: f24d 2002 movw r0, #53762 @ 0xd202 + 8005260: f7fb fb88 bl 8000974 + lcd_write_reg(0xD203, 0x34); + 8005264: 2134 movs r1, #52 @ 0x34 + 8005266: f24d 2003 movw r0, #53763 @ 0xd203 + 800526a: f7fb fb83 bl 8000974 + lcd_write_reg(0xD204, 0x00); + 800526e: 2100 movs r1, #0 + 8005270: f24d 2004 movw r0, #53764 @ 0xd204 + 8005274: f7fb fb7e bl 8000974 + lcd_write_reg(0xD205, 0x3A); + 8005278: 213a movs r1, #58 @ 0x3a + 800527a: f24d 2005 movw r0, #53765 @ 0xd205 + 800527e: f7fb fb79 bl 8000974 + lcd_write_reg(0xD206, 0x00); + 8005282: 2100 movs r1, #0 + 8005284: f24d 2006 movw r0, #53766 @ 0xd206 + 8005288: f7fb fb74 bl 8000974 + lcd_write_reg(0xD207, 0x4A); + 800528c: 214a movs r1, #74 @ 0x4a + 800528e: f24d 2007 movw r0, #53767 @ 0xd207 + 8005292: f7fb fb6f bl 8000974 + lcd_write_reg(0xD208, 0x00); + 8005296: 2100 movs r1, #0 + 8005298: f24d 2008 movw r0, #53768 @ 0xd208 + 800529c: f7fb fb6a bl 8000974 + lcd_write_reg(0xD209, 0x5C); + 80052a0: 215c movs r1, #92 @ 0x5c + 80052a2: f24d 2009 movw r0, #53769 @ 0xd209 + 80052a6: f7fb fb65 bl 8000974 + lcd_write_reg(0xD20A, 0x00); + 80052aa: 2100 movs r1, #0 + 80052ac: f24d 200a movw r0, #53770 @ 0xd20a + 80052b0: f7fb fb60 bl 8000974 + + lcd_write_reg(0xD20B, 0x81); + 80052b4: 2181 movs r1, #129 @ 0x81 + 80052b6: f24d 200b movw r0, #53771 @ 0xd20b + 80052ba: f7fb fb5b bl 8000974 + lcd_write_reg(0xD20C, 0x00); + 80052be: 2100 movs r1, #0 + 80052c0: f24d 200c movw r0, #53772 @ 0xd20c + 80052c4: f7fb fb56 bl 8000974 + lcd_write_reg(0xD20D, 0xA6); + 80052c8: 21a6 movs r1, #166 @ 0xa6 + 80052ca: f24d 200d movw r0, #53773 @ 0xd20d + 80052ce: f7fb fb51 bl 8000974 + lcd_write_reg(0xD20E, 0x00); + 80052d2: 2100 movs r1, #0 + 80052d4: f24d 200e movw r0, #53774 @ 0xd20e + 80052d8: f7fb fb4c bl 8000974 + lcd_write_reg(0xD20F, 0xE5); + 80052dc: 21e5 movs r1, #229 @ 0xe5 + 80052de: f24d 200f movw r0, #53775 @ 0xd20f + 80052e2: f7fb fb47 bl 8000974 + lcd_write_reg(0xD210, 0x01); + 80052e6: 2101 movs r1, #1 + 80052e8: f24d 2010 movw r0, #53776 @ 0xd210 + 80052ec: f7fb fb42 bl 8000974 + lcd_write_reg(0xD211, 0x13); + 80052f0: 2113 movs r1, #19 + 80052f2: f24d 2011 movw r0, #53777 @ 0xd211 + 80052f6: f7fb fb3d bl 8000974 + lcd_write_reg(0xD212, 0x01); + 80052fa: 2101 movs r1, #1 + 80052fc: f24d 2012 movw r0, #53778 @ 0xd212 + 8005300: f7fb fb38 bl 8000974 + lcd_write_reg(0xD213, 0x54); + 8005304: 2154 movs r1, #84 @ 0x54 + 8005306: f24d 2013 movw r0, #53779 @ 0xd213 + 800530a: f7fb fb33 bl 8000974 + lcd_write_reg(0xD214, 0x01); + 800530e: 2101 movs r1, #1 + 8005310: f24d 2014 movw r0, #53780 @ 0xd214 + 8005314: f7fb fb2e bl 8000974 + lcd_write_reg(0xD215, 0x82); + 8005318: 2182 movs r1, #130 @ 0x82 + 800531a: f24d 2015 movw r0, #53781 @ 0xd215 + 800531e: f7fb fb29 bl 8000974 + lcd_write_reg(0xD216, 0x01); + 8005322: 2101 movs r1, #1 + 8005324: f24d 2016 movw r0, #53782 @ 0xd216 + 8005328: f7fb fb24 bl 8000974 + lcd_write_reg(0xD217, 0xCA); + 800532c: 21ca movs r1, #202 @ 0xca + 800532e: f24d 2017 movw r0, #53783 @ 0xd217 + 8005332: f7fb fb1f bl 8000974 + lcd_write_reg(0xD218, 0x02); + 8005336: 2102 movs r1, #2 + 8005338: f24d 2018 movw r0, #53784 @ 0xd218 + 800533c: f7fb fb1a bl 8000974 + lcd_write_reg(0xD219, 0x00); + 8005340: 2100 movs r1, #0 + 8005342: f24d 2019 movw r0, #53785 @ 0xd219 + 8005346: f7fb fb15 bl 8000974 + lcd_write_reg(0xD21A, 0x02); + 800534a: 2102 movs r1, #2 + 800534c: f24d 201a movw r0, #53786 @ 0xd21a + 8005350: f7fb fb10 bl 8000974 + lcd_write_reg(0xD21B, 0x01); + 8005354: 2101 movs r1, #1 + 8005356: f24d 201b movw r0, #53787 @ 0xd21b + 800535a: f7fb fb0b bl 8000974 + lcd_write_reg(0xD21C, 0x02); + 800535e: 2102 movs r1, #2 + 8005360: f24d 201c movw r0, #53788 @ 0xd21c + 8005364: f7fb fb06 bl 8000974 + lcd_write_reg(0xD21D, 0x34); + 8005368: 2134 movs r1, #52 @ 0x34 + 800536a: f24d 201d movw r0, #53789 @ 0xd21d + 800536e: f7fb fb01 bl 8000974 + lcd_write_reg(0xD21E, 0x02); + 8005372: 2102 movs r1, #2 + 8005374: f24d 201e movw r0, #53790 @ 0xd21e + 8005378: f7fb fafc bl 8000974 + lcd_write_reg(0xD21F, 0x67); + 800537c: 2167 movs r1, #103 @ 0x67 + 800537e: f24d 201f movw r0, #53791 @ 0xd21f + 8005382: f7fb faf7 bl 8000974 + lcd_write_reg(0xD220, 0x02); + 8005386: 2102 movs r1, #2 + 8005388: f24d 2020 movw r0, #53792 @ 0xd220 + 800538c: f7fb faf2 bl 8000974 + lcd_write_reg(0xD221, 0x84); + 8005390: 2184 movs r1, #132 @ 0x84 + 8005392: f24d 2021 movw r0, #53793 @ 0xd221 + 8005396: f7fb faed bl 8000974 + lcd_write_reg(0xD222, 0x02); + 800539a: 2102 movs r1, #2 + 800539c: f24d 2022 movw r0, #53794 @ 0xd222 + 80053a0: f7fb fae8 bl 8000974 + lcd_write_reg(0xD223, 0xA4); + 80053a4: 21a4 movs r1, #164 @ 0xa4 + 80053a6: f24d 2023 movw r0, #53795 @ 0xd223 + 80053aa: f7fb fae3 bl 8000974 + lcd_write_reg(0xD224, 0x02); + 80053ae: 2102 movs r1, #2 + 80053b0: f24d 2024 movw r0, #53796 @ 0xd224 + 80053b4: f7fb fade bl 8000974 + lcd_write_reg(0xD225, 0xB7); + 80053b8: 21b7 movs r1, #183 @ 0xb7 + 80053ba: f24d 2025 movw r0, #53797 @ 0xd225 + 80053be: f7fb fad9 bl 8000974 + lcd_write_reg(0xD226, 0x02); + 80053c2: 2102 movs r1, #2 + 80053c4: f24d 2026 movw r0, #53798 @ 0xd226 + 80053c8: f7fb fad4 bl 8000974 + lcd_write_reg(0xD227, 0xCF); + 80053cc: 21cf movs r1, #207 @ 0xcf + 80053ce: f24d 2027 movw r0, #53799 @ 0xd227 + 80053d2: f7fb facf bl 8000974 + lcd_write_reg(0xD228, 0x02); + 80053d6: 2102 movs r1, #2 + 80053d8: f24d 2028 movw r0, #53800 @ 0xd228 + 80053dc: f7fb faca bl 8000974 + lcd_write_reg(0xD229, 0xDE); + 80053e0: 21de movs r1, #222 @ 0xde + 80053e2: f24d 2029 movw r0, #53801 @ 0xd229 + 80053e6: f7fb fac5 bl 8000974 + lcd_write_reg(0xD22A, 0x02); + 80053ea: 2102 movs r1, #2 + 80053ec: f24d 202a movw r0, #53802 @ 0xd22a + 80053f0: f7fb fac0 bl 8000974 + lcd_write_reg(0xD22B, 0xF2); + 80053f4: 21f2 movs r1, #242 @ 0xf2 + 80053f6: f24d 202b movw r0, #53803 @ 0xd22b + 80053fa: f7fb fabb bl 8000974 + lcd_write_reg(0xD22C, 0x02); + 80053fe: 2102 movs r1, #2 + 8005400: f24d 202c movw r0, #53804 @ 0xd22c + 8005404: f7fb fab6 bl 8000974 + lcd_write_reg(0xD22D, 0xFE); + 8005408: 21fe movs r1, #254 @ 0xfe + 800540a: f24d 202d movw r0, #53805 @ 0xd22d + 800540e: f7fb fab1 bl 8000974 + lcd_write_reg(0xD22E, 0x03); + 8005412: 2103 movs r1, #3 + 8005414: f24d 202e movw r0, #53806 @ 0xd22e + 8005418: f7fb faac bl 8000974 + lcd_write_reg(0xD22F, 0x10); + 800541c: 2110 movs r1, #16 + 800541e: f24d 202f movw r0, #53807 @ 0xd22f + 8005422: f7fb faa7 bl 8000974 + lcd_write_reg(0xD230, 0x03); + 8005426: 2103 movs r1, #3 + 8005428: f24d 2030 movw r0, #53808 @ 0xd230 + 800542c: f7fb faa2 bl 8000974 + lcd_write_reg(0xD231, 0x33); + 8005430: 2133 movs r1, #51 @ 0x33 + 8005432: f24d 2031 movw r0, #53809 @ 0xd231 + 8005436: f7fb fa9d bl 8000974 + lcd_write_reg(0xD232, 0x03); + 800543a: 2103 movs r1, #3 + 800543c: f24d 2032 movw r0, #53810 @ 0xd232 + 8005440: f7fb fa98 bl 8000974 + lcd_write_reg(0xD233, 0x6D); + 8005444: 216d movs r1, #109 @ 0x6d + 8005446: f24d 2033 movw r0, #53811 @ 0xd233 + 800544a: f7fb fa93 bl 8000974 + lcd_write_reg(0xD300, 0x00); + 800544e: 2100 movs r1, #0 + 8005450: f44f 4053 mov.w r0, #54016 @ 0xd300 + 8005454: f7fb fa8e bl 8000974 + lcd_write_reg(0xD301, 0x33); + 8005458: 2133 movs r1, #51 @ 0x33 + 800545a: f24d 3001 movw r0, #54017 @ 0xd301 + 800545e: f7fb fa89 bl 8000974 + lcd_write_reg(0xD302, 0x00); + 8005462: 2100 movs r1, #0 + 8005464: f24d 3002 movw r0, #54018 @ 0xd302 + 8005468: f7fb fa84 bl 8000974 + lcd_write_reg(0xD303, 0x34); + 800546c: 2134 movs r1, #52 @ 0x34 + 800546e: f24d 3003 movw r0, #54019 @ 0xd303 + 8005472: f7fb fa7f bl 8000974 + lcd_write_reg(0xD304, 0x00); + 8005476: 2100 movs r1, #0 + 8005478: f24d 3004 movw r0, #54020 @ 0xd304 + 800547c: f7fb fa7a bl 8000974 + lcd_write_reg(0xD305, 0x3A); + 8005480: 213a movs r1, #58 @ 0x3a + 8005482: f24d 3005 movw r0, #54021 @ 0xd305 + 8005486: f7fb fa75 bl 8000974 + lcd_write_reg(0xD306, 0x00); + 800548a: 2100 movs r1, #0 + 800548c: f24d 3006 movw r0, #54022 @ 0xd306 + 8005490: f7fb fa70 bl 8000974 + lcd_write_reg(0xD307, 0x4A); + 8005494: 214a movs r1, #74 @ 0x4a + 8005496: f24d 3007 movw r0, #54023 @ 0xd307 + 800549a: f7fb fa6b bl 8000974 + lcd_write_reg(0xD308, 0x00); + 800549e: 2100 movs r1, #0 + 80054a0: f24d 3008 movw r0, #54024 @ 0xd308 + 80054a4: f7fb fa66 bl 8000974 + lcd_write_reg(0xD309, 0x5C); + 80054a8: 215c movs r1, #92 @ 0x5c + 80054aa: f24d 3009 movw r0, #54025 @ 0xd309 + 80054ae: f7fb fa61 bl 8000974 + lcd_write_reg(0xD30A, 0x00); + 80054b2: 2100 movs r1, #0 + 80054b4: f24d 300a movw r0, #54026 @ 0xd30a + 80054b8: f7fb fa5c bl 8000974 + + lcd_write_reg(0xD30B, 0x81); + 80054bc: 2181 movs r1, #129 @ 0x81 + 80054be: f24d 300b movw r0, #54027 @ 0xd30b + 80054c2: f7fb fa57 bl 8000974 + lcd_write_reg(0xD30C, 0x00); + 80054c6: 2100 movs r1, #0 + 80054c8: f24d 300c movw r0, #54028 @ 0xd30c + 80054cc: f7fb fa52 bl 8000974 + lcd_write_reg(0xD30D, 0xA6); + 80054d0: 21a6 movs r1, #166 @ 0xa6 + 80054d2: f24d 300d movw r0, #54029 @ 0xd30d + 80054d6: f7fb fa4d bl 8000974 + lcd_write_reg(0xD30E, 0x00); + 80054da: 2100 movs r1, #0 + 80054dc: f24d 300e movw r0, #54030 @ 0xd30e + 80054e0: f7fb fa48 bl 8000974 + lcd_write_reg(0xD30F, 0xE5); + 80054e4: 21e5 movs r1, #229 @ 0xe5 + 80054e6: f24d 300f movw r0, #54031 @ 0xd30f + 80054ea: f7fb fa43 bl 8000974 + lcd_write_reg(0xD310, 0x01); + 80054ee: 2101 movs r1, #1 + 80054f0: f24d 3010 movw r0, #54032 @ 0xd310 + 80054f4: f7fb fa3e bl 8000974 + lcd_write_reg(0xD311, 0x13); + 80054f8: 2113 movs r1, #19 + 80054fa: f24d 3011 movw r0, #54033 @ 0xd311 + 80054fe: f7fb fa39 bl 8000974 + lcd_write_reg(0xD312, 0x01); + 8005502: 2101 movs r1, #1 + 8005504: f24d 3012 movw r0, #54034 @ 0xd312 + 8005508: f7fb fa34 bl 8000974 + lcd_write_reg(0xD313, 0x54); + 800550c: 2154 movs r1, #84 @ 0x54 + 800550e: f24d 3013 movw r0, #54035 @ 0xd313 + 8005512: f7fb fa2f bl 8000974 + lcd_write_reg(0xD314, 0x01); + 8005516: 2101 movs r1, #1 + 8005518: f24d 3014 movw r0, #54036 @ 0xd314 + 800551c: f7fb fa2a bl 8000974 + lcd_write_reg(0xD315, 0x82); + 8005520: 2182 movs r1, #130 @ 0x82 + 8005522: f24d 3015 movw r0, #54037 @ 0xd315 + 8005526: f7fb fa25 bl 8000974 + lcd_write_reg(0xD316, 0x01); + 800552a: 2101 movs r1, #1 + 800552c: f24d 3016 movw r0, #54038 @ 0xd316 + 8005530: f7fb fa20 bl 8000974 + lcd_write_reg(0xD317, 0xCA); + 8005534: 21ca movs r1, #202 @ 0xca + 8005536: f24d 3017 movw r0, #54039 @ 0xd317 + 800553a: f7fb fa1b bl 8000974 + lcd_write_reg(0xD318, 0x02); + 800553e: 2102 movs r1, #2 + 8005540: f24d 3018 movw r0, #54040 @ 0xd318 + 8005544: f7fb fa16 bl 8000974 + lcd_write_reg(0xD319, 0x00); + 8005548: 2100 movs r1, #0 + 800554a: f24d 3019 movw r0, #54041 @ 0xd319 + 800554e: f7fb fa11 bl 8000974 + lcd_write_reg(0xD31A, 0x02); + 8005552: 2102 movs r1, #2 + 8005554: f24d 301a movw r0, #54042 @ 0xd31a + 8005558: f7fb fa0c bl 8000974 + lcd_write_reg(0xD31B, 0x01); + 800555c: 2101 movs r1, #1 + 800555e: f24d 301b movw r0, #54043 @ 0xd31b + 8005562: f7fb fa07 bl 8000974 + lcd_write_reg(0xD31C, 0x02); + 8005566: 2102 movs r1, #2 + 8005568: f24d 301c movw r0, #54044 @ 0xd31c + 800556c: f7fb fa02 bl 8000974 + lcd_write_reg(0xD31D, 0x34); + 8005570: 2134 movs r1, #52 @ 0x34 + 8005572: f24d 301d movw r0, #54045 @ 0xd31d + 8005576: f7fb f9fd bl 8000974 + lcd_write_reg(0xD31E, 0x02); + 800557a: 2102 movs r1, #2 + 800557c: f24d 301e movw r0, #54046 @ 0xd31e + 8005580: f7fb f9f8 bl 8000974 + lcd_write_reg(0xD31F, 0x67); + 8005584: 2167 movs r1, #103 @ 0x67 + 8005586: f24d 301f movw r0, #54047 @ 0xd31f + 800558a: f7fb f9f3 bl 8000974 + lcd_write_reg(0xD320, 0x02); + 800558e: 2102 movs r1, #2 + 8005590: f24d 3020 movw r0, #54048 @ 0xd320 + 8005594: f7fb f9ee bl 8000974 + lcd_write_reg(0xD321, 0x84); + 8005598: 2184 movs r1, #132 @ 0x84 + 800559a: f24d 3021 movw r0, #54049 @ 0xd321 + 800559e: f7fb f9e9 bl 8000974 + lcd_write_reg(0xD322, 0x02); + 80055a2: 2102 movs r1, #2 + 80055a4: f24d 3022 movw r0, #54050 @ 0xd322 + 80055a8: f7fb f9e4 bl 8000974 + lcd_write_reg(0xD323, 0xA4); + 80055ac: 21a4 movs r1, #164 @ 0xa4 + 80055ae: f24d 3023 movw r0, #54051 @ 0xd323 + 80055b2: f7fb f9df bl 8000974 + lcd_write_reg(0xD324, 0x02); + 80055b6: 2102 movs r1, #2 + 80055b8: f24d 3024 movw r0, #54052 @ 0xd324 + 80055bc: f7fb f9da bl 8000974 + lcd_write_reg(0xD325, 0xB7); + 80055c0: 21b7 movs r1, #183 @ 0xb7 + 80055c2: f24d 3025 movw r0, #54053 @ 0xd325 + 80055c6: f7fb f9d5 bl 8000974 + lcd_write_reg(0xD326, 0x02); + 80055ca: 2102 movs r1, #2 + 80055cc: f24d 3026 movw r0, #54054 @ 0xd326 + 80055d0: f7fb f9d0 bl 8000974 + lcd_write_reg(0xD327, 0xCF); + 80055d4: 21cf movs r1, #207 @ 0xcf + 80055d6: f24d 3027 movw r0, #54055 @ 0xd327 + 80055da: f7fb f9cb bl 8000974 + lcd_write_reg(0xD328, 0x02); + 80055de: 2102 movs r1, #2 + 80055e0: f24d 3028 movw r0, #54056 @ 0xd328 + 80055e4: f7fb f9c6 bl 8000974 + lcd_write_reg(0xD329, 0xDE); + 80055e8: 21de movs r1, #222 @ 0xde + 80055ea: f24d 3029 movw r0, #54057 @ 0xd329 + 80055ee: f7fb f9c1 bl 8000974 + lcd_write_reg(0xD32A, 0x02); + 80055f2: 2102 movs r1, #2 + 80055f4: f24d 302a movw r0, #54058 @ 0xd32a + 80055f8: f7fb f9bc bl 8000974 + lcd_write_reg(0xD32B, 0xF2); + 80055fc: 21f2 movs r1, #242 @ 0xf2 + 80055fe: f24d 302b movw r0, #54059 @ 0xd32b + 8005602: f7fb f9b7 bl 8000974 + lcd_write_reg(0xD32C, 0x02); + 8005606: 2102 movs r1, #2 + 8005608: f24d 302c movw r0, #54060 @ 0xd32c + 800560c: f7fb f9b2 bl 8000974 + lcd_write_reg(0xD32D, 0xFE); + 8005610: 21fe movs r1, #254 @ 0xfe + 8005612: f24d 302d movw r0, #54061 @ 0xd32d + 8005616: f7fb f9ad bl 8000974 + lcd_write_reg(0xD32E, 0x03); + 800561a: 2103 movs r1, #3 + 800561c: f24d 302e movw r0, #54062 @ 0xd32e + 8005620: f7fb f9a8 bl 8000974 + lcd_write_reg(0xD32F, 0x10); + 8005624: 2110 movs r1, #16 + 8005626: f24d 302f movw r0, #54063 @ 0xd32f + 800562a: f7fb f9a3 bl 8000974 + lcd_write_reg(0xD330, 0x03); + 800562e: 2103 movs r1, #3 + 8005630: f24d 3030 movw r0, #54064 @ 0xd330 + 8005634: f7fb f99e bl 8000974 + lcd_write_reg(0xD331, 0x33); + 8005638: 2133 movs r1, #51 @ 0x33 + 800563a: f24d 3031 movw r0, #54065 @ 0xd331 + 800563e: f7fb f999 bl 8000974 + lcd_write_reg(0xD332, 0x03); + 8005642: 2103 movs r1, #3 + 8005644: f24d 3032 movw r0, #54066 @ 0xd332 + 8005648: f7fb f994 bl 8000974 + lcd_write_reg(0xD333, 0x6D); + 800564c: 216d movs r1, #109 @ 0x6d + 800564e: f24d 3033 movw r0, #54067 @ 0xd333 + 8005652: f7fb f98f bl 8000974 + lcd_write_reg(0xD400, 0x00); + 8005656: 2100 movs r1, #0 + 8005658: f44f 4054 mov.w r0, #54272 @ 0xd400 + 800565c: f7fb f98a bl 8000974 + lcd_write_reg(0xD401, 0x33); + 8005660: 2133 movs r1, #51 @ 0x33 + 8005662: f24d 4001 movw r0, #54273 @ 0xd401 + 8005666: f7fb f985 bl 8000974 + lcd_write_reg(0xD402, 0x00); + 800566a: 2100 movs r1, #0 + 800566c: f24d 4002 movw r0, #54274 @ 0xd402 + 8005670: f7fb f980 bl 8000974 + lcd_write_reg(0xD403, 0x34); + 8005674: 2134 movs r1, #52 @ 0x34 + 8005676: f24d 4003 movw r0, #54275 @ 0xd403 + 800567a: f7fb f97b bl 8000974 + lcd_write_reg(0xD404, 0x00); + 800567e: 2100 movs r1, #0 + 8005680: f24d 4004 movw r0, #54276 @ 0xd404 + 8005684: f7fb f976 bl 8000974 + lcd_write_reg(0xD405, 0x3A); + 8005688: 213a movs r1, #58 @ 0x3a + 800568a: f24d 4005 movw r0, #54277 @ 0xd405 + 800568e: f7fb f971 bl 8000974 + lcd_write_reg(0xD406, 0x00); + 8005692: 2100 movs r1, #0 + 8005694: f24d 4006 movw r0, #54278 @ 0xd406 + 8005698: f7fb f96c bl 8000974 + lcd_write_reg(0xD407, 0x4A); + 800569c: 214a movs r1, #74 @ 0x4a + 800569e: f24d 4007 movw r0, #54279 @ 0xd407 + 80056a2: f7fb f967 bl 8000974 + lcd_write_reg(0xD408, 0x00); + 80056a6: 2100 movs r1, #0 + 80056a8: f24d 4008 movw r0, #54280 @ 0xd408 + 80056ac: f7fb f962 bl 8000974 + lcd_write_reg(0xD409, 0x5C); + 80056b0: 215c movs r1, #92 @ 0x5c + 80056b2: f24d 4009 movw r0, #54281 @ 0xd409 + 80056b6: f7fb f95d bl 8000974 + lcd_write_reg(0xD40A, 0x00); + 80056ba: 2100 movs r1, #0 + 80056bc: f24d 400a movw r0, #54282 @ 0xd40a + 80056c0: f7fb f958 bl 8000974 + lcd_write_reg(0xD40B, 0x81); + 80056c4: 2181 movs r1, #129 @ 0x81 + 80056c6: f24d 400b movw r0, #54283 @ 0xd40b + 80056ca: f7fb f953 bl 8000974 + + lcd_write_reg(0xD40C, 0x00); + 80056ce: 2100 movs r1, #0 + 80056d0: f24d 400c movw r0, #54284 @ 0xd40c + 80056d4: f7fb f94e bl 8000974 + lcd_write_reg(0xD40D, 0xA6); + 80056d8: 21a6 movs r1, #166 @ 0xa6 + 80056da: f24d 400d movw r0, #54285 @ 0xd40d + 80056de: f7fb f949 bl 8000974 + lcd_write_reg(0xD40E, 0x00); + 80056e2: 2100 movs r1, #0 + 80056e4: f24d 400e movw r0, #54286 @ 0xd40e + 80056e8: f7fb f944 bl 8000974 + lcd_write_reg(0xD40F, 0xE5); + 80056ec: 21e5 movs r1, #229 @ 0xe5 + 80056ee: f24d 400f movw r0, #54287 @ 0xd40f + 80056f2: f7fb f93f bl 8000974 + lcd_write_reg(0xD410, 0x01); + 80056f6: 2101 movs r1, #1 + 80056f8: f24d 4010 movw r0, #54288 @ 0xd410 + 80056fc: f7fb f93a bl 8000974 + lcd_write_reg(0xD411, 0x13); + 8005700: 2113 movs r1, #19 + 8005702: f24d 4011 movw r0, #54289 @ 0xd411 + 8005706: f7fb f935 bl 8000974 + lcd_write_reg(0xD412, 0x01); + 800570a: 2101 movs r1, #1 + 800570c: f24d 4012 movw r0, #54290 @ 0xd412 + 8005710: f7fb f930 bl 8000974 + lcd_write_reg(0xD413, 0x54); + 8005714: 2154 movs r1, #84 @ 0x54 + 8005716: f24d 4013 movw r0, #54291 @ 0xd413 + 800571a: f7fb f92b bl 8000974 + lcd_write_reg(0xD414, 0x01); + 800571e: 2101 movs r1, #1 + 8005720: f24d 4014 movw r0, #54292 @ 0xd414 + 8005724: f7fb f926 bl 8000974 + lcd_write_reg(0xD415, 0x82); + 8005728: 2182 movs r1, #130 @ 0x82 + 800572a: f24d 4015 movw r0, #54293 @ 0xd415 + 800572e: f7fb f921 bl 8000974 + lcd_write_reg(0xD416, 0x01); + 8005732: 2101 movs r1, #1 + 8005734: f24d 4016 movw r0, #54294 @ 0xd416 + 8005738: f7fb f91c bl 8000974 + lcd_write_reg(0xD417, 0xCA); + 800573c: 21ca movs r1, #202 @ 0xca + 800573e: f24d 4017 movw r0, #54295 @ 0xd417 + 8005742: f7fb f917 bl 8000974 + lcd_write_reg(0xD418, 0x02); + 8005746: 2102 movs r1, #2 + 8005748: f24d 4018 movw r0, #54296 @ 0xd418 + 800574c: f7fb f912 bl 8000974 + lcd_write_reg(0xD419, 0x00); + 8005750: 2100 movs r1, #0 + 8005752: f24d 4019 movw r0, #54297 @ 0xd419 + 8005756: f7fb f90d bl 8000974 + lcd_write_reg(0xD41A, 0x02); + 800575a: 2102 movs r1, #2 + 800575c: f24d 401a movw r0, #54298 @ 0xd41a + 8005760: f7fb f908 bl 8000974 + lcd_write_reg(0xD41B, 0x01); + 8005764: 2101 movs r1, #1 + 8005766: f24d 401b movw r0, #54299 @ 0xd41b + 800576a: f7fb f903 bl 8000974 + lcd_write_reg(0xD41C, 0x02); + 800576e: 2102 movs r1, #2 + 8005770: f24d 401c movw r0, #54300 @ 0xd41c + 8005774: f7fb f8fe bl 8000974 + lcd_write_reg(0xD41D, 0x34); + 8005778: 2134 movs r1, #52 @ 0x34 + 800577a: f24d 401d movw r0, #54301 @ 0xd41d + 800577e: f7fb f8f9 bl 8000974 + lcd_write_reg(0xD41E, 0x02); + 8005782: 2102 movs r1, #2 + 8005784: f24d 401e movw r0, #54302 @ 0xd41e + 8005788: f7fb f8f4 bl 8000974 + lcd_write_reg(0xD41F, 0x67); + 800578c: 2167 movs r1, #103 @ 0x67 + 800578e: f24d 401f movw r0, #54303 @ 0xd41f + 8005792: f7fb f8ef bl 8000974 + lcd_write_reg(0xD420, 0x02); + 8005796: 2102 movs r1, #2 + 8005798: f24d 4020 movw r0, #54304 @ 0xd420 + 800579c: f7fb f8ea bl 8000974 + lcd_write_reg(0xD421, 0x84); + 80057a0: 2184 movs r1, #132 @ 0x84 + 80057a2: f24d 4021 movw r0, #54305 @ 0xd421 + 80057a6: f7fb f8e5 bl 8000974 + lcd_write_reg(0xD422, 0x02); + 80057aa: 2102 movs r1, #2 + 80057ac: f24d 4022 movw r0, #54306 @ 0xd422 + 80057b0: f7fb f8e0 bl 8000974 + lcd_write_reg(0xD423, 0xA4); + 80057b4: 21a4 movs r1, #164 @ 0xa4 + 80057b6: f24d 4023 movw r0, #54307 @ 0xd423 + 80057ba: f7fb f8db bl 8000974 + lcd_write_reg(0xD424, 0x02); + 80057be: 2102 movs r1, #2 + 80057c0: f24d 4024 movw r0, #54308 @ 0xd424 + 80057c4: f7fb f8d6 bl 8000974 + lcd_write_reg(0xD425, 0xB7); + 80057c8: 21b7 movs r1, #183 @ 0xb7 + 80057ca: f24d 4025 movw r0, #54309 @ 0xd425 + 80057ce: f7fb f8d1 bl 8000974 + lcd_write_reg(0xD426, 0x02); + 80057d2: 2102 movs r1, #2 + 80057d4: f24d 4026 movw r0, #54310 @ 0xd426 + 80057d8: f7fb f8cc bl 8000974 + lcd_write_reg(0xD427, 0xCF); + 80057dc: 21cf movs r1, #207 @ 0xcf + 80057de: f24d 4027 movw r0, #54311 @ 0xd427 + 80057e2: f7fb f8c7 bl 8000974 + lcd_write_reg(0xD428, 0x02); + 80057e6: 2102 movs r1, #2 + 80057e8: f24d 4028 movw r0, #54312 @ 0xd428 + 80057ec: f7fb f8c2 bl 8000974 + lcd_write_reg(0xD429, 0xDE); + 80057f0: 21de movs r1, #222 @ 0xde + 80057f2: f24d 4029 movw r0, #54313 @ 0xd429 + 80057f6: f7fb f8bd bl 8000974 + lcd_write_reg(0xD42A, 0x02); + 80057fa: 2102 movs r1, #2 + 80057fc: f24d 402a movw r0, #54314 @ 0xd42a + 8005800: f7fb f8b8 bl 8000974 + lcd_write_reg(0xD42B, 0xF2); + 8005804: 21f2 movs r1, #242 @ 0xf2 + 8005806: f24d 402b movw r0, #54315 @ 0xd42b + 800580a: f7fb f8b3 bl 8000974 + lcd_write_reg(0xD42C, 0x02); + 800580e: 2102 movs r1, #2 + 8005810: f24d 402c movw r0, #54316 @ 0xd42c + 8005814: f7fb f8ae bl 8000974 + lcd_write_reg(0xD42D, 0xFE); + 8005818: 21fe movs r1, #254 @ 0xfe + 800581a: f24d 402d movw r0, #54317 @ 0xd42d + 800581e: f7fb f8a9 bl 8000974 + lcd_write_reg(0xD42E, 0x03); + 8005822: 2103 movs r1, #3 + 8005824: f24d 402e movw r0, #54318 @ 0xd42e + 8005828: f7fb f8a4 bl 8000974 + lcd_write_reg(0xD42F, 0x10); + 800582c: 2110 movs r1, #16 + 800582e: f24d 402f movw r0, #54319 @ 0xd42f + 8005832: f7fb f89f bl 8000974 + lcd_write_reg(0xD430, 0x03); + 8005836: 2103 movs r1, #3 + 8005838: f24d 4030 movw r0, #54320 @ 0xd430 + 800583c: f7fb f89a bl 8000974 + lcd_write_reg(0xD431, 0x33); + 8005840: 2133 movs r1, #51 @ 0x33 + 8005842: f24d 4031 movw r0, #54321 @ 0xd431 + 8005846: f7fb f895 bl 8000974 + lcd_write_reg(0xD432, 0x03); + 800584a: 2103 movs r1, #3 + 800584c: f24d 4032 movw r0, #54322 @ 0xd432 + 8005850: f7fb f890 bl 8000974 + lcd_write_reg(0xD433, 0x6D); + 8005854: 216d movs r1, #109 @ 0x6d + 8005856: f24d 4033 movw r0, #54323 @ 0xd433 + 800585a: f7fb f88b bl 8000974 + lcd_write_reg(0xD500, 0x00); + 800585e: 2100 movs r1, #0 + 8005860: f44f 4055 mov.w r0, #54528 @ 0xd500 + 8005864: f7fb f886 bl 8000974 + lcd_write_reg(0xD501, 0x33); + 8005868: 2133 movs r1, #51 @ 0x33 + 800586a: f24d 5001 movw r0, #54529 @ 0xd501 + 800586e: f7fb f881 bl 8000974 + lcd_write_reg(0xD502, 0x00); + 8005872: 2100 movs r1, #0 + 8005874: f24d 5002 movw r0, #54530 @ 0xd502 + 8005878: f7fb f87c bl 8000974 + lcd_write_reg(0xD503, 0x34); + 800587c: 2134 movs r1, #52 @ 0x34 + 800587e: f24d 5003 movw r0, #54531 @ 0xd503 + 8005882: f7fb f877 bl 8000974 + lcd_write_reg(0xD504, 0x00); + 8005886: 2100 movs r1, #0 + 8005888: f24d 5004 movw r0, #54532 @ 0xd504 + 800588c: f7fb f872 bl 8000974 + lcd_write_reg(0xD505, 0x3A); + 8005890: 213a movs r1, #58 @ 0x3a + 8005892: f24d 5005 movw r0, #54533 @ 0xd505 + 8005896: f7fb f86d bl 8000974 + lcd_write_reg(0xD506, 0x00); + 800589a: 2100 movs r1, #0 + 800589c: f24d 5006 movw r0, #54534 @ 0xd506 + 80058a0: f7fb f868 bl 8000974 + lcd_write_reg(0xD507, 0x4A); + 80058a4: 214a movs r1, #74 @ 0x4a + 80058a6: f24d 5007 movw r0, #54535 @ 0xd507 + 80058aa: f7fb f863 bl 8000974 + lcd_write_reg(0xD508, 0x00); + 80058ae: 2100 movs r1, #0 + 80058b0: f24d 5008 movw r0, #54536 @ 0xd508 + 80058b4: f7fb f85e bl 8000974 + lcd_write_reg(0xD509, 0x5C); + 80058b8: 215c movs r1, #92 @ 0x5c + 80058ba: f24d 5009 movw r0, #54537 @ 0xd509 + 80058be: f7fb f859 bl 8000974 + lcd_write_reg(0xD50A, 0x00); + 80058c2: 2100 movs r1, #0 + 80058c4: f24d 500a movw r0, #54538 @ 0xd50a + 80058c8: f7fb f854 bl 8000974 + lcd_write_reg(0xD50B, 0x81); + 80058cc: 2181 movs r1, #129 @ 0x81 + 80058ce: f24d 500b movw r0, #54539 @ 0xd50b + 80058d2: f7fb f84f bl 8000974 + + lcd_write_reg(0xD50C, 0x00); + 80058d6: 2100 movs r1, #0 + 80058d8: f24d 500c movw r0, #54540 @ 0xd50c + 80058dc: f7fb f84a bl 8000974 + lcd_write_reg(0xD50D, 0xA6); + 80058e0: 21a6 movs r1, #166 @ 0xa6 + 80058e2: f24d 500d movw r0, #54541 @ 0xd50d + 80058e6: f7fb f845 bl 8000974 + lcd_write_reg(0xD50E, 0x00); + 80058ea: 2100 movs r1, #0 + 80058ec: f24d 500e movw r0, #54542 @ 0xd50e + 80058f0: f7fb f840 bl 8000974 + lcd_write_reg(0xD50F, 0xE5); + 80058f4: 21e5 movs r1, #229 @ 0xe5 + 80058f6: f24d 500f movw r0, #54543 @ 0xd50f + 80058fa: f7fb f83b bl 8000974 + lcd_write_reg(0xD510, 0x01); + 80058fe: 2101 movs r1, #1 + 8005900: f24d 5010 movw r0, #54544 @ 0xd510 + 8005904: f7fb f836 bl 8000974 + lcd_write_reg(0xD511, 0x13); + 8005908: 2113 movs r1, #19 + 800590a: f24d 5011 movw r0, #54545 @ 0xd511 + 800590e: f7fb f831 bl 8000974 + lcd_write_reg(0xD512, 0x01); + 8005912: 2101 movs r1, #1 + 8005914: f24d 5012 movw r0, #54546 @ 0xd512 + 8005918: f7fb f82c bl 8000974 + lcd_write_reg(0xD513, 0x54); + 800591c: 2154 movs r1, #84 @ 0x54 + 800591e: f24d 5013 movw r0, #54547 @ 0xd513 + 8005922: f7fb f827 bl 8000974 + lcd_write_reg(0xD514, 0x01); + 8005926: 2101 movs r1, #1 + 8005928: f24d 5014 movw r0, #54548 @ 0xd514 + 800592c: f7fb f822 bl 8000974 + lcd_write_reg(0xD515, 0x82); + 8005930: 2182 movs r1, #130 @ 0x82 + 8005932: f24d 5015 movw r0, #54549 @ 0xd515 + 8005936: f7fb f81d bl 8000974 + lcd_write_reg(0xD516, 0x01); + 800593a: 2101 movs r1, #1 + 800593c: f24d 5016 movw r0, #54550 @ 0xd516 + 8005940: f7fb f818 bl 8000974 + lcd_write_reg(0xD517, 0xCA); + 8005944: 21ca movs r1, #202 @ 0xca + 8005946: f24d 5017 movw r0, #54551 @ 0xd517 + 800594a: f7fb f813 bl 8000974 + lcd_write_reg(0xD518, 0x02); + 800594e: 2102 movs r1, #2 + 8005950: f24d 5018 movw r0, #54552 @ 0xd518 + 8005954: f7fb f80e bl 8000974 + lcd_write_reg(0xD519, 0x00); + 8005958: 2100 movs r1, #0 + 800595a: f24d 5019 movw r0, #54553 @ 0xd519 + 800595e: f7fb f809 bl 8000974 + lcd_write_reg(0xD51A, 0x02); + 8005962: 2102 movs r1, #2 + 8005964: f24d 501a movw r0, #54554 @ 0xd51a + 8005968: f7fb f804 bl 8000974 + lcd_write_reg(0xD51B, 0x01); + 800596c: 2101 movs r1, #1 + 800596e: f24d 501b movw r0, #54555 @ 0xd51b + 8005972: f7fa ffff bl 8000974 + lcd_write_reg(0xD51C, 0x02); + 8005976: 2102 movs r1, #2 + 8005978: f24d 501c movw r0, #54556 @ 0xd51c + 800597c: f7fa fffa bl 8000974 + lcd_write_reg(0xD51D, 0x34); + 8005980: 2134 movs r1, #52 @ 0x34 + 8005982: f24d 501d movw r0, #54557 @ 0xd51d + 8005986: f7fa fff5 bl 8000974 + lcd_write_reg(0xD51E, 0x02); + 800598a: 2102 movs r1, #2 + 800598c: f24d 501e movw r0, #54558 @ 0xd51e + 8005990: f7fa fff0 bl 8000974 + lcd_write_reg(0xD51F, 0x67); + 8005994: 2167 movs r1, #103 @ 0x67 + 8005996: f24d 501f movw r0, #54559 @ 0xd51f + 800599a: f7fa ffeb bl 8000974 + lcd_write_reg(0xD520, 0x02); + 800599e: 2102 movs r1, #2 + 80059a0: f24d 5020 movw r0, #54560 @ 0xd520 + 80059a4: f7fa ffe6 bl 8000974 + lcd_write_reg(0xD521, 0x84); + 80059a8: 2184 movs r1, #132 @ 0x84 + 80059aa: f24d 5021 movw r0, #54561 @ 0xd521 + 80059ae: f7fa ffe1 bl 8000974 + lcd_write_reg(0xD522, 0x02); + 80059b2: 2102 movs r1, #2 + 80059b4: f24d 5022 movw r0, #54562 @ 0xd522 + 80059b8: f7fa ffdc bl 8000974 + lcd_write_reg(0xD523, 0xA4); + 80059bc: 21a4 movs r1, #164 @ 0xa4 + 80059be: f24d 5023 movw r0, #54563 @ 0xd523 + 80059c2: f7fa ffd7 bl 8000974 + lcd_write_reg(0xD524, 0x02); + 80059c6: 2102 movs r1, #2 + 80059c8: f24d 5024 movw r0, #54564 @ 0xd524 + 80059cc: f7fa ffd2 bl 8000974 + lcd_write_reg(0xD525, 0xB7); + 80059d0: 21b7 movs r1, #183 @ 0xb7 + 80059d2: f24d 5025 movw r0, #54565 @ 0xd525 + 80059d6: f7fa ffcd bl 8000974 + lcd_write_reg(0xD526, 0x02); + 80059da: 2102 movs r1, #2 + 80059dc: f24d 5026 movw r0, #54566 @ 0xd526 + 80059e0: f7fa ffc8 bl 8000974 + lcd_write_reg(0xD527, 0xCF); + 80059e4: 21cf movs r1, #207 @ 0xcf + 80059e6: f24d 5027 movw r0, #54567 @ 0xd527 + 80059ea: f7fa ffc3 bl 8000974 + lcd_write_reg(0xD528, 0x02); + 80059ee: 2102 movs r1, #2 + 80059f0: f24d 5028 movw r0, #54568 @ 0xd528 + 80059f4: f7fa ffbe bl 8000974 + lcd_write_reg(0xD529, 0xDE); + 80059f8: 21de movs r1, #222 @ 0xde + 80059fa: f24d 5029 movw r0, #54569 @ 0xd529 + 80059fe: f7fa ffb9 bl 8000974 + lcd_write_reg(0xD52A, 0x02); + 8005a02: 2102 movs r1, #2 + 8005a04: f24d 502a movw r0, #54570 @ 0xd52a + 8005a08: f7fa ffb4 bl 8000974 + lcd_write_reg(0xD52B, 0xF2); + 8005a0c: 21f2 movs r1, #242 @ 0xf2 + 8005a0e: f24d 502b movw r0, #54571 @ 0xd52b + 8005a12: f7fa ffaf bl 8000974 + lcd_write_reg(0xD52C, 0x02); + 8005a16: 2102 movs r1, #2 + 8005a18: f24d 502c movw r0, #54572 @ 0xd52c + 8005a1c: f7fa ffaa bl 8000974 + lcd_write_reg(0xD52D, 0xFE); + 8005a20: 21fe movs r1, #254 @ 0xfe + 8005a22: f24d 502d movw r0, #54573 @ 0xd52d + 8005a26: f7fa ffa5 bl 8000974 + lcd_write_reg(0xD52E, 0x03); + 8005a2a: 2103 movs r1, #3 + 8005a2c: f24d 502e movw r0, #54574 @ 0xd52e + 8005a30: f7fa ffa0 bl 8000974 + lcd_write_reg(0xD52F, 0x10); + 8005a34: 2110 movs r1, #16 + 8005a36: f24d 502f movw r0, #54575 @ 0xd52f + 8005a3a: f7fa ff9b bl 8000974 + lcd_write_reg(0xD530, 0x03); + 8005a3e: 2103 movs r1, #3 + 8005a40: f24d 5030 movw r0, #54576 @ 0xd530 + 8005a44: f7fa ff96 bl 8000974 + lcd_write_reg(0xD531, 0x33); + 8005a48: 2133 movs r1, #51 @ 0x33 + 8005a4a: f24d 5031 movw r0, #54577 @ 0xd531 + 8005a4e: f7fa ff91 bl 8000974 + lcd_write_reg(0xD532, 0x03); + 8005a52: 2103 movs r1, #3 + 8005a54: f24d 5032 movw r0, #54578 @ 0xd532 + 8005a58: f7fa ff8c bl 8000974 + lcd_write_reg(0xD533, 0x6D); + 8005a5c: 216d movs r1, #109 @ 0x6d + 8005a5e: f24d 5033 movw r0, #54579 @ 0xd533 + 8005a62: f7fa ff87 bl 8000974 + lcd_write_reg(0xD600, 0x00); + 8005a66: 2100 movs r1, #0 + 8005a68: f44f 4056 mov.w r0, #54784 @ 0xd600 + 8005a6c: f7fa ff82 bl 8000974 + lcd_write_reg(0xD601, 0x33); + 8005a70: 2133 movs r1, #51 @ 0x33 + 8005a72: f24d 6001 movw r0, #54785 @ 0xd601 + 8005a76: f7fa ff7d bl 8000974 + lcd_write_reg(0xD602, 0x00); + 8005a7a: 2100 movs r1, #0 + 8005a7c: f24d 6002 movw r0, #54786 @ 0xd602 + 8005a80: f7fa ff78 bl 8000974 + lcd_write_reg(0xD603, 0x34); + 8005a84: 2134 movs r1, #52 @ 0x34 + 8005a86: f24d 6003 movw r0, #54787 @ 0xd603 + 8005a8a: f7fa ff73 bl 8000974 + lcd_write_reg(0xD604, 0x00); + 8005a8e: 2100 movs r1, #0 + 8005a90: f24d 6004 movw r0, #54788 @ 0xd604 + 8005a94: f7fa ff6e bl 8000974 + lcd_write_reg(0xD605, 0x3A); + 8005a98: 213a movs r1, #58 @ 0x3a + 8005a9a: f24d 6005 movw r0, #54789 @ 0xd605 + 8005a9e: f7fa ff69 bl 8000974 + lcd_write_reg(0xD606, 0x00); + 8005aa2: 2100 movs r1, #0 + 8005aa4: f24d 6006 movw r0, #54790 @ 0xd606 + 8005aa8: f7fa ff64 bl 8000974 + lcd_write_reg(0xD607, 0x4A); + 8005aac: 214a movs r1, #74 @ 0x4a + 8005aae: f24d 6007 movw r0, #54791 @ 0xd607 + 8005ab2: f7fa ff5f bl 8000974 + lcd_write_reg(0xD608, 0x00); + 8005ab6: 2100 movs r1, #0 + 8005ab8: f24d 6008 movw r0, #54792 @ 0xd608 + 8005abc: f7fa ff5a bl 8000974 + lcd_write_reg(0xD609, 0x5C); + 8005ac0: 215c movs r1, #92 @ 0x5c + 8005ac2: f24d 6009 movw r0, #54793 @ 0xd609 + 8005ac6: f7fa ff55 bl 8000974 + lcd_write_reg(0xD60A, 0x00); + 8005aca: 2100 movs r1, #0 + 8005acc: f24d 600a movw r0, #54794 @ 0xd60a + 8005ad0: f7fa ff50 bl 8000974 + lcd_write_reg(0xD60B, 0x81); + 8005ad4: 2181 movs r1, #129 @ 0x81 + 8005ad6: f24d 600b movw r0, #54795 @ 0xd60b + 8005ada: f7fa ff4b bl 8000974 + + lcd_write_reg(0xD60C, 0x00); + 8005ade: 2100 movs r1, #0 + 8005ae0: f24d 600c movw r0, #54796 @ 0xd60c + 8005ae4: f7fa ff46 bl 8000974 + lcd_write_reg(0xD60D, 0xA6); + 8005ae8: 21a6 movs r1, #166 @ 0xa6 + 8005aea: f24d 600d movw r0, #54797 @ 0xd60d + 8005aee: f7fa ff41 bl 8000974 + lcd_write_reg(0xD60E, 0x00); + 8005af2: 2100 movs r1, #0 + 8005af4: f24d 600e movw r0, #54798 @ 0xd60e + 8005af8: f7fa ff3c bl 8000974 + lcd_write_reg(0xD60F, 0xE5); + 8005afc: 21e5 movs r1, #229 @ 0xe5 + 8005afe: f24d 600f movw r0, #54799 @ 0xd60f + 8005b02: f7fa ff37 bl 8000974 + lcd_write_reg(0xD610, 0x01); + 8005b06: 2101 movs r1, #1 + 8005b08: f24d 6010 movw r0, #54800 @ 0xd610 + 8005b0c: f7fa ff32 bl 8000974 + lcd_write_reg(0xD611, 0x13); + 8005b10: 2113 movs r1, #19 + 8005b12: f24d 6011 movw r0, #54801 @ 0xd611 + 8005b16: f7fa ff2d bl 8000974 + lcd_write_reg(0xD612, 0x01); + 8005b1a: 2101 movs r1, #1 + 8005b1c: f24d 6012 movw r0, #54802 @ 0xd612 + 8005b20: f7fa ff28 bl 8000974 + lcd_write_reg(0xD613, 0x54); + 8005b24: 2154 movs r1, #84 @ 0x54 + 8005b26: f24d 6013 movw r0, #54803 @ 0xd613 + 8005b2a: f7fa ff23 bl 8000974 + lcd_write_reg(0xD614, 0x01); + 8005b2e: 2101 movs r1, #1 + 8005b30: f24d 6014 movw r0, #54804 @ 0xd614 + 8005b34: f7fa ff1e bl 8000974 + lcd_write_reg(0xD615, 0x82); + 8005b38: 2182 movs r1, #130 @ 0x82 + 8005b3a: f24d 6015 movw r0, #54805 @ 0xd615 + 8005b3e: f7fa ff19 bl 8000974 + lcd_write_reg(0xD616, 0x01); + 8005b42: 2101 movs r1, #1 + 8005b44: f24d 6016 movw r0, #54806 @ 0xd616 + 8005b48: f7fa ff14 bl 8000974 + lcd_write_reg(0xD617, 0xCA); + 8005b4c: 21ca movs r1, #202 @ 0xca + 8005b4e: f24d 6017 movw r0, #54807 @ 0xd617 + 8005b52: f7fa ff0f bl 8000974 + lcd_write_reg(0xD618, 0x02); + 8005b56: 2102 movs r1, #2 + 8005b58: f24d 6018 movw r0, #54808 @ 0xd618 + 8005b5c: f7fa ff0a bl 8000974 + lcd_write_reg(0xD619, 0x00); + 8005b60: 2100 movs r1, #0 + 8005b62: f24d 6019 movw r0, #54809 @ 0xd619 + 8005b66: f7fa ff05 bl 8000974 + lcd_write_reg(0xD61A, 0x02); + 8005b6a: 2102 movs r1, #2 + 8005b6c: f24d 601a movw r0, #54810 @ 0xd61a + 8005b70: f7fa ff00 bl 8000974 + lcd_write_reg(0xD61B, 0x01); + 8005b74: 2101 movs r1, #1 + 8005b76: f24d 601b movw r0, #54811 @ 0xd61b + 8005b7a: f7fa fefb bl 8000974 + lcd_write_reg(0xD61C, 0x02); + 8005b7e: 2102 movs r1, #2 + 8005b80: f24d 601c movw r0, #54812 @ 0xd61c + 8005b84: f7fa fef6 bl 8000974 + lcd_write_reg(0xD61D, 0x34); + 8005b88: 2134 movs r1, #52 @ 0x34 + 8005b8a: f24d 601d movw r0, #54813 @ 0xd61d + 8005b8e: f7fa fef1 bl 8000974 + lcd_write_reg(0xD61E, 0x02); + 8005b92: 2102 movs r1, #2 + 8005b94: f24d 601e movw r0, #54814 @ 0xd61e + 8005b98: f7fa feec bl 8000974 + lcd_write_reg(0xD61F, 0x67); + 8005b9c: 2167 movs r1, #103 @ 0x67 + 8005b9e: f24d 601f movw r0, #54815 @ 0xd61f + 8005ba2: f7fa fee7 bl 8000974 + lcd_write_reg(0xD620, 0x02); + 8005ba6: 2102 movs r1, #2 + 8005ba8: f24d 6020 movw r0, #54816 @ 0xd620 + 8005bac: f7fa fee2 bl 8000974 + lcd_write_reg(0xD621, 0x84); + 8005bb0: 2184 movs r1, #132 @ 0x84 + 8005bb2: f24d 6021 movw r0, #54817 @ 0xd621 + 8005bb6: f7fa fedd bl 8000974 + lcd_write_reg(0xD622, 0x02); + 8005bba: 2102 movs r1, #2 + 8005bbc: f24d 6022 movw r0, #54818 @ 0xd622 + 8005bc0: f7fa fed8 bl 8000974 + lcd_write_reg(0xD623, 0xA4); + 8005bc4: 21a4 movs r1, #164 @ 0xa4 + 8005bc6: f24d 6023 movw r0, #54819 @ 0xd623 + 8005bca: f7fa fed3 bl 8000974 + lcd_write_reg(0xD624, 0x02); + 8005bce: 2102 movs r1, #2 + 8005bd0: f24d 6024 movw r0, #54820 @ 0xd624 + 8005bd4: f7fa fece bl 8000974 + lcd_write_reg(0xD625, 0xB7); + 8005bd8: 21b7 movs r1, #183 @ 0xb7 + 8005bda: f24d 6025 movw r0, #54821 @ 0xd625 + 8005bde: f7fa fec9 bl 8000974 + lcd_write_reg(0xD626, 0x02); + 8005be2: 2102 movs r1, #2 + 8005be4: f24d 6026 movw r0, #54822 @ 0xd626 + 8005be8: f7fa fec4 bl 8000974 + lcd_write_reg(0xD627, 0xCF); + 8005bec: 21cf movs r1, #207 @ 0xcf + 8005bee: f24d 6027 movw r0, #54823 @ 0xd627 + 8005bf2: f7fa febf bl 8000974 + lcd_write_reg(0xD628, 0x02); + 8005bf6: 2102 movs r1, #2 + 8005bf8: f24d 6028 movw r0, #54824 @ 0xd628 + 8005bfc: f7fa feba bl 8000974 + lcd_write_reg(0xD629, 0xDE); + 8005c00: 21de movs r1, #222 @ 0xde + 8005c02: f24d 6029 movw r0, #54825 @ 0xd629 + 8005c06: f7fa feb5 bl 8000974 + lcd_write_reg(0xD62A, 0x02); + 8005c0a: 2102 movs r1, #2 + 8005c0c: f24d 602a movw r0, #54826 @ 0xd62a + 8005c10: f7fa feb0 bl 8000974 + lcd_write_reg(0xD62B, 0xF2); + 8005c14: 21f2 movs r1, #242 @ 0xf2 + 8005c16: f24d 602b movw r0, #54827 @ 0xd62b + 8005c1a: f7fa feab bl 8000974 + lcd_write_reg(0xD62C, 0x02); + 8005c1e: 2102 movs r1, #2 + 8005c20: f24d 602c movw r0, #54828 @ 0xd62c + 8005c24: f7fa fea6 bl 8000974 + lcd_write_reg(0xD62D, 0xFE); + 8005c28: 21fe movs r1, #254 @ 0xfe + 8005c2a: f24d 602d movw r0, #54829 @ 0xd62d + 8005c2e: f7fa fea1 bl 8000974 + lcd_write_reg(0xD62E, 0x03); + 8005c32: 2103 movs r1, #3 + 8005c34: f24d 602e movw r0, #54830 @ 0xd62e + 8005c38: f7fa fe9c bl 8000974 + lcd_write_reg(0xD62F, 0x10); + 8005c3c: 2110 movs r1, #16 + 8005c3e: f24d 602f movw r0, #54831 @ 0xd62f + 8005c42: f7fa fe97 bl 8000974 + lcd_write_reg(0xD630, 0x03); + 8005c46: 2103 movs r1, #3 + 8005c48: f24d 6030 movw r0, #54832 @ 0xd630 + 8005c4c: f7fa fe92 bl 8000974 + lcd_write_reg(0xD631, 0x33); + 8005c50: 2133 movs r1, #51 @ 0x33 + 8005c52: f24d 6031 movw r0, #54833 @ 0xd631 + 8005c56: f7fa fe8d bl 8000974 + lcd_write_reg(0xD632, 0x03); + 8005c5a: 2103 movs r1, #3 + 8005c5c: f24d 6032 movw r0, #54834 @ 0xd632 + 8005c60: f7fa fe88 bl 8000974 + lcd_write_reg(0xD633, 0x6D); + 8005c64: 216d movs r1, #109 @ 0x6d + 8005c66: f24d 6033 movw r0, #54835 @ 0xd633 + 8005c6a: f7fa fe83 bl 8000974 + /* LV2 Page 0 enable */ + lcd_write_reg(0xF000, 0x55); + 8005c6e: 2155 movs r1, #85 @ 0x55 + 8005c70: f44f 4070 mov.w r0, #61440 @ 0xf000 + 8005c74: f7fa fe7e bl 8000974 + lcd_write_reg(0xF001, 0xAA); + 8005c78: 21aa movs r1, #170 @ 0xaa + 8005c7a: f24f 0001 movw r0, #61441 @ 0xf001 + 8005c7e: f7fa fe79 bl 8000974 + lcd_write_reg(0xF002, 0x52); + 8005c82: 2152 movs r1, #82 @ 0x52 + 8005c84: f24f 0002 movw r0, #61442 @ 0xf002 + 8005c88: f7fa fe74 bl 8000974 + lcd_write_reg(0xF003, 0x08); + 8005c8c: 2108 movs r1, #8 + 8005c8e: f24f 0003 movw r0, #61443 @ 0xf003 + 8005c92: f7fa fe6f bl 8000974 + lcd_write_reg(0xF004, 0x00); + 8005c96: 2100 movs r1, #0 + 8005c98: f24f 0004 movw r0, #61444 @ 0xf004 + 8005c9c: f7fa fe6a bl 8000974 + /* Display control */ + lcd_write_reg(0xB100, 0xCC); + 8005ca0: 21cc movs r1, #204 @ 0xcc + 8005ca2: f44f 4031 mov.w r0, #45312 @ 0xb100 + 8005ca6: f7fa fe65 bl 8000974 + lcd_write_reg(0xB101, 0x00); + 8005caa: 2100 movs r1, #0 + 8005cac: f24b 1001 movw r0, #45313 @ 0xb101 + 8005cb0: f7fa fe60 bl 8000974 + /* Source hold time */ + lcd_write_reg(0xB600, 0x05); + 8005cb4: 2105 movs r1, #5 + 8005cb6: f44f 4036 mov.w r0, #46592 @ 0xb600 + 8005cba: f7fa fe5b bl 8000974 + /* Gate EQ control */ + lcd_write_reg(0xB700, 0x70); + 8005cbe: 2170 movs r1, #112 @ 0x70 + 8005cc0: f44f 4037 mov.w r0, #46848 @ 0xb700 + 8005cc4: f7fa fe56 bl 8000974 + lcd_write_reg(0xB701, 0x70); + 8005cc8: 2170 movs r1, #112 @ 0x70 + 8005cca: f24b 7001 movw r0, #46849 @ 0xb701 + 8005cce: f7fa fe51 bl 8000974 + /* Source EQ control (Mode 2) */ + lcd_write_reg(0xB800, 0x01); + 8005cd2: 2101 movs r1, #1 + 8005cd4: f44f 4038 mov.w r0, #47104 @ 0xb800 + 8005cd8: f7fa fe4c bl 8000974 + lcd_write_reg(0xB801, 0x03); + 8005cdc: 2103 movs r1, #3 + 8005cde: f64b 0001 movw r0, #47105 @ 0xb801 + 8005ce2: f7fa fe47 bl 8000974 + lcd_write_reg(0xB802, 0x03); + 8005ce6: 2103 movs r1, #3 + 8005ce8: f64b 0002 movw r0, #47106 @ 0xb802 + 8005cec: f7fa fe42 bl 8000974 + lcd_write_reg(0xB803, 0x03); + 8005cf0: 2103 movs r1, #3 + 8005cf2: f64b 0003 movw r0, #47107 @ 0xb803 + 8005cf6: f7fa fe3d bl 8000974 + /* Inversion mode (2-dot) */ + lcd_write_reg(0xBC00, 0x02); + 8005cfa: 2102 movs r1, #2 + 8005cfc: f44f 403c mov.w r0, #48128 @ 0xbc00 + 8005d00: f7fa fe38 bl 8000974 + lcd_write_reg(0xBC01, 0x00); + 8005d04: 2100 movs r1, #0 + 8005d06: f64b 4001 movw r0, #48129 @ 0xbc01 + 8005d0a: f7fa fe33 bl 8000974 + lcd_write_reg(0xBC02, 0x00); + 8005d0e: 2100 movs r1, #0 + 8005d10: f64b 4002 movw r0, #48130 @ 0xbc02 + 8005d14: f7fa fe2e bl 8000974 + /* Timing control 4H w/ 4-delay */ + lcd_write_reg(0xC900, 0xD0); + 8005d18: 21d0 movs r1, #208 @ 0xd0 + 8005d1a: f44f 4049 mov.w r0, #51456 @ 0xc900 + 8005d1e: f7fa fe29 bl 8000974 + lcd_write_reg(0xC901, 0x02); + 8005d22: 2102 movs r1, #2 + 8005d24: f64c 1001 movw r0, #51457 @ 0xc901 + 8005d28: f7fa fe24 bl 8000974 + lcd_write_reg(0xC902, 0x50); + 8005d2c: 2150 movs r1, #80 @ 0x50 + 8005d2e: f64c 1002 movw r0, #51458 @ 0xc902 + 8005d32: f7fa fe1f bl 8000974 + lcd_write_reg(0xC903, 0x50); + 8005d36: 2150 movs r1, #80 @ 0x50 + 8005d38: f64c 1003 movw r0, #51459 @ 0xc903 + 8005d3c: f7fa fe1a bl 8000974 + lcd_write_reg(0xC904, 0x50); + 8005d40: 2150 movs r1, #80 @ 0x50 + 8005d42: f64c 1004 movw r0, #51460 @ 0xc904 + 8005d46: f7fa fe15 bl 8000974 + lcd_write_reg(0x3500, 0x00); + 8005d4a: 2100 movs r1, #0 + 8005d4c: f44f 5054 mov.w r0, #13568 @ 0x3500 + 8005d50: f7fa fe10 bl 8000974 + lcd_write_reg(0x3A00, 0x55); /* 16-bit/pixel */ + 8005d54: 2155 movs r1, #85 @ 0x55 + 8005d56: f44f 5068 mov.w r0, #14848 @ 0x3a00 + 8005d5a: f7fa fe0b bl 8000974 + 8005d5e: f44f 5388 mov.w r3, #4352 @ 0x1100 + 8005d62: f8a7 3106 strh.w r3, [r7, #262] @ 0x106 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8005d66: 4b1b ldr r3, [pc, #108] @ (8005dd4 ) + 8005d68: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8005d6c: 611a str r2, [r3, #16] + LCD_CS(0); + 8005d6e: 4b19 ldr r3, [pc, #100] @ (8005dd4 ) + 8005d70: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8005d74: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8005d76: f8b7 3106 ldrh.w r3, [r7, #262] @ 0x106 + 8005d7a: b29a uxth r2, r3 + 8005d7c: 4b16 ldr r3, [pc, #88] @ (8005dd8 ) + 8005d7e: 60da str r2, [r3, #12] + LCD_WR(0); + 8005d80: 4b14 ldr r3, [pc, #80] @ (8005dd4 ) + 8005d82: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8005d86: 611a str r2, [r3, #16] + LCD_WR(1); + 8005d88: 4b12 ldr r3, [pc, #72] @ (8005dd4 ) + 8005d8a: 2280 movs r2, #128 @ 0x80 + 8005d8c: 611a str r2, [r3, #16] + LCD_CS(1); + 8005d8e: 4b11 ldr r3, [pc, #68] @ (8005dd4 ) + 8005d90: f44f 7200 mov.w r2, #512 @ 0x200 + 8005d94: 611a str r2, [r3, #16] +} + 8005d96: bf00 nop + 8005d98: f44f 5324 mov.w r3, #10496 @ 0x2900 + 8005d9c: f8a7 3104 strh.w r3, [r7, #260] @ 0x104 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8005da0: 4b0c ldr r3, [pc, #48] @ (8005dd4 ) + 8005da2: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8005da6: 611a str r2, [r3, #16] + LCD_CS(0); + 8005da8: 4b0a ldr r3, [pc, #40] @ (8005dd4 ) + 8005daa: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8005dae: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8005db0: f8b7 3104 ldrh.w r3, [r7, #260] @ 0x104 + 8005db4: b29a uxth r2, r3 + 8005db6: 4b08 ldr r3, [pc, #32] @ (8005dd8 ) + 8005db8: 60da str r2, [r3, #12] + LCD_WR(0); + 8005dba: 4b06 ldr r3, [pc, #24] @ (8005dd4 ) + 8005dbc: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8005dc0: 611a str r2, [r3, #16] + LCD_WR(1); + 8005dc2: 4b04 ldr r3, [pc, #16] @ (8005dd4 ) + 8005dc4: 2280 movs r2, #128 @ 0x80 + 8005dc6: 611a str r2, [r3, #16] + LCD_CS(1); + 8005dc8: 4b02 ldr r3, [pc, #8] @ (8005dd4 ) + 8005dca: f44f 7200 mov.w r2, #512 @ 0x200 + 8005dce: 611a str r2, [r3, #16] +} + 8005dd0: f000 be33 b.w 8006a3a + 8005dd4: 40011000 .word 0x40011000 + 8005dd8: 40010c00 .word 0x40010c00 + lcd_wr_regno(0x1100); + //delay_us(120); + lcd_wr_regno(0x2900); + } + else if (lcddev.id == 0x9806) + 8005ddc: 4bc3 ldr r3, [pc, #780] @ (80060ec ) + 8005dde: 889b ldrh r3, [r3, #4] + 8005de0: f649 0206 movw r2, #38918 @ 0x9806 + 8005de4: 4293 cmp r3, r2 + 8005de6: f040 8407 bne.w 80065f8 + 8005dea: 23ff movs r3, #255 @ 0xff + 8005dec: f8a7 3136 strh.w r3, [r7, #310] @ 0x136 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8005df0: 4bbf ldr r3, [pc, #764] @ (80060f0 ) + 8005df2: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8005df6: 611a str r2, [r3, #16] + LCD_CS(0); + 8005df8: 4bbd ldr r3, [pc, #756] @ (80060f0 ) + 8005dfa: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8005dfe: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8005e00: f8b7 3136 ldrh.w r3, [r7, #310] @ 0x136 + 8005e04: b29a uxth r2, r3 + 8005e06: 4bbb ldr r3, [pc, #748] @ (80060f4 ) + 8005e08: 60da str r2, [r3, #12] + LCD_WR(0); + 8005e0a: 4bb9 ldr r3, [pc, #740] @ (80060f0 ) + 8005e0c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8005e10: 611a str r2, [r3, #16] + LCD_WR(1); + 8005e12: 4bb7 ldr r3, [pc, #732] @ (80060f0 ) + 8005e14: 2280 movs r2, #128 @ 0x80 + 8005e16: 611a str r2, [r3, #16] + LCD_CS(1); + 8005e18: 4bb5 ldr r3, [pc, #724] @ (80060f0 ) + 8005e1a: f44f 7200 mov.w r2, #512 @ 0x200 + 8005e1e: 611a str r2, [r3, #16] +} + 8005e20: bf00 nop + { + // lcd_ex_ili9806_reginit(); /* ִ��ILI9806��ʼ�� */ + lcd_wr_regno(0xFF); /* EXTC Command Set enable register */ + lcd_wr_xdata(0xFF); + 8005e22: 20ff movs r0, #255 @ 0xff + 8005e24: f7fa fd82 bl 800092c + lcd_wr_xdata(0x98); + 8005e28: 2098 movs r0, #152 @ 0x98 + 8005e2a: f7fa fd7f bl 800092c + lcd_wr_xdata(0x06); + 8005e2e: 2006 movs r0, #6 + 8005e30: f7fa fd7c bl 800092c + 8005e34: 23bc movs r3, #188 @ 0xbc + 8005e36: f8a7 3134 strh.w r3, [r7, #308] @ 0x134 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8005e3a: 4bad ldr r3, [pc, #692] @ (80060f0 ) + 8005e3c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8005e40: 611a str r2, [r3, #16] + LCD_CS(0); + 8005e42: 4bab ldr r3, [pc, #684] @ (80060f0 ) + 8005e44: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8005e48: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8005e4a: f8b7 3134 ldrh.w r3, [r7, #308] @ 0x134 + 8005e4e: b29a uxth r2, r3 + 8005e50: 4ba8 ldr r3, [pc, #672] @ (80060f4 ) + 8005e52: 60da str r2, [r3, #12] + LCD_WR(0); + 8005e54: 4ba6 ldr r3, [pc, #664] @ (80060f0 ) + 8005e56: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8005e5a: 611a str r2, [r3, #16] + LCD_WR(1); + 8005e5c: 4ba4 ldr r3, [pc, #656] @ (80060f0 ) + 8005e5e: 2280 movs r2, #128 @ 0x80 + 8005e60: 611a str r2, [r3, #16] + LCD_CS(1); + 8005e62: 4ba3 ldr r3, [pc, #652] @ (80060f0 ) + 8005e64: f44f 7200 mov.w r2, #512 @ 0x200 + 8005e68: 611a str r2, [r3, #16] +} + 8005e6a: bf00 nop + + lcd_wr_regno(0xBC); /* GIP 1 */ + lcd_wr_xdata(0x01); + 8005e6c: 2001 movs r0, #1 + 8005e6e: f7fa fd5d bl 800092c + lcd_wr_xdata(0x0F); + 8005e72: 200f movs r0, #15 + 8005e74: f7fa fd5a bl 800092c + lcd_wr_xdata(0x61); + 8005e78: 2061 movs r0, #97 @ 0x61 + 8005e7a: f7fa fd57 bl 800092c + lcd_wr_xdata(0xFF); + 8005e7e: 20ff movs r0, #255 @ 0xff + 8005e80: f7fa fd54 bl 800092c + lcd_wr_xdata(0x01); + 8005e84: 2001 movs r0, #1 + 8005e86: f7fa fd51 bl 800092c + lcd_wr_xdata(0x01); + 8005e8a: 2001 movs r0, #1 + 8005e8c: f7fa fd4e bl 800092c + lcd_wr_xdata(0x0B); + 8005e90: 200b movs r0, #11 + 8005e92: f7fa fd4b bl 800092c + lcd_wr_xdata(0x10); + 8005e96: 2010 movs r0, #16 + 8005e98: f7fa fd48 bl 800092c + lcd_wr_xdata(0x37); + 8005e9c: 2037 movs r0, #55 @ 0x37 + 8005e9e: f7fa fd45 bl 800092c + lcd_wr_xdata(0x63); + 8005ea2: 2063 movs r0, #99 @ 0x63 + 8005ea4: f7fa fd42 bl 800092c + lcd_wr_xdata(0xFF); + 8005ea8: 20ff movs r0, #255 @ 0xff + 8005eaa: f7fa fd3f bl 800092c + lcd_wr_xdata(0xFF); + 8005eae: 20ff movs r0, #255 @ 0xff + 8005eb0: f7fa fd3c bl 800092c + lcd_wr_xdata(0x01); + 8005eb4: 2001 movs r0, #1 + 8005eb6: f7fa fd39 bl 800092c + lcd_wr_xdata(0x01); + 8005eba: 2001 movs r0, #1 + 8005ebc: f7fa fd36 bl 800092c + lcd_wr_xdata(0x00); + 8005ec0: 2000 movs r0, #0 + 8005ec2: f7fa fd33 bl 800092c + lcd_wr_xdata(0x00); + 8005ec6: 2000 movs r0, #0 + 8005ec8: f7fa fd30 bl 800092c + lcd_wr_xdata(0xFF); + 8005ecc: 20ff movs r0, #255 @ 0xff + 8005ece: f7fa fd2d bl 800092c + lcd_wr_xdata(0x52); + 8005ed2: 2052 movs r0, #82 @ 0x52 + 8005ed4: f7fa fd2a bl 800092c + lcd_wr_xdata(0x01); + 8005ed8: 2001 movs r0, #1 + 8005eda: f7fa fd27 bl 800092c + lcd_wr_xdata(0x00); + 8005ede: 2000 movs r0, #0 + 8005ee0: f7fa fd24 bl 800092c + lcd_wr_xdata(0x40); + 8005ee4: 2040 movs r0, #64 @ 0x40 + 8005ee6: f7fa fd21 bl 800092c + 8005eea: 23bd movs r3, #189 @ 0xbd + 8005eec: f8a7 3132 strh.w r3, [r7, #306] @ 0x132 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8005ef0: 4b7f ldr r3, [pc, #508] @ (80060f0 ) + 8005ef2: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8005ef6: 611a str r2, [r3, #16] + LCD_CS(0); + 8005ef8: 4b7d ldr r3, [pc, #500] @ (80060f0 ) + 8005efa: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8005efe: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8005f00: f8b7 3132 ldrh.w r3, [r7, #306] @ 0x132 + 8005f04: b29a uxth r2, r3 + 8005f06: 4b7b ldr r3, [pc, #492] @ (80060f4 ) + 8005f08: 60da str r2, [r3, #12] + LCD_WR(0); + 8005f0a: 4b79 ldr r3, [pc, #484] @ (80060f0 ) + 8005f0c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8005f10: 611a str r2, [r3, #16] + LCD_WR(1); + 8005f12: 4b77 ldr r3, [pc, #476] @ (80060f0 ) + 8005f14: 2280 movs r2, #128 @ 0x80 + 8005f16: 611a str r2, [r3, #16] + LCD_CS(1); + 8005f18: 4b75 ldr r3, [pc, #468] @ (80060f0 ) + 8005f1a: f44f 7200 mov.w r2, #512 @ 0x200 + 8005f1e: 611a str r2, [r3, #16] +} + 8005f20: bf00 nop + + lcd_wr_regno(0xBD); /* GIP 2 */ + lcd_wr_xdata(0x01); + 8005f22: 2001 movs r0, #1 + 8005f24: f7fa fd02 bl 800092c + lcd_wr_xdata(0x23); + 8005f28: 2023 movs r0, #35 @ 0x23 + 8005f2a: f7fa fcff bl 800092c + lcd_wr_xdata(0x45); + 8005f2e: 2045 movs r0, #69 @ 0x45 + 8005f30: f7fa fcfc bl 800092c + lcd_wr_xdata(0x67); + 8005f34: 2067 movs r0, #103 @ 0x67 + 8005f36: f7fa fcf9 bl 800092c + lcd_wr_xdata(0x01); + 8005f3a: 2001 movs r0, #1 + 8005f3c: f7fa fcf6 bl 800092c + lcd_wr_xdata(0x23); + 8005f40: 2023 movs r0, #35 @ 0x23 + 8005f42: f7fa fcf3 bl 800092c + lcd_wr_xdata(0x45); + 8005f46: 2045 movs r0, #69 @ 0x45 + 8005f48: f7fa fcf0 bl 800092c + lcd_wr_xdata(0x67); + 8005f4c: 2067 movs r0, #103 @ 0x67 + 8005f4e: f7fa fced bl 800092c + 8005f52: 23be movs r3, #190 @ 0xbe + 8005f54: f8a7 3130 strh.w r3, [r7, #304] @ 0x130 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8005f58: 4b65 ldr r3, [pc, #404] @ (80060f0 ) + 8005f5a: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8005f5e: 611a str r2, [r3, #16] + LCD_CS(0); + 8005f60: 4b63 ldr r3, [pc, #396] @ (80060f0 ) + 8005f62: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8005f66: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8005f68: f8b7 3130 ldrh.w r3, [r7, #304] @ 0x130 + 8005f6c: b29a uxth r2, r3 + 8005f6e: 4b61 ldr r3, [pc, #388] @ (80060f4 ) + 8005f70: 60da str r2, [r3, #12] + LCD_WR(0); + 8005f72: 4b5f ldr r3, [pc, #380] @ (80060f0 ) + 8005f74: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8005f78: 611a str r2, [r3, #16] + LCD_WR(1); + 8005f7a: 4b5d ldr r3, [pc, #372] @ (80060f0 ) + 8005f7c: 2280 movs r2, #128 @ 0x80 + 8005f7e: 611a str r2, [r3, #16] + LCD_CS(1); + 8005f80: 4b5b ldr r3, [pc, #364] @ (80060f0 ) + 8005f82: f44f 7200 mov.w r2, #512 @ 0x200 + 8005f86: 611a str r2, [r3, #16] +} + 8005f88: bf00 nop + + lcd_wr_regno(0xBE); /* GIP 3 */ + lcd_wr_xdata(0x00); + 8005f8a: 2000 movs r0, #0 + 8005f8c: f7fa fcce bl 800092c + lcd_wr_xdata(0x01); + 8005f90: 2001 movs r0, #1 + 8005f92: f7fa fccb bl 800092c + lcd_wr_xdata(0xAB); + 8005f96: 20ab movs r0, #171 @ 0xab + 8005f98: f7fa fcc8 bl 800092c + lcd_wr_xdata(0x60); + 8005f9c: 2060 movs r0, #96 @ 0x60 + 8005f9e: f7fa fcc5 bl 800092c + lcd_wr_xdata(0x22); + 8005fa2: 2022 movs r0, #34 @ 0x22 + 8005fa4: f7fa fcc2 bl 800092c + lcd_wr_xdata(0x22); + 8005fa8: 2022 movs r0, #34 @ 0x22 + 8005faa: f7fa fcbf bl 800092c + lcd_wr_xdata(0x22); + 8005fae: 2022 movs r0, #34 @ 0x22 + 8005fb0: f7fa fcbc bl 800092c + lcd_wr_xdata(0x22); + 8005fb4: 2022 movs r0, #34 @ 0x22 + 8005fb6: f7fa fcb9 bl 800092c + lcd_wr_xdata(0x22); + 8005fba: 2022 movs r0, #34 @ 0x22 + 8005fbc: f7fa fcb6 bl 800092c + 8005fc0: 23c7 movs r3, #199 @ 0xc7 + 8005fc2: f8a7 312e strh.w r3, [r7, #302] @ 0x12e + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8005fc6: 4b4a ldr r3, [pc, #296] @ (80060f0 ) + 8005fc8: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8005fcc: 611a str r2, [r3, #16] + LCD_CS(0); + 8005fce: 4b48 ldr r3, [pc, #288] @ (80060f0 ) + 8005fd0: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8005fd4: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8005fd6: f8b7 312e ldrh.w r3, [r7, #302] @ 0x12e + 8005fda: b29a uxth r2, r3 + 8005fdc: 4b45 ldr r3, [pc, #276] @ (80060f4 ) + 8005fde: 60da str r2, [r3, #12] + LCD_WR(0); + 8005fe0: 4b43 ldr r3, [pc, #268] @ (80060f0 ) + 8005fe2: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8005fe6: 611a str r2, [r3, #16] + LCD_WR(1); + 8005fe8: 4b41 ldr r3, [pc, #260] @ (80060f0 ) + 8005fea: 2280 movs r2, #128 @ 0x80 + 8005fec: 611a str r2, [r3, #16] + LCD_CS(1); + 8005fee: 4b40 ldr r3, [pc, #256] @ (80060f0 ) + 8005ff0: f44f 7200 mov.w r2, #512 @ 0x200 + 8005ff4: 611a str r2, [r3, #16] +} + 8005ff6: bf00 nop + + lcd_wr_regno(0xC7); /* VCOM Control */ + lcd_wr_xdata(0x36); + 8005ff8: 2036 movs r0, #54 @ 0x36 + 8005ffa: f7fa fc97 bl 800092c + 8005ffe: 23ed movs r3, #237 @ 0xed + 8006000: f8a7 312c strh.w r3, [r7, #300] @ 0x12c + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006004: 4b3a ldr r3, [pc, #232] @ (80060f0 ) + 8006006: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800600a: 611a str r2, [r3, #16] + LCD_CS(0); + 800600c: 4b38 ldr r3, [pc, #224] @ (80060f0 ) + 800600e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006012: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006014: f8b7 312c ldrh.w r3, [r7, #300] @ 0x12c + 8006018: b29a uxth r2, r3 + 800601a: 4b36 ldr r3, [pc, #216] @ (80060f4 ) + 800601c: 60da str r2, [r3, #12] + LCD_WR(0); + 800601e: 4b34 ldr r3, [pc, #208] @ (80060f0 ) + 8006020: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006024: 611a str r2, [r3, #16] + LCD_WR(1); + 8006026: 4b32 ldr r3, [pc, #200] @ (80060f0 ) + 8006028: 2280 movs r2, #128 @ 0x80 + 800602a: 611a str r2, [r3, #16] + LCD_CS(1); + 800602c: 4b30 ldr r3, [pc, #192] @ (80060f0 ) + 800602e: f44f 7200 mov.w r2, #512 @ 0x200 + 8006032: 611a str r2, [r3, #16] +} + 8006034: bf00 nop + + lcd_wr_regno(0xED); /* EN_volt_reg VGMP / VGMN /VGSP / VGSN voltage to output */ + lcd_wr_xdata(0x7F); + 8006036: 207f movs r0, #127 @ 0x7f + 8006038: f7fa fc78 bl 800092c + lcd_wr_xdata(0x0F); + 800603c: 200f movs r0, #15 + 800603e: f7fa fc75 bl 800092c + 8006042: 23c0 movs r3, #192 @ 0xc0 + 8006044: f8a7 312a strh.w r3, [r7, #298] @ 0x12a + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006048: 4b29 ldr r3, [pc, #164] @ (80060f0 ) + 800604a: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800604e: 611a str r2, [r3, #16] + LCD_CS(0); + 8006050: 4b27 ldr r3, [pc, #156] @ (80060f0 ) + 8006052: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006056: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006058: f8b7 312a ldrh.w r3, [r7, #298] @ 0x12a + 800605c: b29a uxth r2, r3 + 800605e: 4b25 ldr r3, [pc, #148] @ (80060f4 ) + 8006060: 60da str r2, [r3, #12] + LCD_WR(0); + 8006062: 4b23 ldr r3, [pc, #140] @ (80060f0 ) + 8006064: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006068: 611a str r2, [r3, #16] + LCD_WR(1); + 800606a: 4b21 ldr r3, [pc, #132] @ (80060f0 ) + 800606c: 2280 movs r2, #128 @ 0x80 + 800606e: 611a str r2, [r3, #16] + LCD_CS(1); + 8006070: 4b1f ldr r3, [pc, #124] @ (80060f0 ) + 8006072: f44f 7200 mov.w r2, #512 @ 0x200 + 8006076: 611a str r2, [r3, #16] +} + 8006078: bf00 nop + + lcd_wr_regno(0XC0); /* Power Control 1 Setting AVDD / AVEE / VGH / VGL */ + lcd_wr_xdata(0x0F); + 800607a: 200f movs r0, #15 + 800607c: f7fa fc56 bl 800092c + lcd_wr_xdata(0x0B); + 8006080: 200b movs r0, #11 + 8006082: f7fa fc53 bl 800092c + lcd_wr_xdata(0x0A); /* VGH 15V,VGLO-10V */ + 8006086: 200a movs r0, #10 + 8006088: f7fa fc50 bl 800092c + 800608c: 23fc movs r3, #252 @ 0xfc + 800608e: f8a7 3128 strh.w r3, [r7, #296] @ 0x128 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006092: 4b17 ldr r3, [pc, #92] @ (80060f0 ) + 8006094: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006098: 611a str r2, [r3, #16] + LCD_CS(0); + 800609a: 4b15 ldr r3, [pc, #84] @ (80060f0 ) + 800609c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80060a0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80060a2: f8b7 3128 ldrh.w r3, [r7, #296] @ 0x128 + 80060a6: b29a uxth r2, r3 + 80060a8: 4b12 ldr r3, [pc, #72] @ (80060f4 ) + 80060aa: 60da str r2, [r3, #12] + LCD_WR(0); + 80060ac: 4b10 ldr r3, [pc, #64] @ (80060f0 ) + 80060ae: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80060b2: 611a str r2, [r3, #16] + LCD_WR(1); + 80060b4: 4b0e ldr r3, [pc, #56] @ (80060f0 ) + 80060b6: 2280 movs r2, #128 @ 0x80 + 80060b8: 611a str r2, [r3, #16] + LCD_CS(1); + 80060ba: 4b0d ldr r3, [pc, #52] @ (80060f0 ) + 80060bc: f44f 7200 mov.w r2, #512 @ 0x200 + 80060c0: 611a str r2, [r3, #16] +} + 80060c2: bf00 nop + + lcd_wr_regno(0XFC); /* AVDD / AVEE generated by internal pumping. */ + lcd_wr_xdata(0x08); + 80060c4: 2008 movs r0, #8 + 80060c6: f7fa fc31 bl 800092c + 80060ca: 23df movs r3, #223 @ 0xdf + 80060cc: f8a7 3126 strh.w r3, [r7, #294] @ 0x126 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80060d0: 4b07 ldr r3, [pc, #28] @ (80060f0 ) + 80060d2: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80060d6: 611a str r2, [r3, #16] + LCD_CS(0); + 80060d8: 4b05 ldr r3, [pc, #20] @ (80060f0 ) + 80060da: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80060de: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80060e0: f8b7 3126 ldrh.w r3, [r7, #294] @ 0x126 + 80060e4: b29a uxth r2, r3 + 80060e6: 4b03 ldr r3, [pc, #12] @ (80060f4 ) + 80060e8: 60da str r2, [r3, #12] + 80060ea: e005 b.n 80060f8 + 80060ec: 2000002c .word 0x2000002c + 80060f0: 40011000 .word 0x40011000 + 80060f4: 40010c00 .word 0x40010c00 + LCD_WR(0); + 80060f8: 4bc7 ldr r3, [pc, #796] @ (8006418 ) + 80060fa: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80060fe: 611a str r2, [r3, #16] + LCD_WR(1); + 8006100: 4bc5 ldr r3, [pc, #788] @ (8006418 ) + 8006102: 2280 movs r2, #128 @ 0x80 + 8006104: 611a str r2, [r3, #16] + LCD_CS(1); + 8006106: 4bc4 ldr r3, [pc, #784] @ (8006418 ) + 8006108: f44f 7200 mov.w r2, #512 @ 0x200 + 800610c: 611a str r2, [r3, #16] +} + 800610e: bf00 nop + + lcd_wr_regno(0XDF); + lcd_wr_xdata(0x00); + 8006110: 2000 movs r0, #0 + 8006112: f7fa fc0b bl 800092c + lcd_wr_xdata(0x00); + 8006116: 2000 movs r0, #0 + 8006118: f7fa fc08 bl 800092c + lcd_wr_xdata(0x00); + 800611c: 2000 movs r0, #0 + 800611e: f7fa fc05 bl 800092c + lcd_wr_xdata(0x00); + 8006122: 2000 movs r0, #0 + 8006124: f7fa fc02 bl 800092c + lcd_wr_xdata(0x00); + 8006128: 2000 movs r0, #0 + 800612a: f7fa fbff bl 800092c + lcd_wr_xdata(0x20); + 800612e: 2020 movs r0, #32 + 8006130: f7fa fbfc bl 800092c + 8006134: 23f3 movs r3, #243 @ 0xf3 + 8006136: f8a7 3124 strh.w r3, [r7, #292] @ 0x124 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800613a: 4bb7 ldr r3, [pc, #732] @ (8006418 ) + 800613c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006140: 611a str r2, [r3, #16] + LCD_CS(0); + 8006142: 4bb5 ldr r3, [pc, #724] @ (8006418 ) + 8006144: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006148: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800614a: f8b7 3124 ldrh.w r3, [r7, #292] @ 0x124 + 800614e: b29a uxth r2, r3 + 8006150: 4bb2 ldr r3, [pc, #712] @ (800641c ) + 8006152: 60da str r2, [r3, #12] + LCD_WR(0); + 8006154: 4bb0 ldr r3, [pc, #704] @ (8006418 ) + 8006156: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800615a: 611a str r2, [r3, #16] + LCD_WR(1); + 800615c: 4bae ldr r3, [pc, #696] @ (8006418 ) + 800615e: 2280 movs r2, #128 @ 0x80 + 8006160: 611a str r2, [r3, #16] + LCD_CS(1); + 8006162: 4bad ldr r3, [pc, #692] @ (8006418 ) + 8006164: f44f 7200 mov.w r2, #512 @ 0x200 + 8006168: 611a str r2, [r3, #16] +} + 800616a: bf00 nop + + lcd_wr_regno(0XF3); /* DVDD Voltage Setting */ + lcd_wr_xdata(0x74); + 800616c: 2074 movs r0, #116 @ 0x74 + 800616e: f7fa fbdd bl 800092c + 8006172: 23b4 movs r3, #180 @ 0xb4 + 8006174: f8a7 3122 strh.w r3, [r7, #290] @ 0x122 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006178: 4ba7 ldr r3, [pc, #668] @ (8006418 ) + 800617a: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800617e: 611a str r2, [r3, #16] + LCD_CS(0); + 8006180: 4ba5 ldr r3, [pc, #660] @ (8006418 ) + 8006182: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006186: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006188: f8b7 3122 ldrh.w r3, [r7, #290] @ 0x122 + 800618c: b29a uxth r2, r3 + 800618e: 4ba3 ldr r3, [pc, #652] @ (800641c ) + 8006190: 60da str r2, [r3, #12] + LCD_WR(0); + 8006192: 4ba1 ldr r3, [pc, #644] @ (8006418 ) + 8006194: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006198: 611a str r2, [r3, #16] + LCD_WR(1); + 800619a: 4b9f ldr r3, [pc, #636] @ (8006418 ) + 800619c: 2280 movs r2, #128 @ 0x80 + 800619e: 611a str r2, [r3, #16] + LCD_CS(1); + 80061a0: 4b9d ldr r3, [pc, #628] @ (8006418 ) + 80061a2: f44f 7200 mov.w r2, #512 @ 0x200 + 80061a6: 611a str r2, [r3, #16] +} + 80061a8: bf00 nop + + lcd_wr_regno(0xB4); /* Inversion Type */ + lcd_wr_xdata(0x00); /* 02 */ + 80061aa: 2000 movs r0, #0 + 80061ac: f7fa fbbe bl 800092c + lcd_wr_xdata(0x00); /* 02 */ + 80061b0: 2000 movs r0, #0 + 80061b2: f7fa fbbb bl 800092c + lcd_wr_xdata(0x00); /* 02 */ + 80061b6: 2000 movs r0, #0 + 80061b8: f7fa fbb8 bl 800092c + 80061bc: 23f7 movs r3, #247 @ 0xf7 + 80061be: f8a7 3120 strh.w r3, [r7, #288] @ 0x120 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80061c2: 4b95 ldr r3, [pc, #596] @ (8006418 ) + 80061c4: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80061c8: 611a str r2, [r3, #16] + LCD_CS(0); + 80061ca: 4b93 ldr r3, [pc, #588] @ (8006418 ) + 80061cc: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80061d0: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80061d2: f8b7 3120 ldrh.w r3, [r7, #288] @ 0x120 + 80061d6: b29a uxth r2, r3 + 80061d8: 4b90 ldr r3, [pc, #576] @ (800641c ) + 80061da: 60da str r2, [r3, #12] + LCD_WR(0); + 80061dc: 4b8e ldr r3, [pc, #568] @ (8006418 ) + 80061de: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80061e2: 611a str r2, [r3, #16] + LCD_WR(1); + 80061e4: 4b8c ldr r3, [pc, #560] @ (8006418 ) + 80061e6: 2280 movs r2, #128 @ 0x80 + 80061e8: 611a str r2, [r3, #16] + LCD_CS(1); + 80061ea: 4b8b ldr r3, [pc, #556] @ (8006418 ) + 80061ec: f44f 7200 mov.w r2, #512 @ 0x200 + 80061f0: 611a str r2, [r3, #16] +} + 80061f2: bf00 nop + + lcd_wr_regno(0xF7); /* Resolution Control */ + lcd_wr_xdata(0x82); /* 480*800 */ + 80061f4: 2082 movs r0, #130 @ 0x82 + 80061f6: f7fa fb99 bl 800092c + 80061fa: 23b1 movs r3, #177 @ 0xb1 + 80061fc: f8a7 311e strh.w r3, [r7, #286] @ 0x11e + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006200: 4b85 ldr r3, [pc, #532] @ (8006418 ) + 8006202: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006206: 611a str r2, [r3, #16] + LCD_CS(0); + 8006208: 4b83 ldr r3, [pc, #524] @ (8006418 ) + 800620a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800620e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006210: f8b7 311e ldrh.w r3, [r7, #286] @ 0x11e + 8006214: b29a uxth r2, r3 + 8006216: 4b81 ldr r3, [pc, #516] @ (800641c ) + 8006218: 60da str r2, [r3, #12] + LCD_WR(0); + 800621a: 4b7f ldr r3, [pc, #508] @ (8006418 ) + 800621c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006220: 611a str r2, [r3, #16] + LCD_WR(1); + 8006222: 4b7d ldr r3, [pc, #500] @ (8006418 ) + 8006224: 2280 movs r2, #128 @ 0x80 + 8006226: 611a str r2, [r3, #16] + LCD_CS(1); + 8006228: 4b7b ldr r3, [pc, #492] @ (8006418 ) + 800622a: f44f 7200 mov.w r2, #512 @ 0x200 + 800622e: 611a str r2, [r3, #16] +} + 8006230: bf00 nop + + lcd_wr_regno(0xB1); /* FRAME RATE Setting */ + lcd_wr_xdata(0x00); + 8006232: 2000 movs r0, #0 + 8006234: f7fa fb7a bl 800092c + lcd_wr_xdata(0x13); + 8006238: 2013 movs r0, #19 + 800623a: f7fa fb77 bl 800092c + lcd_wr_xdata(0x13); + 800623e: 2013 movs r0, #19 + 8006240: f7fa fb74 bl 800092c + 8006244: 23f2 movs r3, #242 @ 0xf2 + 8006246: f8a7 311c strh.w r3, [r7, #284] @ 0x11c + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800624a: 4b73 ldr r3, [pc, #460] @ (8006418 ) + 800624c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006250: 611a str r2, [r3, #16] + LCD_CS(0); + 8006252: 4b71 ldr r3, [pc, #452] @ (8006418 ) + 8006254: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006258: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800625a: f8b7 311c ldrh.w r3, [r7, #284] @ 0x11c + 800625e: b29a uxth r2, r3 + 8006260: 4b6e ldr r3, [pc, #440] @ (800641c ) + 8006262: 60da str r2, [r3, #12] + LCD_WR(0); + 8006264: 4b6c ldr r3, [pc, #432] @ (8006418 ) + 8006266: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800626a: 611a str r2, [r3, #16] + LCD_WR(1); + 800626c: 4b6a ldr r3, [pc, #424] @ (8006418 ) + 800626e: 2280 movs r2, #128 @ 0x80 + 8006270: 611a str r2, [r3, #16] + LCD_CS(1); + 8006272: 4b69 ldr r3, [pc, #420] @ (8006418 ) + 8006274: f44f 7200 mov.w r2, #512 @ 0x200 + 8006278: 611a str r2, [r3, #16] +} + 800627a: bf00 nop + + lcd_wr_regno(0XF2); /* CR_EQ_PC_SDT #C0,06,40,28 */ + lcd_wr_xdata(0x80); + 800627c: 2080 movs r0, #128 @ 0x80 + 800627e: f7fa fb55 bl 800092c + lcd_wr_xdata(0x04); + 8006282: 2004 movs r0, #4 + 8006284: f7fa fb52 bl 800092c + lcd_wr_xdata(0x40); + 8006288: 2040 movs r0, #64 @ 0x40 + 800628a: f7fa fb4f bl 800092c + lcd_wr_xdata(0x28); + 800628e: 2028 movs r0, #40 @ 0x28 + 8006290: f7fa fb4c bl 800092c + 8006294: 23c1 movs r3, #193 @ 0xc1 + 8006296: f8a7 311a strh.w r3, [r7, #282] @ 0x11a + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800629a: 4b5f ldr r3, [pc, #380] @ (8006418 ) + 800629c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80062a0: 611a str r2, [r3, #16] + LCD_CS(0); + 80062a2: 4b5d ldr r3, [pc, #372] @ (8006418 ) + 80062a4: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80062a8: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80062aa: f8b7 311a ldrh.w r3, [r7, #282] @ 0x11a + 80062ae: b29a uxth r2, r3 + 80062b0: 4b5a ldr r3, [pc, #360] @ (800641c ) + 80062b2: 60da str r2, [r3, #12] + LCD_WR(0); + 80062b4: 4b58 ldr r3, [pc, #352] @ (8006418 ) + 80062b6: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80062ba: 611a str r2, [r3, #16] + LCD_WR(1); + 80062bc: 4b56 ldr r3, [pc, #344] @ (8006418 ) + 80062be: 2280 movs r2, #128 @ 0x80 + 80062c0: 611a str r2, [r3, #16] + LCD_CS(1); + 80062c2: 4b55 ldr r3, [pc, #340] @ (8006418 ) + 80062c4: f44f 7200 mov.w r2, #512 @ 0x200 + 80062c8: 611a str r2, [r3, #16] +} + 80062ca: bf00 nop + + lcd_wr_regno(0XC1); /* Power Control 2 SD OP Bias_VRH1_VRH2_EXT_CPCK_SEL */ + lcd_wr_xdata(0x17); + 80062cc: 2017 movs r0, #23 + 80062ce: f7fa fb2d bl 800092c + lcd_wr_xdata(0x88); /* VGMP */ + 80062d2: 2088 movs r0, #136 @ 0x88 + 80062d4: f7fa fb2a bl 800092c + lcd_wr_xdata(0x88); /* VGMN */ + 80062d8: 2088 movs r0, #136 @ 0x88 + 80062da: f7fa fb27 bl 800092c + lcd_wr_xdata(0x20); + 80062de: 2020 movs r0, #32 + 80062e0: f7fa fb24 bl 800092c + 80062e4: 23e0 movs r3, #224 @ 0xe0 + 80062e6: f8a7 3118 strh.w r3, [r7, #280] @ 0x118 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80062ea: 4b4b ldr r3, [pc, #300] @ (8006418 ) + 80062ec: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80062f0: 611a str r2, [r3, #16] + LCD_CS(0); + 80062f2: 4b49 ldr r3, [pc, #292] @ (8006418 ) + 80062f4: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80062f8: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80062fa: f8b7 3118 ldrh.w r3, [r7, #280] @ 0x118 + 80062fe: b29a uxth r2, r3 + 8006300: 4b46 ldr r3, [pc, #280] @ (800641c ) + 8006302: 60da str r2, [r3, #12] + LCD_WR(0); + 8006304: 4b44 ldr r3, [pc, #272] @ (8006418 ) + 8006306: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800630a: 611a str r2, [r3, #16] + LCD_WR(1); + 800630c: 4b42 ldr r3, [pc, #264] @ (8006418 ) + 800630e: 2280 movs r2, #128 @ 0x80 + 8006310: 611a str r2, [r3, #16] + LCD_CS(1); + 8006312: 4b41 ldr r3, [pc, #260] @ (8006418 ) + 8006314: f44f 7200 mov.w r2, #512 @ 0x200 + 8006318: 611a str r2, [r3, #16] +} + 800631a: bf00 nop + + lcd_wr_regno(0xE0); /* Positive Gamma Control */ + lcd_wr_xdata(0x00); /* P1 */ + 800631c: 2000 movs r0, #0 + 800631e: f7fa fb05 bl 800092c + lcd_wr_xdata(0x0A); /* P2 */ + 8006322: 200a movs r0, #10 + 8006324: f7fa fb02 bl 800092c + lcd_wr_xdata(0x12); /* P3 */ + 8006328: 2012 movs r0, #18 + 800632a: f7fa faff bl 800092c + lcd_wr_xdata(0x10); /* P4 */ + 800632e: 2010 movs r0, #16 + 8006330: f7fa fafc bl 800092c + lcd_wr_xdata(0x0E); /* P5 */ + 8006334: 200e movs r0, #14 + 8006336: f7fa faf9 bl 800092c + lcd_wr_xdata(0x20); /* P6 */ + 800633a: 2020 movs r0, #32 + 800633c: f7fa faf6 bl 800092c + lcd_wr_xdata(0xCC); /* P7 */ + 8006340: 20cc movs r0, #204 @ 0xcc + 8006342: f7fa faf3 bl 800092c + lcd_wr_xdata(0x07); /* P8 */ + 8006346: 2007 movs r0, #7 + 8006348: f7fa faf0 bl 800092c + lcd_wr_xdata(0x06); /* P9 */ + 800634c: 2006 movs r0, #6 + 800634e: f7fa faed bl 800092c + lcd_wr_xdata(0x0B); /* P10 */ + 8006352: 200b movs r0, #11 + 8006354: f7fa faea bl 800092c + lcd_wr_xdata(0x0E); /* P11 */ + 8006358: 200e movs r0, #14 + 800635a: f7fa fae7 bl 800092c + lcd_wr_xdata(0x0F); /* P12 */ + 800635e: 200f movs r0, #15 + 8006360: f7fa fae4 bl 800092c + lcd_wr_xdata(0x0D); /* P13 */ + 8006364: 200d movs r0, #13 + 8006366: f7fa fae1 bl 800092c + lcd_wr_xdata(0x15); /* P14 */ + 800636a: 2015 movs r0, #21 + 800636c: f7fa fade bl 800092c + lcd_wr_xdata(0x10); /* P15 */ + 8006370: 2010 movs r0, #16 + 8006372: f7fa fadb bl 800092c + lcd_wr_xdata(0x00); /* P16 */ + 8006376: 2000 movs r0, #0 + 8006378: f7fa fad8 bl 800092c + 800637c: 23e1 movs r3, #225 @ 0xe1 + 800637e: f8a7 3116 strh.w r3, [r7, #278] @ 0x116 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006382: 4b25 ldr r3, [pc, #148] @ (8006418 ) + 8006384: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006388: 611a str r2, [r3, #16] + LCD_CS(0); + 800638a: 4b23 ldr r3, [pc, #140] @ (8006418 ) + 800638c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006390: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006392: f8b7 3116 ldrh.w r3, [r7, #278] @ 0x116 + 8006396: b29a uxth r2, r3 + 8006398: 4b20 ldr r3, [pc, #128] @ (800641c ) + 800639a: 60da str r2, [r3, #12] + LCD_WR(0); + 800639c: 4b1e ldr r3, [pc, #120] @ (8006418 ) + 800639e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80063a2: 611a str r2, [r3, #16] + LCD_WR(1); + 80063a4: 4b1c ldr r3, [pc, #112] @ (8006418 ) + 80063a6: 2280 movs r2, #128 @ 0x80 + 80063a8: 611a str r2, [r3, #16] + LCD_CS(1); + 80063aa: 4b1b ldr r3, [pc, #108] @ (8006418 ) + 80063ac: f44f 7200 mov.w r2, #512 @ 0x200 + 80063b0: 611a str r2, [r3, #16] +} + 80063b2: bf00 nop + + lcd_wr_regno(0xE1); /* Negative Gamma Correction */ + lcd_wr_xdata(0x00); /* P1 */ + 80063b4: 2000 movs r0, #0 + 80063b6: f7fa fab9 bl 800092c + lcd_wr_xdata(0x0B); /* P2 */ + 80063ba: 200b movs r0, #11 + 80063bc: f7fa fab6 bl 800092c + lcd_wr_xdata(0x13); /* P3 */ + 80063c0: 2013 movs r0, #19 + 80063c2: f7fa fab3 bl 800092c + lcd_wr_xdata(0x0D); /* P4 */ + 80063c6: 200d movs r0, #13 + 80063c8: f7fa fab0 bl 800092c + lcd_wr_xdata(0x0E); /* P5 */ + 80063cc: 200e movs r0, #14 + 80063ce: f7fa faad bl 800092c + lcd_wr_xdata(0x1B); /* P6 */ + 80063d2: 201b movs r0, #27 + 80063d4: f7fa faaa bl 800092c + lcd_wr_xdata(0x71); /* P7 */ + 80063d8: 2071 movs r0, #113 @ 0x71 + 80063da: f7fa faa7 bl 800092c + lcd_wr_xdata(0x06); /* P8 */ + 80063de: 2006 movs r0, #6 + 80063e0: f7fa faa4 bl 800092c + lcd_wr_xdata(0x06); /* P9 */ + 80063e4: 2006 movs r0, #6 + 80063e6: f7fa faa1 bl 800092c + lcd_wr_xdata(0x0A); /* P10 */ + 80063ea: 200a movs r0, #10 + 80063ec: f7fa fa9e bl 800092c + lcd_wr_xdata(0x0F); /* P11 */ + 80063f0: 200f movs r0, #15 + 80063f2: f7fa fa9b bl 800092c + lcd_wr_xdata(0x0E); /* P12 */ + 80063f6: 200e movs r0, #14 + 80063f8: f7fa fa98 bl 800092c + lcd_wr_xdata(0x0F); /* P13 */ + 80063fc: 200f movs r0, #15 + 80063fe: f7fa fa95 bl 800092c + lcd_wr_xdata(0x15); /* P14 */ + 8006402: 2015 movs r0, #21 + 8006404: f7fa fa92 bl 800092c + lcd_wr_xdata(0x0C); /* P15 */ + 8006408: 200c movs r0, #12 + 800640a: f7fa fa8f bl 800092c + lcd_wr_xdata(0x00); /* P16 */ + 800640e: 2000 movs r0, #0 + 8006410: f7fa fa8c bl 800092c + 8006414: e004 b.n 8006420 + 8006416: bf00 nop + 8006418: 40011000 .word 0x40011000 + 800641c: 40010c00 .word 0x40010c00 + 8006420: 232a movs r3, #42 @ 0x2a + 8006422: f8a7 3114 strh.w r3, [r7, #276] @ 0x114 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006426: 4b72 ldr r3, [pc, #456] @ (80065f0 ) + 8006428: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800642c: 611a str r2, [r3, #16] + LCD_CS(0); + 800642e: 4b70 ldr r3, [pc, #448] @ (80065f0 ) + 8006430: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006434: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006436: f8b7 3114 ldrh.w r3, [r7, #276] @ 0x114 + 800643a: b29a uxth r2, r3 + 800643c: 4b6d ldr r3, [pc, #436] @ (80065f4 ) + 800643e: 60da str r2, [r3, #12] + LCD_WR(0); + 8006440: 4b6b ldr r3, [pc, #428] @ (80065f0 ) + 8006442: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006446: 611a str r2, [r3, #16] + LCD_WR(1); + 8006448: 4b69 ldr r3, [pc, #420] @ (80065f0 ) + 800644a: 2280 movs r2, #128 @ 0x80 + 800644c: 611a str r2, [r3, #16] + LCD_CS(1); + 800644e: 4b68 ldr r3, [pc, #416] @ (80065f0 ) + 8006450: f44f 7200 mov.w r2, #512 @ 0x200 + 8006454: 611a str r2, [r3, #16] +} + 8006456: bf00 nop + + lcd_wr_regno(0x2a); + lcd_wr_xdata(0x00); + 8006458: 2000 movs r0, #0 + 800645a: f7fa fa67 bl 800092c + lcd_wr_xdata(0x00); + 800645e: 2000 movs r0, #0 + 8006460: f7fa fa64 bl 800092c + lcd_wr_xdata(0x01); + 8006464: 2001 movs r0, #1 + 8006466: f7fa fa61 bl 800092c + lcd_wr_xdata(0xdf); + 800646a: 20df movs r0, #223 @ 0xdf + 800646c: f7fa fa5e bl 800092c + 8006470: 232b movs r3, #43 @ 0x2b + 8006472: f8a7 3112 strh.w r3, [r7, #274] @ 0x112 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006476: 4b5e ldr r3, [pc, #376] @ (80065f0 ) + 8006478: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800647c: 611a str r2, [r3, #16] + LCD_CS(0); + 800647e: 4b5c ldr r3, [pc, #368] @ (80065f0 ) + 8006480: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006484: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006486: f8b7 3112 ldrh.w r3, [r7, #274] @ 0x112 + 800648a: b29a uxth r2, r3 + 800648c: 4b59 ldr r3, [pc, #356] @ (80065f4 ) + 800648e: 60da str r2, [r3, #12] + LCD_WR(0); + 8006490: 4b57 ldr r3, [pc, #348] @ (80065f0 ) + 8006492: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006496: 611a str r2, [r3, #16] + LCD_WR(1); + 8006498: 4b55 ldr r3, [pc, #340] @ (80065f0 ) + 800649a: 2280 movs r2, #128 @ 0x80 + 800649c: 611a str r2, [r3, #16] + LCD_CS(1); + 800649e: 4b54 ldr r3, [pc, #336] @ (80065f0 ) + 80064a0: f44f 7200 mov.w r2, #512 @ 0x200 + 80064a4: 611a str r2, [r3, #16] +} + 80064a6: bf00 nop + + lcd_wr_regno(0x2b); + lcd_wr_xdata(0x00); + 80064a8: 2000 movs r0, #0 + 80064aa: f7fa fa3f bl 800092c + lcd_wr_xdata(0x00); + 80064ae: 2000 movs r0, #0 + 80064b0: f7fa fa3c bl 800092c + lcd_wr_xdata(0x03); + 80064b4: 2003 movs r0, #3 + 80064b6: f7fa fa39 bl 800092c + lcd_wr_xdata(0x1f); + 80064ba: 201f movs r0, #31 + 80064bc: f7fa fa36 bl 800092c + 80064c0: 233a movs r3, #58 @ 0x3a + 80064c2: f8a7 3110 strh.w r3, [r7, #272] @ 0x110 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80064c6: 4b4a ldr r3, [pc, #296] @ (80065f0 ) + 80064c8: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80064cc: 611a str r2, [r3, #16] + LCD_CS(0); + 80064ce: 4b48 ldr r3, [pc, #288] @ (80065f0 ) + 80064d0: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80064d4: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80064d6: f8b7 3110 ldrh.w r3, [r7, #272] @ 0x110 + 80064da: b29a uxth r2, r3 + 80064dc: 4b45 ldr r3, [pc, #276] @ (80065f4 ) + 80064de: 60da str r2, [r3, #12] + LCD_WR(0); + 80064e0: 4b43 ldr r3, [pc, #268] @ (80065f0 ) + 80064e2: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80064e6: 611a str r2, [r3, #16] + LCD_WR(1); + 80064e8: 4b41 ldr r3, [pc, #260] @ (80065f0 ) + 80064ea: 2280 movs r2, #128 @ 0x80 + 80064ec: 611a str r2, [r3, #16] + LCD_CS(1); + 80064ee: 4b40 ldr r3, [pc, #256] @ (80065f0 ) + 80064f0: f44f 7200 mov.w r2, #512 @ 0x200 + 80064f4: 611a str r2, [r3, #16] +} + 80064f6: bf00 nop + + lcd_wr_regno(0x3A); /* Pixel Format */ + lcd_wr_xdata(0x55); + 80064f8: 2055 movs r0, #85 @ 0x55 + 80064fa: f7fa fa17 bl 800092c + 80064fe: 2336 movs r3, #54 @ 0x36 + 8006500: f8a7 310e strh.w r3, [r7, #270] @ 0x10e + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006504: 4b3a ldr r3, [pc, #232] @ (80065f0 ) + 8006506: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800650a: 611a str r2, [r3, #16] + LCD_CS(0); + 800650c: 4b38 ldr r3, [pc, #224] @ (80065f0 ) + 800650e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006512: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006514: f8b7 310e ldrh.w r3, [r7, #270] @ 0x10e + 8006518: b29a uxth r2, r3 + 800651a: 4b36 ldr r3, [pc, #216] @ (80065f4 ) + 800651c: 60da str r2, [r3, #12] + LCD_WR(0); + 800651e: 4b34 ldr r3, [pc, #208] @ (80065f0 ) + 8006520: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006524: 611a str r2, [r3, #16] + LCD_WR(1); + 8006526: 4b32 ldr r3, [pc, #200] @ (80065f0 ) + 8006528: 2280 movs r2, #128 @ 0x80 + 800652a: 611a str r2, [r3, #16] + LCD_CS(1); + 800652c: 4b30 ldr r3, [pc, #192] @ (80065f0 ) + 800652e: f44f 7200 mov.w r2, #512 @ 0x200 + 8006532: 611a str r2, [r3, #16] +} + 8006534: bf00 nop + + lcd_wr_regno(0x36); /* Memory Access Control */ + lcd_wr_xdata(0x00); /* 02-180 */ + 8006536: 2000 movs r0, #0 + 8006538: f7fa f9f8 bl 800092c + 800653c: 2311 movs r3, #17 + 800653e: f8a7 310c strh.w r3, [r7, #268] @ 0x10c + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006542: 4b2b ldr r3, [pc, #172] @ (80065f0 ) + 8006544: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006548: 611a str r2, [r3, #16] + LCD_CS(0); + 800654a: 4b29 ldr r3, [pc, #164] @ (80065f0 ) + 800654c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006550: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006552: f8b7 310c ldrh.w r3, [r7, #268] @ 0x10c + 8006556: b29a uxth r2, r3 + 8006558: 4b26 ldr r3, [pc, #152] @ (80065f4 ) + 800655a: 60da str r2, [r3, #12] + LCD_WR(0); + 800655c: 4b24 ldr r3, [pc, #144] @ (80065f0 ) + 800655e: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006562: 611a str r2, [r3, #16] + LCD_WR(1); + 8006564: 4b22 ldr r3, [pc, #136] @ (80065f0 ) + 8006566: 2280 movs r2, #128 @ 0x80 + 8006568: 611a str r2, [r3, #16] + LCD_CS(1); + 800656a: 4b21 ldr r3, [pc, #132] @ (80065f0 ) + 800656c: f44f 7200 mov.w r2, #512 @ 0x200 + 8006570: 611a str r2, [r3, #16] +} + 8006572: bf00 nop + + lcd_wr_regno(0x11); + HAL_Delay(120); + 8006574: 2078 movs r0, #120 @ 0x78 + 8006576: f000 ff9f bl 80074b8 + 800657a: 2329 movs r3, #41 @ 0x29 + 800657c: f8a7 310a strh.w r3, [r7, #266] @ 0x10a + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006580: 4b1b ldr r3, [pc, #108] @ (80065f0 ) + 8006582: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006586: 611a str r2, [r3, #16] + LCD_CS(0); + 8006588: 4b19 ldr r3, [pc, #100] @ (80065f0 ) + 800658a: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800658e: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006590: f8b7 310a ldrh.w r3, [r7, #266] @ 0x10a + 8006594: b29a uxth r2, r3 + 8006596: 4b17 ldr r3, [pc, #92] @ (80065f4 ) + 8006598: 60da str r2, [r3, #12] + LCD_WR(0); + 800659a: 4b15 ldr r3, [pc, #84] @ (80065f0 ) + 800659c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80065a0: 611a str r2, [r3, #16] + LCD_WR(1); + 80065a2: 4b13 ldr r3, [pc, #76] @ (80065f0 ) + 80065a4: 2280 movs r2, #128 @ 0x80 + 80065a6: 611a str r2, [r3, #16] + LCD_CS(1); + 80065a8: 4b11 ldr r3, [pc, #68] @ (80065f0 ) + 80065aa: f44f 7200 mov.w r2, #512 @ 0x200 + 80065ae: 611a str r2, [r3, #16] +} + 80065b0: bf00 nop + lcd_wr_regno(0x29); + HAL_Delay(20); + 80065b2: 2014 movs r0, #20 + 80065b4: f000 ff80 bl 80074b8 + 80065b8: 232c movs r3, #44 @ 0x2c + 80065ba: f8a7 3108 strh.w r3, [r7, #264] @ 0x108 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80065be: 4b0c ldr r3, [pc, #48] @ (80065f0 ) + 80065c0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80065c4: 611a str r2, [r3, #16] + LCD_CS(0); + 80065c6: 4b0a ldr r3, [pc, #40] @ (80065f0 ) + 80065c8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80065cc: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80065ce: f8b7 3108 ldrh.w r3, [r7, #264] @ 0x108 + 80065d2: b29a uxth r2, r3 + 80065d4: 4b07 ldr r3, [pc, #28] @ (80065f4 ) + 80065d6: 60da str r2, [r3, #12] + LCD_WR(0); + 80065d8: 4b05 ldr r3, [pc, #20] @ (80065f0 ) + 80065da: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80065de: 611a str r2, [r3, #16] + LCD_WR(1); + 80065e0: 4b03 ldr r3, [pc, #12] @ (80065f0 ) + 80065e2: 2280 movs r2, #128 @ 0x80 + 80065e4: 611a str r2, [r3, #16] + LCD_CS(1); + 80065e6: 4b02 ldr r3, [pc, #8] @ (80065f0 ) + 80065e8: f44f 7200 mov.w r2, #512 @ 0x200 + 80065ec: 611a str r2, [r3, #16] +} + 80065ee: e224 b.n 8006a3a + 80065f0: 40011000 .word 0x40011000 + 80065f4: 40010c00 .word 0x40010c00 + lcd_wr_regno(0x2C); + } + else if (lcddev.id == 0x1963) + 80065f8: 4bbe ldr r3, [pc, #760] @ (80068f4 ) + 80065fa: 889b ldrh r3, [r3, #4] + 80065fc: f641 1263 movw r2, #6499 @ 0x1963 + 8006600: 4293 cmp r3, r2 + 8006602: f040 821a bne.w 8006a3a + 8006606: 23e2 movs r3, #226 @ 0xe2 + 8006608: f8a7 3152 strh.w r3, [r7, #338] @ 0x152 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800660c: 4bba ldr r3, [pc, #744] @ (80068f8 ) + 800660e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006612: 611a str r2, [r3, #16] + LCD_CS(0); + 8006614: 4bb8 ldr r3, [pc, #736] @ (80068f8 ) + 8006616: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800661a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800661c: f8b7 3152 ldrh.w r3, [r7, #338] @ 0x152 + 8006620: b29a uxth r2, r3 + 8006622: 4bb6 ldr r3, [pc, #728] @ (80068fc ) + 8006624: 60da str r2, [r3, #12] + LCD_WR(0); + 8006626: 4bb4 ldr r3, [pc, #720] @ (80068f8 ) + 8006628: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800662c: 611a str r2, [r3, #16] + LCD_WR(1); + 800662e: 4bb2 ldr r3, [pc, #712] @ (80068f8 ) + 8006630: 2280 movs r2, #128 @ 0x80 + 8006632: 611a str r2, [r3, #16] + LCD_CS(1); + 8006634: 4bb0 ldr r3, [pc, #704] @ (80068f8 ) + 8006636: f44f 7200 mov.w r2, #512 @ 0x200 + 800663a: 611a str r2, [r3, #16] +} + 800663c: bf00 nop + { + //lcd_ex_ssd1963_reginit(); /* ִ��SSD1963��ʼ�� */ + lcd_wr_regno(0xE2); /* Set PLL with OSC = 10MHz (hardware), Multiplier N = 35, 250MHz < VCO < 800MHz = OSC*(N+1), VCO = 300MHz */ + lcd_wr_xdata(0x1D); /* ����1 */ + 800663e: 201d movs r0, #29 + 8006640: f7fa f974 bl 800092c + lcd_wr_xdata(0x02); /* ����2 Divider M = 2, PLL = 300/(M+1) = 100MHz */ + 8006644: 2002 movs r0, #2 + 8006646: f7fa f971 bl 800092c + lcd_wr_xdata(0x04); /* ����3 Validate M and N values */ + 800664a: 2004 movs r0, #4 + 800664c: f7fa f96e bl 800092c + 8006650: 23e0 movs r3, #224 @ 0xe0 + 8006652: f8a7 3150 strh.w r3, [r7, #336] @ 0x150 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006656: 4ba8 ldr r3, [pc, #672] @ (80068f8 ) + 8006658: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800665c: 611a str r2, [r3, #16] + LCD_CS(0); + 800665e: 4ba6 ldr r3, [pc, #664] @ (80068f8 ) + 8006660: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006664: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006666: f8b7 3150 ldrh.w r3, [r7, #336] @ 0x150 + 800666a: b29a uxth r2, r3 + 800666c: 4ba3 ldr r3, [pc, #652] @ (80068fc ) + 800666e: 60da str r2, [r3, #12] + LCD_WR(0); + 8006670: 4ba1 ldr r3, [pc, #644] @ (80068f8 ) + 8006672: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006676: 611a str r2, [r3, #16] + LCD_WR(1); + 8006678: 4b9f ldr r3, [pc, #636] @ (80068f8 ) + 800667a: 2280 movs r2, #128 @ 0x80 + 800667c: 611a str r2, [r3, #16] + LCD_CS(1); + 800667e: 4b9e ldr r3, [pc, #632] @ (80068f8 ) + 8006680: f44f 7200 mov.w r2, #512 @ 0x200 + 8006684: 611a str r2, [r3, #16] +} + 8006686: bf00 nop + //delay_us(100); + lcd_wr_regno(0xE0); /* Start PLL command */ + lcd_wr_xdata(0x01); /* enable PLL */ + 8006688: 2001 movs r0, #1 + 800668a: f7fa f94f bl 800092c + HAL_Delay(10); + 800668e: 200a movs r0, #10 + 8006690: f000 ff12 bl 80074b8 + 8006694: 23e0 movs r3, #224 @ 0xe0 + 8006696: f8a7 314e strh.w r3, [r7, #334] @ 0x14e + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800669a: 4b97 ldr r3, [pc, #604] @ (80068f8 ) + 800669c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80066a0: 611a str r2, [r3, #16] + LCD_CS(0); + 80066a2: 4b95 ldr r3, [pc, #596] @ (80068f8 ) + 80066a4: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80066a8: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80066aa: f8b7 314e ldrh.w r3, [r7, #334] @ 0x14e + 80066ae: b29a uxth r2, r3 + 80066b0: 4b92 ldr r3, [pc, #584] @ (80068fc ) + 80066b2: 60da str r2, [r3, #12] + LCD_WR(0); + 80066b4: 4b90 ldr r3, [pc, #576] @ (80068f8 ) + 80066b6: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80066ba: 611a str r2, [r3, #16] + LCD_WR(1); + 80066bc: 4b8e ldr r3, [pc, #568] @ (80068f8 ) + 80066be: 2280 movs r2, #128 @ 0x80 + 80066c0: 611a str r2, [r3, #16] + LCD_CS(1); + 80066c2: 4b8d ldr r3, [pc, #564] @ (80068f8 ) + 80066c4: f44f 7200 mov.w r2, #512 @ 0x200 + 80066c8: 611a str r2, [r3, #16] +} + 80066ca: bf00 nop + lcd_wr_regno(0xE0); /* Start PLL command again */ + lcd_wr_xdata(0x03); /* now, use PLL output as system clock */ + 80066cc: 2003 movs r0, #3 + 80066ce: f7fa f92d bl 800092c + HAL_Delay(12); + 80066d2: 200c movs r0, #12 + 80066d4: f000 fef0 bl 80074b8 + 80066d8: 2301 movs r3, #1 + 80066da: f8a7 314c strh.w r3, [r7, #332] @ 0x14c + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80066de: 4b86 ldr r3, [pc, #536] @ (80068f8 ) + 80066e0: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80066e4: 611a str r2, [r3, #16] + LCD_CS(0); + 80066e6: 4b84 ldr r3, [pc, #528] @ (80068f8 ) + 80066e8: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80066ec: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80066ee: f8b7 314c ldrh.w r3, [r7, #332] @ 0x14c + 80066f2: b29a uxth r2, r3 + 80066f4: 4b81 ldr r3, [pc, #516] @ (80068fc ) + 80066f6: 60da str r2, [r3, #12] + LCD_WR(0); + 80066f8: 4b7f ldr r3, [pc, #508] @ (80068f8 ) + 80066fa: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80066fe: 611a str r2, [r3, #16] + LCD_WR(1); + 8006700: 4b7d ldr r3, [pc, #500] @ (80068f8 ) + 8006702: 2280 movs r2, #128 @ 0x80 + 8006704: 611a str r2, [r3, #16] + LCD_CS(1); + 8006706: 4b7c ldr r3, [pc, #496] @ (80068f8 ) + 8006708: f44f 7200 mov.w r2, #512 @ 0x200 + 800670c: 611a str r2, [r3, #16] +} + 800670e: bf00 nop + lcd_wr_regno(0x01); /* ��λ */ + HAL_Delay(10); + 8006710: 200a movs r0, #10 + 8006712: f000 fed1 bl 80074b8 + 8006716: 23e6 movs r3, #230 @ 0xe6 + 8006718: f8a7 314a strh.w r3, [r7, #330] @ 0x14a + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800671c: 4b76 ldr r3, [pc, #472] @ (80068f8 ) + 800671e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006722: 611a str r2, [r3, #16] + LCD_CS(0); + 8006724: 4b74 ldr r3, [pc, #464] @ (80068f8 ) + 8006726: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800672a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800672c: f8b7 314a ldrh.w r3, [r7, #330] @ 0x14a + 8006730: b29a uxth r2, r3 + 8006732: 4b72 ldr r3, [pc, #456] @ (80068fc ) + 8006734: 60da str r2, [r3, #12] + LCD_WR(0); + 8006736: 4b70 ldr r3, [pc, #448] @ (80068f8 ) + 8006738: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800673c: 611a str r2, [r3, #16] + LCD_WR(1); + 800673e: 4b6e ldr r3, [pc, #440] @ (80068f8 ) + 8006740: 2280 movs r2, #128 @ 0x80 + 8006742: 611a str r2, [r3, #16] + LCD_CS(1); + 8006744: 4b6c ldr r3, [pc, #432] @ (80068f8 ) + 8006746: f44f 7200 mov.w r2, #512 @ 0x200 + 800674a: 611a str r2, [r3, #16] +} + 800674c: bf00 nop + + lcd_wr_regno(0xE6); /* ��������Ƶ��,33Mhz */ + lcd_wr_xdata(0x2F); + 800674e: 202f movs r0, #47 @ 0x2f + 8006750: f7fa f8ec bl 800092c + lcd_wr_xdata(0xFF); + 8006754: 20ff movs r0, #255 @ 0xff + 8006756: f7fa f8e9 bl 800092c + lcd_wr_xdata(0xFF); + 800675a: 20ff movs r0, #255 @ 0xff + 800675c: f7fa f8e6 bl 800092c + 8006760: 23b0 movs r3, #176 @ 0xb0 + 8006762: f8a7 3148 strh.w r3, [r7, #328] @ 0x148 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006766: 4b64 ldr r3, [pc, #400] @ (80068f8 ) + 8006768: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800676c: 611a str r2, [r3, #16] + LCD_CS(0); + 800676e: 4b62 ldr r3, [pc, #392] @ (80068f8 ) + 8006770: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006774: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006776: f8b7 3148 ldrh.w r3, [r7, #328] @ 0x148 + 800677a: b29a uxth r2, r3 + 800677c: 4b5f ldr r3, [pc, #380] @ (80068fc ) + 800677e: 60da str r2, [r3, #12] + LCD_WR(0); + 8006780: 4b5d ldr r3, [pc, #372] @ (80068f8 ) + 8006782: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006786: 611a str r2, [r3, #16] + LCD_WR(1); + 8006788: 4b5b ldr r3, [pc, #364] @ (80068f8 ) + 800678a: 2280 movs r2, #128 @ 0x80 + 800678c: 611a str r2, [r3, #16] + LCD_CS(1); + 800678e: 4b5a ldr r3, [pc, #360] @ (80068f8 ) + 8006790: f44f 7200 mov.w r2, #512 @ 0x200 + 8006794: 611a str r2, [r3, #16] +} + 8006796: bf00 nop + + lcd_wr_regno(0xB0); /* ����LCDģʽ */ + lcd_wr_xdata(0x20); /* 24λģʽ */ + 8006798: 2020 movs r0, #32 + 800679a: f7fa f8c7 bl 800092c + lcd_wr_xdata(0x00); /* TFT ģʽ */ + 800679e: 2000 movs r0, #0 + 80067a0: f7fa f8c4 bl 800092c + + lcd_wr_xdata((SSD_HOR_RESOLUTION - 1) >> 8); /* ����LCDˮƽ���� */ + 80067a4: 2003 movs r0, #3 + 80067a6: f7fa f8c1 bl 800092c + lcd_wr_xdata(SSD_HOR_RESOLUTION - 1); + 80067aa: f240 301f movw r0, #799 @ 0x31f + 80067ae: f7fa f8bd bl 800092c + lcd_wr_xdata((SSD_VER_RESOLUTION - 1) >> 8); /* ����LCD��ֱ���� */ + 80067b2: 2001 movs r0, #1 + 80067b4: f7fa f8ba bl 800092c + lcd_wr_xdata(SSD_VER_RESOLUTION - 1); + 80067b8: f240 10df movw r0, #479 @ 0x1df + 80067bc: f7fa f8b6 bl 800092c + lcd_wr_xdata(0x00); /* RGB���� */ + 80067c0: 2000 movs r0, #0 + 80067c2: f7fa f8b3 bl 800092c + 80067c6: 23b4 movs r3, #180 @ 0xb4 + 80067c8: f8a7 3146 strh.w r3, [r7, #326] @ 0x146 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80067cc: 4b4a ldr r3, [pc, #296] @ (80068f8 ) + 80067ce: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80067d2: 611a str r2, [r3, #16] + LCD_CS(0); + 80067d4: 4b48 ldr r3, [pc, #288] @ (80068f8 ) + 80067d6: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80067da: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80067dc: f8b7 3146 ldrh.w r3, [r7, #326] @ 0x146 + 80067e0: b29a uxth r2, r3 + 80067e2: 4b46 ldr r3, [pc, #280] @ (80068fc ) + 80067e4: 60da str r2, [r3, #12] + LCD_WR(0); + 80067e6: 4b44 ldr r3, [pc, #272] @ (80068f8 ) + 80067e8: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80067ec: 611a str r2, [r3, #16] + LCD_WR(1); + 80067ee: 4b42 ldr r3, [pc, #264] @ (80068f8 ) + 80067f0: 2280 movs r2, #128 @ 0x80 + 80067f2: 611a str r2, [r3, #16] + LCD_CS(1); + 80067f4: 4b40 ldr r3, [pc, #256] @ (80068f8 ) + 80067f6: f44f 7200 mov.w r2, #512 @ 0x200 + 80067fa: 611a str r2, [r3, #16] +} + 80067fc: bf00 nop + + lcd_wr_regno(0xB4); /* Set horizontal period */ + lcd_wr_xdata((SSD_HT - 1) >> 8); + 80067fe: 2004 movs r0, #4 + 8006800: f7fa f894 bl 800092c + lcd_wr_xdata(SSD_HT - 1); + 8006804: f240 401f movw r0, #1055 @ 0x41f + 8006808: f7fa f890 bl 800092c + lcd_wr_xdata(SSD_HPS >> 8); + 800680c: 2000 movs r0, #0 + 800680e: f7fa f88d bl 800092c + lcd_wr_xdata(SSD_HPS); + 8006812: 202e movs r0, #46 @ 0x2e + 8006814: f7fa f88a bl 800092c + lcd_wr_xdata(SSD_HOR_PULSE_WIDTH - 1); + 8006818: 2000 movs r0, #0 + 800681a: f7fa f887 bl 800092c + lcd_wr_xdata(0x00); + 800681e: 2000 movs r0, #0 + 8006820: f7fa f884 bl 800092c + lcd_wr_xdata(0x00); + 8006824: 2000 movs r0, #0 + 8006826: f7fa f881 bl 800092c + lcd_wr_xdata(0x00); + 800682a: 2000 movs r0, #0 + 800682c: f7fa f87e bl 800092c + 8006830: 23b6 movs r3, #182 @ 0xb6 + 8006832: f8a7 3144 strh.w r3, [r7, #324] @ 0x144 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006836: 4b30 ldr r3, [pc, #192] @ (80068f8 ) + 8006838: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 800683c: 611a str r2, [r3, #16] + LCD_CS(0); + 800683e: 4b2e ldr r3, [pc, #184] @ (80068f8 ) + 8006840: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006844: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006846: f8b7 3144 ldrh.w r3, [r7, #324] @ 0x144 + 800684a: b29a uxth r2, r3 + 800684c: 4b2b ldr r3, [pc, #172] @ (80068fc ) + 800684e: 60da str r2, [r3, #12] + LCD_WR(0); + 8006850: 4b29 ldr r3, [pc, #164] @ (80068f8 ) + 8006852: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006856: 611a str r2, [r3, #16] + LCD_WR(1); + 8006858: 4b27 ldr r3, [pc, #156] @ (80068f8 ) + 800685a: 2280 movs r2, #128 @ 0x80 + 800685c: 611a str r2, [r3, #16] + LCD_CS(1); + 800685e: 4b26 ldr r3, [pc, #152] @ (80068f8 ) + 8006860: f44f 7200 mov.w r2, #512 @ 0x200 + 8006864: 611a str r2, [r3, #16] +} + 8006866: bf00 nop + lcd_wr_regno(0xB6); /* Set vertical perio */ + lcd_wr_xdata((SSD_VT - 1) >> 8); + 8006868: 2002 movs r0, #2 + 800686a: f7fa f85f bl 800092c + lcd_wr_xdata(SSD_VT - 1); + 800686e: f44f 7003 mov.w r0, #524 @ 0x20c + 8006872: f7fa f85b bl 800092c + lcd_wr_xdata(SSD_VPS >> 8); + 8006876: 2000 movs r0, #0 + 8006878: f7fa f858 bl 800092c + lcd_wr_xdata(SSD_VPS); + 800687c: 2017 movs r0, #23 + 800687e: f7fa f855 bl 800092c + lcd_wr_xdata(SSD_VER_FRONT_PORCH - 1); + 8006882: 2015 movs r0, #21 + 8006884: f7fa f852 bl 800092c + lcd_wr_xdata(0x00); + 8006888: 2000 movs r0, #0 + 800688a: f7fa f84f bl 800092c + lcd_wr_xdata(0x00); + 800688e: 2000 movs r0, #0 + 8006890: f7fa f84c bl 800092c + 8006894: 23f0 movs r3, #240 @ 0xf0 + 8006896: f8a7 3142 strh.w r3, [r7, #322] @ 0x142 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800689a: 4b17 ldr r3, [pc, #92] @ (80068f8 ) + 800689c: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80068a0: 611a str r2, [r3, #16] + LCD_CS(0); + 80068a2: 4b15 ldr r3, [pc, #84] @ (80068f8 ) + 80068a4: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80068a8: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80068aa: f8b7 3142 ldrh.w r3, [r7, #322] @ 0x142 + 80068ae: b29a uxth r2, r3 + 80068b0: 4b12 ldr r3, [pc, #72] @ (80068fc ) + 80068b2: 60da str r2, [r3, #12] + LCD_WR(0); + 80068b4: 4b10 ldr r3, [pc, #64] @ (80068f8 ) + 80068b6: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80068ba: 611a str r2, [r3, #16] + LCD_WR(1); + 80068bc: 4b0e ldr r3, [pc, #56] @ (80068f8 ) + 80068be: 2280 movs r2, #128 @ 0x80 + 80068c0: 611a str r2, [r3, #16] + LCD_CS(1); + 80068c2: 4b0d ldr r3, [pc, #52] @ (80068f8 ) + 80068c4: f44f 7200 mov.w r2, #512 @ 0x200 + 80068c8: 611a str r2, [r3, #16] +} + 80068ca: bf00 nop + + lcd_wr_regno(0xF0); /* ����SSD1963��CPU�ӿ�Ϊ16bit */ + lcd_wr_xdata(0x03); /* 16-bit(565 format) data for 16bpp */ + 80068cc: 2003 movs r0, #3 + 80068ce: f7fa f82d bl 800092c + 80068d2: 2329 movs r3, #41 @ 0x29 + 80068d4: f8a7 3140 strh.w r3, [r7, #320] @ 0x140 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80068d8: 4b07 ldr r3, [pc, #28] @ (80068f8 ) + 80068da: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80068de: 611a str r2, [r3, #16] + LCD_CS(0); + 80068e0: 4b05 ldr r3, [pc, #20] @ (80068f8 ) + 80068e2: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80068e6: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80068e8: f8b7 3140 ldrh.w r3, [r7, #320] @ 0x140 + 80068ec: b29a uxth r2, r3 + 80068ee: 4b03 ldr r3, [pc, #12] @ (80068fc ) + 80068f0: 60da str r2, [r3, #12] + 80068f2: e005 b.n 8006900 + 80068f4: 2000002c .word 0x2000002c + 80068f8: 40011000 .word 0x40011000 + 80068fc: 40010c00 .word 0x40010c00 + LCD_WR(0); + 8006900: 4b56 ldr r3, [pc, #344] @ (8006a5c ) + 8006902: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006906: 611a str r2, [r3, #16] + LCD_WR(1); + 8006908: 4b54 ldr r3, [pc, #336] @ (8006a5c ) + 800690a: 2280 movs r2, #128 @ 0x80 + 800690c: 611a str r2, [r3, #16] + LCD_CS(1); + 800690e: 4b53 ldr r3, [pc, #332] @ (8006a5c ) + 8006910: f44f 7200 mov.w r2, #512 @ 0x200 + 8006914: 611a str r2, [r3, #16] +} + 8006916: bf00 nop + 8006918: 23d0 movs r3, #208 @ 0xd0 + 800691a: f8a7 313e strh.w r3, [r7, #318] @ 0x13e + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800691e: 4b4f ldr r3, [pc, #316] @ (8006a5c ) + 8006920: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006924: 611a str r2, [r3, #16] + LCD_CS(0); + 8006926: 4b4d ldr r3, [pc, #308] @ (8006a5c ) + 8006928: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800692c: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800692e: f8b7 313e ldrh.w r3, [r7, #318] @ 0x13e + 8006932: b29a uxth r2, r3 + 8006934: 4b4a ldr r3, [pc, #296] @ (8006a60 ) + 8006936: 60da str r2, [r3, #12] + LCD_WR(0); + 8006938: 4b48 ldr r3, [pc, #288] @ (8006a5c ) + 800693a: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800693e: 611a str r2, [r3, #16] + LCD_WR(1); + 8006940: 4b46 ldr r3, [pc, #280] @ (8006a5c ) + 8006942: 2280 movs r2, #128 @ 0x80 + 8006944: 611a str r2, [r3, #16] + LCD_CS(1); + 8006946: 4b45 ldr r3, [pc, #276] @ (8006a5c ) + 8006948: f44f 7200 mov.w r2, #512 @ 0x200 + 800694c: 611a str r2, [r3, #16] +} + 800694e: bf00 nop + + lcd_wr_regno(0x29); /* ������ʾ */ + /* ����PWM��� ����ͨ��ռ�ձȿɵ� */ + lcd_wr_regno(0xD0); /* �����Զ���ƽ��DBC */ + lcd_wr_xdata(0x00); /* disable */ + 8006950: 2000 movs r0, #0 + 8006952: f7f9 ffeb bl 800092c + 8006956: 23be movs r3, #190 @ 0xbe + 8006958: f8a7 313c strh.w r3, [r7, #316] @ 0x13c + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 800695c: 4b3f ldr r3, [pc, #252] @ (8006a5c ) + 800695e: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006962: 611a str r2, [r3, #16] + LCD_CS(0); + 8006964: 4b3d ldr r3, [pc, #244] @ (8006a5c ) + 8006966: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 800696a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 800696c: f8b7 313c ldrh.w r3, [r7, #316] @ 0x13c + 8006970: b29a uxth r2, r3 + 8006972: 4b3b ldr r3, [pc, #236] @ (8006a60 ) + 8006974: 60da str r2, [r3, #12] + LCD_WR(0); + 8006976: 4b39 ldr r3, [pc, #228] @ (8006a5c ) + 8006978: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 800697c: 611a str r2, [r3, #16] + LCD_WR(1); + 800697e: 4b37 ldr r3, [pc, #220] @ (8006a5c ) + 8006980: 2280 movs r2, #128 @ 0x80 + 8006982: 611a str r2, [r3, #16] + LCD_CS(1); + 8006984: 4b35 ldr r3, [pc, #212] @ (8006a5c ) + 8006986: f44f 7200 mov.w r2, #512 @ 0x200 + 800698a: 611a str r2, [r3, #16] +} + 800698c: bf00 nop + + lcd_wr_regno(0xBE); /* ����PWM��� */ + lcd_wr_xdata(0x05); /* 1����PWMƵ�� */ + 800698e: 2005 movs r0, #5 + 8006990: f7f9 ffcc bl 800092c + lcd_wr_xdata(0xFE); /* 2����PWMռ�ձ� */ + 8006994: 20fe movs r0, #254 @ 0xfe + 8006996: f7f9 ffc9 bl 800092c + lcd_wr_xdata(0x01); /* 3����C */ + 800699a: 2001 movs r0, #1 + 800699c: f7f9 ffc6 bl 800092c + lcd_wr_xdata(0x00); /* 4����D */ + 80069a0: 2000 movs r0, #0 + 80069a2: f7f9 ffc3 bl 800092c + lcd_wr_xdata(0x00); /* 5����E */ + 80069a6: 2000 movs r0, #0 + 80069a8: f7f9 ffc0 bl 800092c + lcd_wr_xdata(0x00); /* 6����F */ + 80069ac: 2000 movs r0, #0 + 80069ae: f7f9 ffbd bl 800092c + 80069b2: 23b8 movs r3, #184 @ 0xb8 + 80069b4: f8a7 313a strh.w r3, [r7, #314] @ 0x13a + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80069b8: 4b28 ldr r3, [pc, #160] @ (8006a5c ) + 80069ba: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 80069be: 611a str r2, [r3, #16] + LCD_CS(0); + 80069c0: 4b26 ldr r3, [pc, #152] @ (8006a5c ) + 80069c2: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 80069c6: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 80069c8: f8b7 313a ldrh.w r3, [r7, #314] @ 0x13a + 80069cc: b29a uxth r2, r3 + 80069ce: 4b24 ldr r3, [pc, #144] @ (8006a60 ) + 80069d0: 60da str r2, [r3, #12] + LCD_WR(0); + 80069d2: 4b22 ldr r3, [pc, #136] @ (8006a5c ) + 80069d4: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 80069d8: 611a str r2, [r3, #16] + LCD_WR(1); + 80069da: 4b20 ldr r3, [pc, #128] @ (8006a5c ) + 80069dc: 2280 movs r2, #128 @ 0x80 + 80069de: 611a str r2, [r3, #16] + LCD_CS(1); + 80069e0: 4b1e ldr r3, [pc, #120] @ (8006a5c ) + 80069e2: f44f 7200 mov.w r2, #512 @ 0x200 + 80069e6: 611a str r2, [r3, #16] +} + 80069e8: bf00 nop + + lcd_wr_regno(0xB8); /* ����GPIO���� */ + lcd_wr_xdata(0x03); /* 2��IO�����ó���� */ + 80069ea: 2003 movs r0, #3 + 80069ec: f7f9 ff9e bl 800092c + lcd_wr_xdata(0x01); /* GPIOʹ��������IO���� */ + 80069f0: 2001 movs r0, #1 + 80069f2: f7f9 ff9b bl 800092c + 80069f6: 23ba movs r3, #186 @ 0xba + 80069f8: f8a7 3138 strh.w r3, [r7, #312] @ 0x138 + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 80069fc: 4b17 ldr r3, [pc, #92] @ (8006a5c ) + 80069fe: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006a02: 611a str r2, [r3, #16] + LCD_CS(0); + 8006a04: 4b15 ldr r3, [pc, #84] @ (8006a5c ) + 8006a06: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006a0a: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006a0c: f8b7 3138 ldrh.w r3, [r7, #312] @ 0x138 + 8006a10: b29a uxth r2, r3 + 8006a12: 4b13 ldr r3, [pc, #76] @ (8006a60 ) + 8006a14: 60da str r2, [r3, #12] + LCD_WR(0); + 8006a16: 4b11 ldr r3, [pc, #68] @ (8006a5c ) + 8006a18: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006a1c: 611a str r2, [r3, #16] + LCD_WR(1); + 8006a1e: 4b0f ldr r3, [pc, #60] @ (8006a5c ) + 8006a20: 2280 movs r2, #128 @ 0x80 + 8006a22: 611a str r2, [r3, #16] + LCD_CS(1); + 8006a24: 4b0d ldr r3, [pc, #52] @ (8006a5c ) + 8006a26: f44f 7200 mov.w r2, #512 @ 0x200 + 8006a2a: 611a str r2, [r3, #16] +} + 8006a2c: bf00 nop + lcd_wr_regno(0xBA); + lcd_wr_xdata(0X01); /* GPIO[1:0]=01,����LCD���� */ + 8006a2e: 2001 movs r0, #1 + 8006a30: f7f9 ff7c bl 800092c + lcd_ssd_backlight_set(100); /* ��������Ϊ���� */ + 8006a34: 2064 movs r0, #100 @ 0x64 + 8006a36: f7fa ff1f bl 8001878 + } + + lcd_display_dir(0); /* Ĭ��Ϊ���� */ + 8006a3a: 2000 movs r0, #0 + 8006a3c: f7fa ffdc bl 80019f8 + LCD_BL(1); /* �������� */ + 8006a40: 4b06 ldr r3, [pc, #24] @ (8006a5c ) + 8006a42: f44f 6280 mov.w r2, #1024 @ 0x400 + 8006a46: 611a str r2, [r3, #16] + lcd_clear(WHITE); + 8006a48: f64f 70ff movw r0, #65535 @ 0xffff + 8006a4c: f000 f80a bl 8006a64 +} + 8006a50: bf00 nop + 8006a52: f507 77b4 add.w r7, r7, #360 @ 0x168 + 8006a56: 46bd mov sp, r7 + 8006a58: bd80 pop {r7, pc} + 8006a5a: bf00 nop + 8006a5c: 40011000 .word 0x40011000 + 8006a60: 40010c00 .word 0x40010c00 + +08006a64 : + * @brief �������� + * @param color: Ҫ��������ɫ + * @retval �� + */ +void lcd_clear(uint16_t color) +{ + 8006a64: b580 push {r7, lr} + 8006a66: b086 sub sp, #24 + 8006a68: af00 add r7, sp, #0 + 8006a6a: 4603 mov r3, r0 + 8006a6c: 80fb strh r3, [r7, #6] + uint32_t index = 0; + 8006a6e: 2300 movs r3, #0 + 8006a70: 617b str r3, [r7, #20] + uint32_t totalpoint = lcddev.width; + 8006a72: 4b27 ldr r3, [pc, #156] @ (8006b10 ) + 8006a74: 881b ldrh r3, [r3, #0] + 8006a76: 613b str r3, [r7, #16] + totalpoint *= lcddev.height; /* �õ��ܵ��� */ + 8006a78: 4b25 ldr r3, [pc, #148] @ (8006b10 ) + 8006a7a: 885b ldrh r3, [r3, #2] + 8006a7c: 461a mov r2, r3 + 8006a7e: 693b ldr r3, [r7, #16] + 8006a80: fb02 f303 mul.w r3, r2, r3 + 8006a84: 613b str r3, [r7, #16] + lcd_set_cursor(0x00, 0x0000); /* ���ù��λ�� */ + 8006a86: 2100 movs r1, #0 + 8006a88: 2000 movs r0, #0 + 8006a8a: f7fa f809 bl 8000aa0 + lcd_wr_regno(lcddev.wramcmd); + 8006a8e: 4b20 ldr r3, [pc, #128] @ (8006b10 ) + 8006a90: 891b ldrh r3, [r3, #8] + 8006a92: 81fb strh r3, [r7, #14] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006a94: 4b1f ldr r3, [pc, #124] @ (8006b14 ) + 8006a96: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006a9a: 611a str r2, [r3, #16] + LCD_CS(0); + 8006a9c: 4b1d ldr r3, [pc, #116] @ (8006b14 ) + 8006a9e: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006aa2: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006aa4: 89fb ldrh r3, [r7, #14] + 8006aa6: b29a uxth r2, r3 + 8006aa8: 4b1b ldr r3, [pc, #108] @ (8006b18 ) + 8006aaa: 60da str r2, [r3, #12] + LCD_WR(0); + 8006aac: 4b19 ldr r3, [pc, #100] @ (8006b14 ) + 8006aae: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006ab2: 611a str r2, [r3, #16] + LCD_WR(1); + 8006ab4: 4b17 ldr r3, [pc, #92] @ (8006b14 ) + 8006ab6: 2280 movs r2, #128 @ 0x80 + 8006ab8: 611a str r2, [r3, #16] + LCD_CS(1); + 8006aba: 4b16 ldr r3, [pc, #88] @ (8006b14 ) + 8006abc: f44f 7200 mov.w r2, #512 @ 0x200 + 8006ac0: 611a str r2, [r3, #16] +} + 8006ac2: bf00 nop +} + 8006ac4: bf00 nop + * RS, CS�IJ���, �Ӷ������ٶ�, ��51֡��ߵ�78֡����, ���50% + * ��������: -O2�Ż�, ��ˢ�� + * �����ٶ�Ҫ���ʱ��, ���Լ����Ż�: lcd_fill, lcd_color_fill, + * lcd_set_cursor �� lcd_draw_point �Ⱥ���, ��ҿ��������Ż� + */ + LCD_RS(1); /* RS=1,��ʾд���� */ + 8006ac6: 4b13 ldr r3, [pc, #76] @ (8006b14 ) + 8006ac8: f44f 7280 mov.w r2, #256 @ 0x100 + 8006acc: 611a str r2, [r3, #16] + LCD_CS(0); + 8006ace: 4b11 ldr r3, [pc, #68] @ (8006b14 ) + 8006ad0: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006ad4: 611a str r2, [r3, #16] + + for (index = 0; index < totalpoint; index++) + 8006ad6: 2300 movs r3, #0 + 8006ad8: 617b str r3, [r7, #20] + 8006ada: e00c b.n 8006af6 + { + LCD_DATA_OUT(color); /* д��Ҫд������ */ + 8006adc: 4a0e ldr r2, [pc, #56] @ (8006b18 ) + 8006ade: 88fb ldrh r3, [r7, #6] + 8006ae0: 60d3 str r3, [r2, #12] + LCD_WR(0); + 8006ae2: 4b0c ldr r3, [pc, #48] @ (8006b14 ) + 8006ae4: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006ae8: 611a str r2, [r3, #16] + LCD_WR(1); + 8006aea: 4b0a ldr r3, [pc, #40] @ (8006b14 ) + 8006aec: 2280 movs r2, #128 @ 0x80 + 8006aee: 611a str r2, [r3, #16] + for (index = 0; index < totalpoint; index++) + 8006af0: 697b ldr r3, [r7, #20] + 8006af2: 3301 adds r3, #1 + 8006af4: 617b str r3, [r7, #20] + 8006af6: 697a ldr r2, [r7, #20] + 8006af8: 693b ldr r3, [r7, #16] + 8006afa: 429a cmp r2, r3 + 8006afc: d3ee bcc.n 8006adc + } + + LCD_CS(1); + 8006afe: 4b05 ldr r3, [pc, #20] @ (8006b14 ) + 8006b00: f44f 7200 mov.w r2, #512 @ 0x200 + 8006b04: 611a str r2, [r3, #16] +} + 8006b06: bf00 nop + 8006b08: 3718 adds r7, #24 + 8006b0a: 46bd mov sp, r7 + 8006b0c: bd80 pop {r7, pc} + 8006b0e: bf00 nop + 8006b10: 2000002c .word 0x2000002c + 8006b14: 40011000 .word 0x40011000 + 8006b18: 40010c00 .word 0x40010c00 + +08006b1c : + * @param (sx,sy),(ex,ey):�����ζԽ�����,�����СΪ:(ex - sx + 1) * (ey - sy + 1) + * @param color: Ҫ������ɫ(32λ��ɫ,�������LTDC) + * @retval �� + */ +void lcd_fill(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint32_t color) +{ + 8006b1c: b590 push {r4, r7, lr} + 8006b1e: b085 sub sp, #20 + 8006b20: af00 add r7, sp, #0 + 8006b22: 4604 mov r4, r0 + 8006b24: 4608 mov r0, r1 + 8006b26: 4611 mov r1, r2 + 8006b28: 461a mov r2, r3 + 8006b2a: 4623 mov r3, r4 + 8006b2c: 80fb strh r3, [r7, #6] + 8006b2e: 4603 mov r3, r0 + 8006b30: 80bb strh r3, [r7, #4] + 8006b32: 460b mov r3, r1 + 8006b34: 807b strh r3, [r7, #2] + 8006b36: 4613 mov r3, r2 + 8006b38: 803b strh r3, [r7, #0] + uint16_t i, j; + uint16_t xlen = 0; + 8006b3a: 2300 movs r3, #0 + 8006b3c: 817b strh r3, [r7, #10] + xlen = ex - sx + 1; + 8006b3e: 887a ldrh r2, [r7, #2] + 8006b40: 88fb ldrh r3, [r7, #6] + 8006b42: 1ad3 subs r3, r2, r3 + 8006b44: b29b uxth r3, r3 + 8006b46: 3301 adds r3, #1 + 8006b48: 817b strh r3, [r7, #10] + + for (i = sy; i <= ey; i++) + 8006b4a: 88bb ldrh r3, [r7, #4] + 8006b4c: 81fb strh r3, [r7, #14] + 8006b4e: e044 b.n 8006bda + { + lcd_set_cursor(sx, i); /* ���ù��λ�� */ + 8006b50: 89fa ldrh r2, [r7, #14] + 8006b52: 88fb ldrh r3, [r7, #6] + 8006b54: 4611 mov r1, r2 + 8006b56: 4618 mov r0, r3 + 8006b58: f7f9 ffa2 bl 8000aa0 + lcd_wr_regno(lcddev.wramcmd); + 8006b5c: 4b23 ldr r3, [pc, #140] @ (8006bec ) + 8006b5e: 891b ldrh r3, [r3, #8] + 8006b60: 813b strh r3, [r7, #8] + LCD_RS(0); /* RS=0,��ʾд�Ĵ��� */ + 8006b62: 4b23 ldr r3, [pc, #140] @ (8006bf0 ) + 8006b64: f04f 7280 mov.w r2, #16777216 @ 0x1000000 + 8006b68: 611a str r2, [r3, #16] + LCD_CS(0); + 8006b6a: 4b21 ldr r3, [pc, #132] @ (8006bf0 ) + 8006b6c: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006b70: 611a str r2, [r3, #16] + LCD_DATA_OUT(regno); /* д��Ҫд�ļĴ������ */ + 8006b72: 893b ldrh r3, [r7, #8] + 8006b74: b29a uxth r2, r3 + 8006b76: 4b1f ldr r3, [pc, #124] @ (8006bf4 ) + 8006b78: 60da str r2, [r3, #12] + LCD_WR(0); + 8006b7a: 4b1d ldr r3, [pc, #116] @ (8006bf0 ) + 8006b7c: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006b80: 611a str r2, [r3, #16] + LCD_WR(1); + 8006b82: 4b1b ldr r3, [pc, #108] @ (8006bf0 ) + 8006b84: 2280 movs r2, #128 @ 0x80 + 8006b86: 611a str r2, [r3, #16] + LCD_CS(1); + 8006b88: 4b19 ldr r3, [pc, #100] @ (8006bf0 ) + 8006b8a: f44f 7200 mov.w r2, #512 @ 0x200 + 8006b8e: 611a str r2, [r3, #16] +} + 8006b90: bf00 nop +} + 8006b92: bf00 nop + lcd_write_ram_prepare(); /* ��ʼд��GRAM */ + + for (j = 0; j < xlen; j++) + 8006b94: 2300 movs r3, #0 + 8006b96: 81bb strh r3, [r7, #12] + 8006b98: e018 b.n 8006bcc + { + lcd_wr_data(color); /* д������ */ + 8006b9a: 4b15 ldr r3, [pc, #84] @ (8006bf0 ) + 8006b9c: f44f 7280 mov.w r2, #256 @ 0x100 + 8006ba0: 611a str r2, [r3, #16] + 8006ba2: 4b13 ldr r3, [pc, #76] @ (8006bf0 ) + 8006ba4: f04f 7200 mov.w r2, #33554432 @ 0x2000000 + 8006ba8: 611a str r2, [r3, #16] + 8006baa: 4a12 ldr r2, [pc, #72] @ (8006bf4 ) + 8006bac: 6a3b ldr r3, [r7, #32] + 8006bae: 60d3 str r3, [r2, #12] + 8006bb0: 4b0f ldr r3, [pc, #60] @ (8006bf0 ) + 8006bb2: f44f 0200 mov.w r2, #8388608 @ 0x800000 + 8006bb6: 611a str r2, [r3, #16] + 8006bb8: 4b0d ldr r3, [pc, #52] @ (8006bf0 ) + 8006bba: 2280 movs r2, #128 @ 0x80 + 8006bbc: 611a str r2, [r3, #16] + 8006bbe: 4b0c ldr r3, [pc, #48] @ (8006bf0 ) + 8006bc0: f44f 7200 mov.w r2, #512 @ 0x200 + 8006bc4: 611a str r2, [r3, #16] + for (j = 0; j < xlen; j++) + 8006bc6: 89bb ldrh r3, [r7, #12] + 8006bc8: 3301 adds r3, #1 + 8006bca: 81bb strh r3, [r7, #12] + 8006bcc: 89ba ldrh r2, [r7, #12] + 8006bce: 897b ldrh r3, [r7, #10] + 8006bd0: 429a cmp r2, r3 + 8006bd2: d3e2 bcc.n 8006b9a + for (i = sy; i <= ey; i++) + 8006bd4: 89fb ldrh r3, [r7, #14] + 8006bd6: 3301 adds r3, #1 + 8006bd8: 81fb strh r3, [r7, #14] + 8006bda: 89fa ldrh r2, [r7, #14] + 8006bdc: 883b ldrh r3, [r7, #0] + 8006bde: 429a cmp r2, r3 + 8006be0: d9b6 bls.n 8006b50 + } + } +} + 8006be2: bf00 nop + 8006be4: bf00 nop + 8006be6: 3714 adds r7, #20 + 8006be8: 46bd mov sp, r7 + 8006bea: bd90 pop {r4, r7, pc} + 8006bec: 2000002c .word 0x2000002c + 8006bf0: 40011000 .word 0x40011000 + 8006bf4: 40010c00 .word 0x40010c00 + +08006bf8 : + * @param x2,y2: �յ����� + * @param color: �ߵ���ɫ + * @retval �� + */ +void lcd_draw_line(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t color) +{ + 8006bf8: b590 push {r4, r7, lr} + 8006bfa: b08d sub sp, #52 @ 0x34 + 8006bfc: af00 add r7, sp, #0 + 8006bfe: 4604 mov r4, r0 + 8006c00: 4608 mov r0, r1 + 8006c02: 4611 mov r1, r2 + 8006c04: 461a mov r2, r3 + 8006c06: 4623 mov r3, r4 + 8006c08: 80fb strh r3, [r7, #6] + 8006c0a: 4603 mov r3, r0 + 8006c0c: 80bb strh r3, [r7, #4] + 8006c0e: 460b mov r3, r1 + 8006c10: 807b strh r3, [r7, #2] + 8006c12: 4613 mov r3, r2 + 8006c14: 803b strh r3, [r7, #0] + uint16_t t; + int xerr = 0, yerr = 0, delta_x, delta_y, distance; + 8006c16: 2300 movs r3, #0 + 8006c18: 62bb str r3, [r7, #40] @ 0x28 + 8006c1a: 2300 movs r3, #0 + 8006c1c: 627b str r3, [r7, #36] @ 0x24 + int incx, incy, row, col; + delta_x = x2 - x1; /* ������������ */ + 8006c1e: 887a ldrh r2, [r7, #2] + 8006c20: 88fb ldrh r3, [r7, #6] + 8006c22: 1ad3 subs r3, r2, r3 + 8006c24: 623b str r3, [r7, #32] + delta_y = y2 - y1; + 8006c26: 883a ldrh r2, [r7, #0] + 8006c28: 88bb ldrh r3, [r7, #4] + 8006c2a: 1ad3 subs r3, r2, r3 + 8006c2c: 61fb str r3, [r7, #28] + row = x1; + 8006c2e: 88fb ldrh r3, [r7, #6] + 8006c30: 60fb str r3, [r7, #12] + col = y1; + 8006c32: 88bb ldrh r3, [r7, #4] + 8006c34: 60bb str r3, [r7, #8] + + if (delta_x > 0)incx = 1; /* ���õ������� */ + 8006c36: 6a3b ldr r3, [r7, #32] + 8006c38: 2b00 cmp r3, #0 + 8006c3a: dd02 ble.n 8006c42 + 8006c3c: 2301 movs r3, #1 + 8006c3e: 617b str r3, [r7, #20] + 8006c40: e00b b.n 8006c5a + else if (delta_x == 0)incx = 0; /* ��ֱ�� */ + 8006c42: 6a3b ldr r3, [r7, #32] + 8006c44: 2b00 cmp r3, #0 + 8006c46: d102 bne.n 8006c4e + 8006c48: 2300 movs r3, #0 + 8006c4a: 617b str r3, [r7, #20] + 8006c4c: e005 b.n 8006c5a + else + { + incx = -1; + 8006c4e: f04f 33ff mov.w r3, #4294967295 @ 0xffffffff + 8006c52: 617b str r3, [r7, #20] + delta_x = -delta_x; + 8006c54: 6a3b ldr r3, [r7, #32] + 8006c56: 425b negs r3, r3 + 8006c58: 623b str r3, [r7, #32] + } + + if (delta_y > 0)incy = 1; + 8006c5a: 69fb ldr r3, [r7, #28] + 8006c5c: 2b00 cmp r3, #0 + 8006c5e: dd02 ble.n 8006c66 + 8006c60: 2301 movs r3, #1 + 8006c62: 613b str r3, [r7, #16] + 8006c64: e00b b.n 8006c7e + else if (delta_y == 0)incy = 0; /* ˮƽ�� */ + 8006c66: 69fb ldr r3, [r7, #28] + 8006c68: 2b00 cmp r3, #0 + 8006c6a: d102 bne.n 8006c72 + 8006c6c: 2300 movs r3, #0 + 8006c6e: 613b str r3, [r7, #16] + 8006c70: e005 b.n 8006c7e + else + { + incy = -1; + 8006c72: f04f 33ff mov.w r3, #4294967295 @ 0xffffffff + 8006c76: 613b str r3, [r7, #16] + delta_y = -delta_y; + 8006c78: 69fb ldr r3, [r7, #28] + 8006c7a: 425b negs r3, r3 + 8006c7c: 61fb str r3, [r7, #28] + } + + if ( delta_x > delta_y)distance = delta_x; /* ѡȡ�������������� */ + 8006c7e: 6a3a ldr r2, [r7, #32] + 8006c80: 69fb ldr r3, [r7, #28] + 8006c82: 429a cmp r2, r3 + 8006c84: dd02 ble.n 8006c8c + 8006c86: 6a3b ldr r3, [r7, #32] + 8006c88: 61bb str r3, [r7, #24] + 8006c8a: e001 b.n 8006c90 + else distance = delta_y; + 8006c8c: 69fb ldr r3, [r7, #28] + 8006c8e: 61bb str r3, [r7, #24] + + for (t = 0; t <= distance + 1; t++ ) /* ������� */ + 8006c90: 2300 movs r3, #0 + 8006c92: 85fb strh r3, [r7, #46] @ 0x2e + 8006c94: e02b b.n 8006cee + { + lcd_draw_point(row, col, color); /* ���� */ + 8006c96: 68fb ldr r3, [r7, #12] + 8006c98: b29b uxth r3, r3 + 8006c9a: 68ba ldr r2, [r7, #8] + 8006c9c: b291 uxth r1, r2 + 8006c9e: f8b7 2040 ldrh.w r2, [r7, #64] @ 0x40 + 8006ca2: 4618 mov r0, r3 + 8006ca4: f7fa fd9c bl 80017e0 + xerr += delta_x ; + 8006ca8: 6aba ldr r2, [r7, #40] @ 0x28 + 8006caa: 6a3b ldr r3, [r7, #32] + 8006cac: 4413 add r3, r2 + 8006cae: 62bb str r3, [r7, #40] @ 0x28 + yerr += delta_y ; + 8006cb0: 6a7a ldr r2, [r7, #36] @ 0x24 + 8006cb2: 69fb ldr r3, [r7, #28] + 8006cb4: 4413 add r3, r2 + 8006cb6: 627b str r3, [r7, #36] @ 0x24 + + if (xerr > distance) + 8006cb8: 6aba ldr r2, [r7, #40] @ 0x28 + 8006cba: 69bb ldr r3, [r7, #24] + 8006cbc: 429a cmp r2, r3 + 8006cbe: dd07 ble.n 8006cd0 + { + xerr -= distance; + 8006cc0: 6aba ldr r2, [r7, #40] @ 0x28 + 8006cc2: 69bb ldr r3, [r7, #24] + 8006cc4: 1ad3 subs r3, r2, r3 + 8006cc6: 62bb str r3, [r7, #40] @ 0x28 + row += incx; + 8006cc8: 68fa ldr r2, [r7, #12] + 8006cca: 697b ldr r3, [r7, #20] + 8006ccc: 4413 add r3, r2 + 8006cce: 60fb str r3, [r7, #12] + } + + if (yerr > distance) + 8006cd0: 6a7a ldr r2, [r7, #36] @ 0x24 + 8006cd2: 69bb ldr r3, [r7, #24] + 8006cd4: 429a cmp r2, r3 + 8006cd6: dd07 ble.n 8006ce8 + { + yerr -= distance; + 8006cd8: 6a7a ldr r2, [r7, #36] @ 0x24 + 8006cda: 69bb ldr r3, [r7, #24] + 8006cdc: 1ad3 subs r3, r2, r3 + 8006cde: 627b str r3, [r7, #36] @ 0x24 + col += incy; + 8006ce0: 68ba ldr r2, [r7, #8] + 8006ce2: 693b ldr r3, [r7, #16] + 8006ce4: 4413 add r3, r2 + 8006ce6: 60bb str r3, [r7, #8] + for (t = 0; t <= distance + 1; t++ ) /* ������� */ + 8006ce8: 8dfb ldrh r3, [r7, #46] @ 0x2e + 8006cea: 3301 adds r3, #1 + 8006cec: 85fb strh r3, [r7, #46] @ 0x2e + 8006cee: 8dfa ldrh r2, [r7, #46] @ 0x2e + 8006cf0: 69bb ldr r3, [r7, #24] + 8006cf2: 3301 adds r3, #1 + 8006cf4: 429a cmp r2, r3 + 8006cf6: ddce ble.n 8006c96 + } + } +} + 8006cf8: bf00 nop + 8006cfa: bf00 nop + 8006cfc: 3734 adds r7, #52 @ 0x34 + 8006cfe: 46bd mov sp, r7 + 8006d00: bd90 pop {r4, r7, pc} + +08006d02 : + * @param x2,y2: �յ����� + * @param color: ���ε���ɫ + * @retval �� + */ +void lcd_draw_rectangle(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t color) +{ + 8006d02: b590 push {r4, r7, lr} + 8006d04: b085 sub sp, #20 + 8006d06: af02 add r7, sp, #8 + 8006d08: 4604 mov r4, r0 + 8006d0a: 4608 mov r0, r1 + 8006d0c: 4611 mov r1, r2 + 8006d0e: 461a mov r2, r3 + 8006d10: 4623 mov r3, r4 + 8006d12: 80fb strh r3, [r7, #6] + 8006d14: 4603 mov r3, r0 + 8006d16: 80bb strh r3, [r7, #4] + 8006d18: 460b mov r3, r1 + 8006d1a: 807b strh r3, [r7, #2] + 8006d1c: 4613 mov r3, r2 + 8006d1e: 803b strh r3, [r7, #0] + lcd_draw_line(x1, y1, x2, y1, color); + 8006d20: 88bc ldrh r4, [r7, #4] + 8006d22: 887a ldrh r2, [r7, #2] + 8006d24: 88b9 ldrh r1, [r7, #4] + 8006d26: 88f8 ldrh r0, [r7, #6] + 8006d28: 8b3b ldrh r3, [r7, #24] + 8006d2a: 9300 str r3, [sp, #0] + 8006d2c: 4623 mov r3, r4 + 8006d2e: f7ff ff63 bl 8006bf8 + lcd_draw_line(x1, y1, x1, y2, color); + 8006d32: 883c ldrh r4, [r7, #0] + 8006d34: 88fa ldrh r2, [r7, #6] + 8006d36: 88b9 ldrh r1, [r7, #4] + 8006d38: 88f8 ldrh r0, [r7, #6] + 8006d3a: 8b3b ldrh r3, [r7, #24] + 8006d3c: 9300 str r3, [sp, #0] + 8006d3e: 4623 mov r3, r4 + 8006d40: f7ff ff5a bl 8006bf8 + lcd_draw_line(x1, y2, x2, y2, color); + 8006d44: 883c ldrh r4, [r7, #0] + 8006d46: 887a ldrh r2, [r7, #2] + 8006d48: 8839 ldrh r1, [r7, #0] + 8006d4a: 88f8 ldrh r0, [r7, #6] + 8006d4c: 8b3b ldrh r3, [r7, #24] + 8006d4e: 9300 str r3, [sp, #0] + 8006d50: 4623 mov r3, r4 + 8006d52: f7ff ff51 bl 8006bf8 + lcd_draw_line(x2, y1, x2, y2, color); + 8006d56: 883c ldrh r4, [r7, #0] + 8006d58: 887a ldrh r2, [r7, #2] + 8006d5a: 88b9 ldrh r1, [r7, #4] + 8006d5c: 8878 ldrh r0, [r7, #2] + 8006d5e: 8b3b ldrh r3, [r7, #24] + 8006d60: 9300 str r3, [sp, #0] + 8006d62: 4623 mov r3, r4 + 8006d64: f7ff ff48 bl 8006bf8 +} + 8006d68: bf00 nop + 8006d6a: 370c adds r7, #12 + 8006d6c: 46bd mov sp, r7 + 8006d6e: bd90 pop {r4, r7, pc} + +08006d70 : + * @param mode : ���ӷ�ʽ(1); �ǵ��ӷ�ʽ(0); + * @param color : �ַ�����ɫ; + * @retval �� + */ +void lcd_show_char(uint16_t x, uint16_t y, char chr, uint8_t size, uint8_t mode, uint16_t color) +{ + 8006d70: b590 push {r4, r7, lr} + 8006d72: b087 sub sp, #28 + 8006d74: af00 add r7, sp, #0 + 8006d76: 4604 mov r4, r0 + 8006d78: 4608 mov r0, r1 + 8006d7a: 4611 mov r1, r2 + 8006d7c: 461a mov r2, r3 + 8006d7e: 4623 mov r3, r4 + 8006d80: 80fb strh r3, [r7, #6] + 8006d82: 4603 mov r3, r0 + 8006d84: 80bb strh r3, [r7, #4] + 8006d86: 460b mov r3, r1 + 8006d88: 70fb strb r3, [r7, #3] + 8006d8a: 4613 mov r3, r2 + 8006d8c: 70bb strb r3, [r7, #2] + uint8_t temp, t1, t; + uint16_t y0 = y; + 8006d8e: 88bb ldrh r3, [r7, #4] + 8006d90: 81fb strh r3, [r7, #14] + uint8_t csize = 0; + 8006d92: 2300 movs r3, #0 + 8006d94: 737b strb r3, [r7, #13] + uint8_t *pfont = 0; + 8006d96: 2300 movs r3, #0 + 8006d98: 613b str r3, [r7, #16] + + csize = (size / 8 + ((size % 8) ? 1 : 0)) * (size / 2); /* �õ�����һ���ַ���Ӧ������ռ���ֽ��� */ + 8006d9a: 78bb ldrb r3, [r7, #2] + 8006d9c: 08db lsrs r3, r3, #3 + 8006d9e: b2db uxtb r3, r3 + 8006da0: 461a mov r2, r3 + 8006da2: 78bb ldrb r3, [r7, #2] + 8006da4: f003 0307 and.w r3, r3, #7 + 8006da8: b2db uxtb r3, r3 + 8006daa: 2b00 cmp r3, #0 + 8006dac: bf14 ite ne + 8006dae: 2301 movne r3, #1 + 8006db0: 2300 moveq r3, #0 + 8006db2: b2db uxtb r3, r3 + 8006db4: 4413 add r3, r2 + 8006db6: b2db uxtb r3, r3 + 8006db8: 78ba ldrb r2, [r7, #2] + 8006dba: 0852 lsrs r2, r2, #1 + 8006dbc: b2d2 uxtb r2, r2 + 8006dbe: fb02 f303 mul.w r3, r2, r3 + 8006dc2: 737b strb r3, [r7, #13] + chr = chr - ' '; /* �õ�ƫ�ƺ��ֵ��ASCII�ֿ��Ǵӿո�ʼȡģ������-' '���Ƕ�Ӧ�ַ����ֿ⣩ */ + 8006dc4: 78fb ldrb r3, [r7, #3] + 8006dc6: 3b20 subs r3, #32 + 8006dc8: 70fb strb r3, [r7, #3] + + switch (size) + 8006dca: 78bb ldrb r3, [r7, #2] + 8006dcc: 3b0c subs r3, #12 + 8006dce: 2b14 cmp r3, #20 + 8006dd0: f200 8099 bhi.w 8006f06 + 8006dd4: a201 add r2, pc, #4 @ (adr r2, 8006ddc ) + 8006dd6: f852 f023 ldr.w pc, [r2, r3, lsl #2] + 8006dda: bf00 nop + 8006ddc: 08006e31 .word 0x08006e31 + 8006de0: 08006f07 .word 0x08006f07 + 8006de4: 08006f07 .word 0x08006f07 + 8006de8: 08006f07 .word 0x08006f07 + 8006dec: 08006e43 .word 0x08006e43 + 8006df0: 08006f07 .word 0x08006f07 + 8006df4: 08006f07 .word 0x08006f07 + 8006df8: 08006f07 .word 0x08006f07 + 8006dfc: 08006f07 .word 0x08006f07 + 8006e00: 08006f07 .word 0x08006f07 + 8006e04: 08006f07 .word 0x08006f07 + 8006e08: 08006f07 .word 0x08006f07 + 8006e0c: 08006e4f .word 0x08006e4f + 8006e10: 08006f07 .word 0x08006f07 + 8006e14: 08006f07 .word 0x08006f07 + 8006e18: 08006f07 .word 0x08006f07 + 8006e1c: 08006f07 .word 0x08006f07 + 8006e20: 08006f07 .word 0x08006f07 + 8006e24: 08006f07 .word 0x08006f07 + 8006e28: 08006f07 .word 0x08006f07 + 8006e2c: 08006e61 .word 0x08006e61 + { + case 12: + pfont = (uint8_t *)asc2_1206[chr]; /* ����1206���� */ + 8006e30: 78fa ldrb r2, [r7, #3] + 8006e32: 4613 mov r3, r2 + 8006e34: 005b lsls r3, r3, #1 + 8006e36: 4413 add r3, r2 + 8006e38: 009b lsls r3, r3, #2 + 8006e3a: 4a36 ldr r2, [pc, #216] @ (8006f14 ) + 8006e3c: 4413 add r3, r2 + 8006e3e: 613b str r3, [r7, #16] + break; + 8006e40: e014 b.n 8006e6c + + case 16: + pfont = (uint8_t *)asc2_1608[chr]; /* ����1608���� */ + 8006e42: 78fb ldrb r3, [r7, #3] + 8006e44: 011b lsls r3, r3, #4 + 8006e46: 4a34 ldr r2, [pc, #208] @ (8006f18 ) + 8006e48: 4413 add r3, r2 + 8006e4a: 613b str r3, [r7, #16] + break; + 8006e4c: e00e b.n 8006e6c + + case 24: + pfont = (uint8_t *)asc2_2412[chr]; /* ����2412���� */ + 8006e4e: 78fa ldrb r2, [r7, #3] + 8006e50: 4613 mov r3, r2 + 8006e52: 00db lsls r3, r3, #3 + 8006e54: 4413 add r3, r2 + 8006e56: 009b lsls r3, r3, #2 + 8006e58: 4a30 ldr r2, [pc, #192] @ (8006f1c ) + 8006e5a: 4413 add r3, r2 + 8006e5c: 613b str r3, [r7, #16] + break; + 8006e5e: e005 b.n 8006e6c + + case 32: + pfont = (uint8_t *)asc2_3216[chr]; /* ����3216���� */ + 8006e60: 78fb ldrb r3, [r7, #3] + 8006e62: 019b lsls r3, r3, #6 + 8006e64: 4a2e ldr r2, [pc, #184] @ (8006f20 ) + 8006e66: 4413 add r3, r2 + 8006e68: 613b str r3, [r7, #16] + break; + 8006e6a: bf00 nop + + default: + return ; + } + + for (t = 0; t < csize; t++) + 8006e6c: 2300 movs r3, #0 + 8006e6e: 757b strb r3, [r7, #21] + 8006e70: e044 b.n 8006efc + { + temp = pfont[t]; /* ��ȡ�ַ��ĵ������� */ + 8006e72: 7d7b ldrb r3, [r7, #21] + 8006e74: 693a ldr r2, [r7, #16] + 8006e76: 4413 add r3, r2 + 8006e78: 781b ldrb r3, [r3, #0] + 8006e7a: 75fb strb r3, [r7, #23] + + for (t1 = 0; t1 < 8; t1++) /* һ���ֽ�8���� */ + 8006e7c: 2300 movs r3, #0 + 8006e7e: 75bb strb r3, [r7, #22] + 8006e80: e034 b.n 8006eec + { + if (temp & 0x80) /* ��Ч��,��Ҫ��ʾ */ + 8006e82: f997 3017 ldrsb.w r3, [r7, #23] + 8006e86: 2b00 cmp r3, #0 + 8006e88: da06 bge.n 8006e98 + { + lcd_draw_point(x, y, color); /* �������,Ҫ��ʾ����� */ + 8006e8a: 8dba ldrh r2, [r7, #44] @ 0x2c + 8006e8c: 88b9 ldrh r1, [r7, #4] + 8006e8e: 88fb ldrh r3, [r7, #6] + 8006e90: 4618 mov r0, r3 + 8006e92: f7fa fca5 bl 80017e0 + 8006e96: e00a b.n 8006eae + } + else if (mode == 0) /* ��Ч��,����ʾ */ + 8006e98: f897 3028 ldrb.w r3, [r7, #40] @ 0x28 + 8006e9c: 2b00 cmp r3, #0 + 8006e9e: d106 bne.n 8006eae + { + lcd_draw_point(x, y, g_back_color); /* ������ɫ,�൱������㲻��ʾ(ע�ⱳ��ɫ��ȫ�ֱ�������) */ + 8006ea0: 4b20 ldr r3, [pc, #128] @ (8006f24 ) + 8006ea2: 681a ldr r2, [r3, #0] + 8006ea4: 88b9 ldrh r1, [r7, #4] + 8006ea6: 88fb ldrh r3, [r7, #6] + 8006ea8: 4618 mov r0, r3 + 8006eaa: f7fa fc99 bl 80017e0 + } + + temp <<= 1; /* ��λ, �Ա��ȡ��һ��λ��״̬ */ + 8006eae: 7dfb ldrb r3, [r7, #23] + 8006eb0: 005b lsls r3, r3, #1 + 8006eb2: 75fb strb r3, [r7, #23] + y++; + 8006eb4: 88bb ldrh r3, [r7, #4] + 8006eb6: 3301 adds r3, #1 + 8006eb8: 80bb strh r3, [r7, #4] + + if (y >= lcddev.height)return; /* �������� */ + 8006eba: 4b1b ldr r3, [pc, #108] @ (8006f28 ) + 8006ebc: 885b ldrh r3, [r3, #2] + 8006ebe: 88ba ldrh r2, [r7, #4] + 8006ec0: 429a cmp r2, r3 + 8006ec2: d222 bcs.n 8006f0a + + if ((y - y0) == size) /* ��ʾ��һ����? */ + 8006ec4: 88ba ldrh r2, [r7, #4] + 8006ec6: 89fb ldrh r3, [r7, #14] + 8006ec8: 1ad2 subs r2, r2, r3 + 8006eca: 78bb ldrb r3, [r7, #2] + 8006ecc: 429a cmp r2, r3 + 8006ece: d10a bne.n 8006ee6 + { + y = y0; /* y���긴λ */ + 8006ed0: 89fb ldrh r3, [r7, #14] + 8006ed2: 80bb strh r3, [r7, #4] + x++; /* x������� */ + 8006ed4: 88fb ldrh r3, [r7, #6] + 8006ed6: 3301 adds r3, #1 + 8006ed8: 80fb strh r3, [r7, #6] + + if (x >= lcddev.width)return; /* x���곬������ */ + 8006eda: 4b13 ldr r3, [pc, #76] @ (8006f28 ) + 8006edc: 881b ldrh r3, [r3, #0] + 8006ede: 88fa ldrh r2, [r7, #6] + 8006ee0: 429a cmp r2, r3 + 8006ee2: d307 bcc.n 8006ef4 + 8006ee4: e012 b.n 8006f0c + for (t1 = 0; t1 < 8; t1++) /* һ���ֽ�8���� */ + 8006ee6: 7dbb ldrb r3, [r7, #22] + 8006ee8: 3301 adds r3, #1 + 8006eea: 75bb strb r3, [r7, #22] + 8006eec: 7dbb ldrb r3, [r7, #22] + 8006eee: 2b07 cmp r3, #7 + 8006ef0: d9c7 bls.n 8006e82 + 8006ef2: e000 b.n 8006ef6 + + break; + 8006ef4: bf00 nop + for (t = 0; t < csize; t++) + 8006ef6: 7d7b ldrb r3, [r7, #21] + 8006ef8: 3301 adds r3, #1 + 8006efa: 757b strb r3, [r7, #21] + 8006efc: 7d7a ldrb r2, [r7, #21] + 8006efe: 7b7b ldrb r3, [r7, #13] + 8006f00: 429a cmp r2, r3 + 8006f02: d3b6 bcc.n 8006e72 + 8006f04: e002 b.n 8006f0c + return ; + 8006f06: bf00 nop + 8006f08: e000 b.n 8006f0c + if (y >= lcddev.height)return; /* �������� */ + 8006f0a: bf00 nop + } + } + } +} + 8006f0c: 371c adds r7, #28 + 8006f0e: 46bd mov sp, r7 + 8006f10: bd90 pop {r4, r7, pc} + 8006f12: bf00 nop + 8006f14: 080082ac .word 0x080082ac + 8006f18: 08008720 .word 0x08008720 + 8006f1c: 08008d10 .word 0x08008d10 + 8006f20: 08009a6c .word 0x08009a6c + 8006f24: 20000000 .word 0x20000000 + 8006f28: 2000002c .word 0x2000002c + +08006f2c : + * @param p : �ַ����׵�ַ + * @param color : �ַ�������ɫ; + * @retval �� + */ +void lcd_show_string(uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint8_t size, char *p, uint16_t color) +{ + 8006f2c: b590 push {r4, r7, lr} + 8006f2e: b087 sub sp, #28 + 8006f30: af02 add r7, sp, #8 + 8006f32: 4604 mov r4, r0 + 8006f34: 4608 mov r0, r1 + 8006f36: 4611 mov r1, r2 + 8006f38: 461a mov r2, r3 + 8006f3a: 4623 mov r3, r4 + 8006f3c: 80fb strh r3, [r7, #6] + 8006f3e: 4603 mov r3, r0 + 8006f40: 80bb strh r3, [r7, #4] + 8006f42: 460b mov r3, r1 + 8006f44: 807b strh r3, [r7, #2] + 8006f46: 4613 mov r3, r2 + 8006f48: 803b strh r3, [r7, #0] + uint8_t x0 = x; + 8006f4a: 88fb ldrh r3, [r7, #6] + 8006f4c: 73fb strb r3, [r7, #15] + width += x; + 8006f4e: 887a ldrh r2, [r7, #2] + 8006f50: 88fb ldrh r3, [r7, #6] + 8006f52: 4413 add r3, r2 + 8006f54: 807b strh r3, [r7, #2] + height += y; + 8006f56: 883a ldrh r2, [r7, #0] + 8006f58: 88bb ldrh r3, [r7, #4] + 8006f5a: 4413 add r3, r2 + 8006f5c: 803b strh r3, [r7, #0] + + while ((*p <= '~') && (*p >= ' ')) /* �ж��Dz��ǷǷ��ַ�! */ + 8006f5e: e027 b.n 8006fb0 + { + if (x >= width) + 8006f60: 88fa ldrh r2, [r7, #6] + 8006f62: 887b ldrh r3, [r7, #2] + 8006f64: 429a cmp r2, r3 + 8006f66: d307 bcc.n 8006f78 + { + x = x0; + 8006f68: 7bfb ldrb r3, [r7, #15] + 8006f6a: 80fb strh r3, [r7, #6] + y += size; + 8006f6c: f897 3020 ldrb.w r3, [r7, #32] + 8006f70: b29a uxth r2, r3 + 8006f72: 88bb ldrh r3, [r7, #4] + 8006f74: 4413 add r3, r2 + 8006f76: 80bb strh r3, [r7, #4] + } + + if (y >= height)break; /* �˳� */ + 8006f78: 88ba ldrh r2, [r7, #4] + 8006f7a: 883b ldrh r3, [r7, #0] + 8006f7c: 429a cmp r2, r3 + 8006f7e: d220 bcs.n 8006fc2 + + lcd_show_char(x, y, *p, size, 0, color); + 8006f80: 6a7b ldr r3, [r7, #36] @ 0x24 + 8006f82: 781a ldrb r2, [r3, #0] + 8006f84: f897 4020 ldrb.w r4, [r7, #32] + 8006f88: 88b9 ldrh r1, [r7, #4] + 8006f8a: 88f8 ldrh r0, [r7, #6] + 8006f8c: 8d3b ldrh r3, [r7, #40] @ 0x28 + 8006f8e: 9301 str r3, [sp, #4] + 8006f90: 2300 movs r3, #0 + 8006f92: 9300 str r3, [sp, #0] + 8006f94: 4623 mov r3, r4 + 8006f96: f7ff feeb bl 8006d70 + x += size / 2; + 8006f9a: f897 3020 ldrb.w r3, [r7, #32] + 8006f9e: 085b lsrs r3, r3, #1 + 8006fa0: b2db uxtb r3, r3 + 8006fa2: 461a mov r2, r3 + 8006fa4: 88fb ldrh r3, [r7, #6] + 8006fa6: 4413 add r3, r2 + 8006fa8: 80fb strh r3, [r7, #6] + p++; + 8006faa: 6a7b ldr r3, [r7, #36] @ 0x24 + 8006fac: 3301 adds r3, #1 + 8006fae: 627b str r3, [r7, #36] @ 0x24 + while ((*p <= '~') && (*p >= ' ')) /* �ж��Dz��ǷǷ��ַ�! */ + 8006fb0: 6a7b ldr r3, [r7, #36] @ 0x24 + 8006fb2: 781b ldrb r3, [r3, #0] + 8006fb4: 2b7e cmp r3, #126 @ 0x7e + 8006fb6: d805 bhi.n 8006fc4 + 8006fb8: 6a7b ldr r3, [r7, #36] @ 0x24 + 8006fba: 781b ldrb r3, [r3, #0] + 8006fbc: 2b1f cmp r3, #31 + 8006fbe: d8cf bhi.n 8006f60 + } +} + 8006fc0: e000 b.n 8006fc4 + if (y >= height)break; /* �˳� */ + 8006fc2: bf00 nop +} + 8006fc4: bf00 nop + 8006fc6: 3714 adds r7, #20 + 8006fc8: 46bd mov sp, r7 + 8006fca: bd90 pop {r4, r7, pc} + +08006fcc
      : +/** + * @brief The application entry point. + * @retval int + */ +int main(void) +{ + 8006fcc: e92d 4fb0 stmdb sp!, {r4, r5, r7, r8, r9, sl, fp, lr} + 8006fd0: b08e sub sp, #56 @ 0x38 + 8006fd2: af04 add r7, sp, #16 + /* USER CODE END 1 */ + + /* MCU Configuration--------------------------------------------------------*/ + + /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ + HAL_Init(); + 8006fd4: f000 fa0e bl 80073f4 + /* USER CODE BEGIN Init */ + + /* USER CODE END Init */ + + /* Configure the system clock */ + SystemClock_Config(); + 8006fd8: f000 f936 bl 8007248 + /* USER CODE BEGIN SysInit */ + + /* USER CODE END SysInit */ + + /* Initialize all configured peripherals */ + MX_GPIO_Init(); + 8006fdc: f7f9 fc2a bl 8000834 + + /* USER CODE END 2 */ + + /* Infinite loop */ + /* USER CODE BEGIN WHILE */ + lcd_init(); + 8006fe0: f7fa fde2 bl 8001ba8 + uint8_t x = 0; + 8006fe4: 2300 movs r3, #0 + 8006fe6: 77fb strb r3, [r7, #31] + while (1) + { + /* USER CODE END WHILE */ + + /* USER CODE BEGIN 3 */ + switch (x) { + 8006fe8: 7ffb ldrb r3, [r7, #31] + 8006fea: 2b0b cmp r3, #11 + 8006fec: f200 8084 bhi.w 80070f8 + 8006ff0: a201 add r2, pc, #4 @ (adr r2, 8006ff8 ) + 8006ff2: f852 f023 ldr.w pc, [r2, r3, lsl #2] + 8006ff6: bf00 nop + 8006ff8: 08007029 .word 0x08007029 + 8006ffc: 0800703b .word 0x0800703b + 8007000: 08007049 .word 0x08007049 + 8007004: 08007057 .word 0x08007057 + 8007008: 08007069 .word 0x08007069 + 800700c: 0800707b .word 0x0800707b + 8007010: 0800708d .word 0x0800708d + 8007014: 0800709f .word 0x0800709f + 8007018: 080070b1 .word 0x080070b1 + 800701c: 080070c3 .word 0x080070c3 + 8007020: 080070d5 .word 0x080070d5 + 8007024: 080070e7 .word 0x080070e7 + case 0: lcd_clear(WHITE); g_back_color = WHITE; break; + 8007028: f64f 70ff movw r0, #65535 @ 0xffff + 800702c: f7ff fd1a bl 8006a64 + 8007030: 4b7f ldr r3, [pc, #508] @ (8007230 ) + 8007032: f64f 72ff movw r2, #65535 @ 0xffff + 8007036: 601a str r2, [r3, #0] + 8007038: e05e b.n 80070f8 + case 1: lcd_clear(BLACK); g_back_color = BLACK; break; + 800703a: 2000 movs r0, #0 + 800703c: f7ff fd12 bl 8006a64 + 8007040: 4b7b ldr r3, [pc, #492] @ (8007230 ) + 8007042: 2200 movs r2, #0 + 8007044: 601a str r2, [r3, #0] + 8007046: e057 b.n 80070f8 + case 2: lcd_clear(BLUE); g_back_color = BLUE; break; + 8007048: 201f movs r0, #31 + 800704a: f7ff fd0b bl 8006a64 + 800704e: 4b78 ldr r3, [pc, #480] @ (8007230 ) + 8007050: 221f movs r2, #31 + 8007052: 601a str r2, [r3, #0] + 8007054: e050 b.n 80070f8 + case 3: lcd_clear(RED); g_back_color = RED; break; + 8007056: f44f 4078 mov.w r0, #63488 @ 0xf800 + 800705a: f7ff fd03 bl 8006a64 + 800705e: 4b74 ldr r3, [pc, #464] @ (8007230 ) + 8007060: f44f 4278 mov.w r2, #63488 @ 0xf800 + 8007064: 601a str r2, [r3, #0] + 8007066: e047 b.n 80070f8 + case 4: lcd_clear(MAGENTA); g_back_color = MAGENTA; break; + 8007068: f64f 001f movw r0, #63519 @ 0xf81f + 800706c: f7ff fcfa bl 8006a64 + 8007070: 4b6f ldr r3, [pc, #444] @ (8007230 ) + 8007072: f64f 021f movw r2, #63519 @ 0xf81f + 8007076: 601a str r2, [r3, #0] + 8007078: e03e b.n 80070f8 + case 5: lcd_clear(GREEN); g_back_color = GREEN; break; + 800707a: f44f 60fc mov.w r0, #2016 @ 0x7e0 + 800707e: f7ff fcf1 bl 8006a64 + 8007082: 4b6b ldr r3, [pc, #428] @ (8007230 ) + 8007084: f44f 62fc mov.w r2, #2016 @ 0x7e0 + 8007088: 601a str r2, [r3, #0] + 800708a: e035 b.n 80070f8 + case 6: lcd_clear(CYAN); g_back_color = CYAN; break; + 800708c: f240 70ff movw r0, #2047 @ 0x7ff + 8007090: f7ff fce8 bl 8006a64 + 8007094: 4b66 ldr r3, [pc, #408] @ (8007230 ) + 8007096: f240 72ff movw r2, #2047 @ 0x7ff + 800709a: 601a str r2, [r3, #0] + 800709c: e02c b.n 80070f8 + case 7: lcd_clear(YELLOW); g_back_color = YELLOW; break; + 800709e: f64f 70e0 movw r0, #65504 @ 0xffe0 + 80070a2: f7ff fcdf bl 8006a64 + 80070a6: 4b62 ldr r3, [pc, #392] @ (8007230 ) + 80070a8: f64f 72e0 movw r2, #65504 @ 0xffe0 + 80070ac: 601a str r2, [r3, #0] + 80070ae: e023 b.n 80070f8 + case 8: lcd_clear(BRRED); g_back_color = BRRED; break; + 80070b0: f64f 4007 movw r0, #64519 @ 0xfc07 + 80070b4: f7ff fcd6 bl 8006a64 + 80070b8: 4b5d ldr r3, [pc, #372] @ (8007230 ) + 80070ba: f64f 4207 movw r2, #64519 @ 0xfc07 + 80070be: 601a str r2, [r3, #0] + 80070c0: e01a b.n 80070f8 + case 9: lcd_clear(GRAY); g_back_color = GRAY; break; + 80070c2: f248 4030 movw r0, #33840 @ 0x8430 + 80070c6: f7ff fccd bl 8006a64 + 80070ca: 4b59 ldr r3, [pc, #356] @ (8007230 ) + 80070cc: f248 4230 movw r2, #33840 @ 0x8430 + 80070d0: 601a str r2, [r3, #0] + 80070d2: e011 b.n 80070f8 + case 10: lcd_clear(LGRAY); g_back_color = LGRAY; break; + 80070d4: f24c 6018 movw r0, #50712 @ 0xc618 + 80070d8: f7ff fcc4 bl 8006a64 + 80070dc: 4b54 ldr r3, [pc, #336] @ (8007230 ) + 80070de: f24c 6218 movw r2, #50712 @ 0xc618 + 80070e2: 601a str r2, [r3, #0] + 80070e4: e008 b.n 80070f8 + case 11: lcd_clear(BROWN); g_back_color = BROWN; break; + 80070e6: f64b 4040 movw r0, #48192 @ 0xbc40 + 80070ea: f7ff fcbb bl 8006a64 + 80070ee: 4b50 ldr r3, [pc, #320] @ (8007230 ) + 80070f0: f64b 4240 movw r2, #48192 @ 0xbc40 + 80070f4: 601a str r2, [r3, #0] + 80070f6: bf00 nop + }//end of switch + + lcd_show_string(30, 40, 200, 24, 24, "Mini STM32 ^_^", RED); + 80070f8: f44f 4378 mov.w r3, #63488 @ 0xf800 + 80070fc: 9302 str r3, [sp, #8] + 80070fe: 4b4d ldr r3, [pc, #308] @ (8007234 ) + 8007100: 9301 str r3, [sp, #4] + 8007102: 2318 movs r3, #24 + 8007104: 9300 str r3, [sp, #0] + 8007106: 2318 movs r3, #24 + 8007108: 22c8 movs r2, #200 @ 0xc8 + 800710a: 2128 movs r1, #40 @ 0x28 + 800710c: 201e movs r0, #30 + 800710e: f7ff ff0d bl 8006f2c + lcd_show_string(30, 70, 200, 16, 16, "TFTLCD TEST", RED); + 8007112: f44f 4378 mov.w r3, #63488 @ 0xf800 + 8007116: 9302 str r3, [sp, #8] + 8007118: 4b47 ldr r3, [pc, #284] @ (8007238 ) + 800711a: 9301 str r3, [sp, #4] + 800711c: 2310 movs r3, #16 + 800711e: 9300 str r3, [sp, #0] + 8007120: 2310 movs r3, #16 + 8007122: 22c8 movs r2, #200 @ 0xc8 + 8007124: 2146 movs r1, #70 @ 0x46 + 8007126: 201e movs r0, #30 + 8007128: f7ff ff00 bl 8006f2c + /* Code of showing address of GPIOA->CRL (represented in hexadecimal) BEGIN */ + // lcd_show_string(30, 90, 200, 16, 16, "addr = 0x", RED); + lcd_show_string(30, 90, 100, 16, 16, "addr = 0x", RED); + 800712c: f44f 4378 mov.w r3, #63488 @ 0xf800 + 8007130: 9302 str r3, [sp, #8] + 8007132: 4b42 ldr r3, [pc, #264] @ (800723c ) + 8007134: 9301 str r3, [sp, #4] + 8007136: 2310 movs r3, #16 + 8007138: 9300 str r3, [sp, #0] + 800713a: 2310 movs r3, #16 + 800713c: 2264 movs r2, #100 @ 0x64 + 800713e: 215a movs r1, #90 @ 0x5a + 8007140: 201e movs r0, #30 + 8007142: f7ff fef3 bl 8006f2c + char hex[17] = "0123456789ABCDEF"; + 8007146: 4b3e ldr r3, [pc, #248] @ (8007240 ) + 8007148: 463c mov r4, r7 + 800714a: 461d mov r5, r3 + 800714c: cd0f ldmia r5!, {r0, r1, r2, r3} + 800714e: c40f stmia r4!, {r0, r1, r2, r3} + 8007150: 682b ldr r3, [r5, #0] + 8007152: 7023 strb r3, [r4, #0] + int i = 7, x = &GPIOA->CRL; + 8007154: 2307 movs r3, #7 + 8007156: 627b str r3, [r7, #36] @ 0x24 + 8007158: 4b3a ldr r3, [pc, #232] @ (8007244 ) + 800715a: 623b str r3, [r7, #32] + char num[i + 2]; + 800715c: 6a7b ldr r3, [r7, #36] @ 0x24 + 800715e: 1c99 adds r1, r3, #2 + 8007160: 466b mov r3, sp + 8007162: 461c mov r4, r3 + 8007164: 1e4b subs r3, r1, #1 + 8007166: 61bb str r3, [r7, #24] + 8007168: 460a mov r2, r1 + 800716a: 2300 movs r3, #0 + 800716c: 4690 mov r8, r2 + 800716e: 4699 mov r9, r3 + 8007170: f04f 0200 mov.w r2, #0 + 8007174: f04f 0300 mov.w r3, #0 + 8007178: ea4f 03c9 mov.w r3, r9, lsl #3 + 800717c: ea43 7358 orr.w r3, r3, r8, lsr #29 + 8007180: ea4f 02c8 mov.w r2, r8, lsl #3 + 8007184: 460a mov r2, r1 + 8007186: 2300 movs r3, #0 + 8007188: 4692 mov sl, r2 + 800718a: 469b mov fp, r3 + 800718c: f04f 0200 mov.w r2, #0 + 8007190: f04f 0300 mov.w r3, #0 + 8007194: ea4f 03cb mov.w r3, fp, lsl #3 + 8007198: ea43 735a orr.w r3, r3, sl, lsr #29 + 800719c: ea4f 02ca mov.w r2, sl, lsl #3 + 80071a0: 460b mov r3, r1 + 80071a2: 3307 adds r3, #7 + 80071a4: 08db lsrs r3, r3, #3 + 80071a6: 00db lsls r3, r3, #3 + 80071a8: ebad 0d03 sub.w sp, sp, r3 + 80071ac: ab04 add r3, sp, #16 + 80071ae: 3300 adds r3, #0 + 80071b0: 617b str r3, [r7, #20] + while (i >= 0) { + 80071b2: e00e b.n 80071d2 + num[i--] = hex[x & 0xF]; + 80071b4: 6a3b ldr r3, [r7, #32] + 80071b6: f003 020f and.w r2, r3, #15 + 80071ba: 6a7b ldr r3, [r7, #36] @ 0x24 + 80071bc: 1e59 subs r1, r3, #1 + 80071be: 6279 str r1, [r7, #36] @ 0x24 + 80071c0: 3228 adds r2, #40 @ 0x28 + 80071c2: 443a add r2, r7 + 80071c4: f812 1c28 ldrb.w r1, [r2, #-40] + 80071c8: 697a ldr r2, [r7, #20] + 80071ca: 54d1 strb r1, [r2, r3] + x = x >> 4; + 80071cc: 6a3b ldr r3, [r7, #32] + 80071ce: 111b asrs r3, r3, #4 + 80071d0: 623b str r3, [r7, #32] + while (i >= 0) { + 80071d2: 6a7b ldr r3, [r7, #36] @ 0x24 + 80071d4: 2b00 cmp r3, #0 + 80071d6: daed bge.n 80071b4 + } + lcd_show_string(102, 90, 60, 16, 16, num, RED); + 80071d8: f44f 4378 mov.w r3, #63488 @ 0xf800 + 80071dc: 9302 str r3, [sp, #8] + 80071de: 697b ldr r3, [r7, #20] + 80071e0: 9301 str r3, [sp, #4] + 80071e2: 2310 movs r3, #16 + 80071e4: 9300 str r3, [sp, #0] + 80071e6: 2310 movs r3, #16 + 80071e8: 223c movs r2, #60 @ 0x3c + 80071ea: 215a movs r1, #90 @ 0x5a + 80071ec: 2066 movs r0, #102 @ 0x66 + 80071ee: f7ff fe9d bl 8006f2c + /* Code of showing address of GPIOA->CRL (represented in hexadecimal) END */ + + lcd_draw_rectangle(30, 150, 210, 190, BLACK); + 80071f2: 2300 movs r3, #0 + 80071f4: 9300 str r3, [sp, #0] + 80071f6: 23be movs r3, #190 @ 0xbe + 80071f8: 22d2 movs r2, #210 @ 0xd2 + 80071fa: 2196 movs r1, #150 @ 0x96 + 80071fc: 201e movs r0, #30 + 80071fe: f7ff fd80 bl 8006d02 + lcd_fill(31, 151, 209, 189, YELLOW); + 8007202: f64f 73e0 movw r3, #65504 @ 0xffe0 + 8007206: 9300 str r3, [sp, #0] + 8007208: 23bd movs r3, #189 @ 0xbd + 800720a: 22d1 movs r2, #209 @ 0xd1 + 800720c: 2197 movs r1, #151 @ 0x97 + 800720e: 201f movs r0, #31 + 8007210: f7ff fc84 bl 8006b1c + + x++; + 8007214: 6a3b ldr r3, [r7, #32] + 8007216: 3301 adds r3, #1 + 8007218: 623b str r3, [r7, #32] + if (x == 12) + 800721a: 6a3b ldr r3, [r7, #32] + 800721c: 2b0c cmp r3, #12 + 800721e: d101 bne.n 8007224 + x = 0; + 8007220: 2300 movs r3, #0 + 8007222: 623b str r3, [r7, #32] + + HAL_Delay(2000); + 8007224: f44f 60fa mov.w r0, #2000 @ 0x7d0 + 8007228: f000 f946 bl 80074b8 + 800722c: 46a5 mov sp, r4 + { + 800722e: e6db b.n 8006fe8 + 8007230: 20000000 .word 0x20000000 + 8007234: 08008260 .word 0x08008260 + 8007238: 08008270 .word 0x08008270 + 800723c: 0800827c .word 0x0800827c + 8007240: 08008288 .word 0x08008288 + 8007244: 40010800 .word 0x40010800 + +08007248 : +/** + * @brief System Clock Configuration + * @retval None + */ +void SystemClock_Config(void) +{ + 8007248: b580 push {r7, lr} + 800724a: b090 sub sp, #64 @ 0x40 + 800724c: af00 add r7, sp, #0 + RCC_OscInitTypeDef RCC_OscInitStruct = {0}; + 800724e: f107 0318 add.w r3, r7, #24 + 8007252: 2228 movs r2, #40 @ 0x28 + 8007254: 2100 movs r1, #0 + 8007256: 4618 mov r0, r3 + 8007258: f000 ffca bl 80081f0 + RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; + 800725c: 1d3b adds r3, r7, #4 + 800725e: 2200 movs r2, #0 + 8007260: 601a str r2, [r3, #0] + 8007262: 605a str r2, [r3, #4] + 8007264: 609a str r2, [r3, #8] + 8007266: 60da str r2, [r3, #12] + 8007268: 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; + 800726a: 2301 movs r3, #1 + 800726c: 61bb str r3, [r7, #24] + RCC_OscInitStruct.HSEState = RCC_HSE_ON; + 800726e: f44f 3380 mov.w r3, #65536 @ 0x10000 + 8007272: 61fb str r3, [r7, #28] + RCC_OscInitStruct.HSEPredivValue = RCC_HSE_PREDIV_DIV1; + 8007274: 2300 movs r3, #0 + 8007276: 623b str r3, [r7, #32] + RCC_OscInitStruct.HSIState = RCC_HSI_ON; + 8007278: 2301 movs r3, #1 + 800727a: 62bb str r3, [r7, #40] @ 0x28 + RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; + 800727c: 2302 movs r3, #2 + 800727e: 637b str r3, [r7, #52] @ 0x34 + RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; + 8007280: f44f 3380 mov.w r3, #65536 @ 0x10000 + 8007284: 63bb str r3, [r7, #56] @ 0x38 + RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL9; + 8007286: f44f 13e0 mov.w r3, #1835008 @ 0x1c0000 + 800728a: 63fb str r3, [r7, #60] @ 0x3c + if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) + 800728c: f107 0318 add.w r3, r7, #24 + 8007290: 4618 mov r0, r3 + 8007292: f000 fbc5 bl 8007a20 + 8007296: 4603 mov r3, r0 + 8007298: 2b00 cmp r3, #0 + 800729a: d001 beq.n 80072a0 + { + Error_Handler(); + 800729c: f000 f819 bl 80072d2 + } + /** Initializes the CPU, AHB and APB buses clocks + */ + RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK + 80072a0: 230f movs r3, #15 + 80072a2: 607b str r3, [r7, #4] + |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; + RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; + 80072a4: 2302 movs r3, #2 + 80072a6: 60bb str r3, [r7, #8] + RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; + 80072a8: 2300 movs r3, #0 + 80072aa: 60fb str r3, [r7, #12] + RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2; + 80072ac: f44f 6380 mov.w r3, #1024 @ 0x400 + 80072b0: 613b str r3, [r7, #16] + RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; + 80072b2: 2300 movs r3, #0 + 80072b4: 617b str r3, [r7, #20] + + if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) + 80072b6: 1d3b adds r3, r7, #4 + 80072b8: 2102 movs r1, #2 + 80072ba: 4618 mov r0, r3 + 80072bc: f000 fe32 bl 8007f24 + 80072c0: 4603 mov r3, r0 + 80072c2: 2b00 cmp r3, #0 + 80072c4: d001 beq.n 80072ca + { + Error_Handler(); + 80072c6: f000 f804 bl 80072d2 + } +} + 80072ca: bf00 nop + 80072cc: 3740 adds r7, #64 @ 0x40 + 80072ce: 46bd mov sp, r7 + 80072d0: bd80 pop {r7, pc} + +080072d2 : +/** + * @brief This function is executed in case of error occurrence. + * @retval None + */ +void Error_Handler(void) +{ + 80072d2: b480 push {r7} + 80072d4: 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"); + 80072d6: b672 cpsid i +} + 80072d8: 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) + 80072da: bf00 nop + 80072dc: e7fd b.n 80072da + ... + +080072e0 : +/* USER CODE END 0 */ +/** + * Initializes the Global MSP. + */ +void HAL_MspInit(void) +{ + 80072e0: b480 push {r7} + 80072e2: b085 sub sp, #20 + 80072e4: af00 add r7, sp, #0 + /* USER CODE BEGIN MspInit 0 */ + + /* USER CODE END MspInit 0 */ + + __HAL_RCC_AFIO_CLK_ENABLE(); + 80072e6: 4b15 ldr r3, [pc, #84] @ (800733c ) + 80072e8: 699b ldr r3, [r3, #24] + 80072ea: 4a14 ldr r2, [pc, #80] @ (800733c ) + 80072ec: f043 0301 orr.w r3, r3, #1 + 80072f0: 6193 str r3, [r2, #24] + 80072f2: 4b12 ldr r3, [pc, #72] @ (800733c ) + 80072f4: 699b ldr r3, [r3, #24] + 80072f6: f003 0301 and.w r3, r3, #1 + 80072fa: 60bb str r3, [r7, #8] + 80072fc: 68bb ldr r3, [r7, #8] + __HAL_RCC_PWR_CLK_ENABLE(); + 80072fe: 4b0f ldr r3, [pc, #60] @ (800733c ) + 8007300: 69db ldr r3, [r3, #28] + 8007302: 4a0e ldr r2, [pc, #56] @ (800733c ) + 8007304: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 + 8007308: 61d3 str r3, [r2, #28] + 800730a: 4b0c ldr r3, [pc, #48] @ (800733c ) + 800730c: 69db ldr r3, [r3, #28] + 800730e: f003 5380 and.w r3, r3, #268435456 @ 0x10000000 + 8007312: 607b str r3, [r7, #4] + 8007314: 687b ldr r3, [r7, #4] + + /* System interrupt init*/ + + /** NOJTAG: JTAG-DP Disabled and SW-DP Enabled + */ + __HAL_AFIO_REMAP_SWJ_NOJTAG(); + 8007316: 4b0a ldr r3, [pc, #40] @ (8007340 ) + 8007318: 685b ldr r3, [r3, #4] + 800731a: 60fb str r3, [r7, #12] + 800731c: 68fb ldr r3, [r7, #12] + 800731e: f023 63e0 bic.w r3, r3, #117440512 @ 0x7000000 + 8007322: 60fb str r3, [r7, #12] + 8007324: 68fb ldr r3, [r7, #12] + 8007326: f043 7300 orr.w r3, r3, #33554432 @ 0x2000000 + 800732a: 60fb str r3, [r7, #12] + 800732c: 4a04 ldr r2, [pc, #16] @ (8007340 ) + 800732e: 68fb ldr r3, [r7, #12] + 8007330: 6053 str r3, [r2, #4] + + /* USER CODE BEGIN MspInit 1 */ + + /* USER CODE END MspInit 1 */ +} + 8007332: bf00 nop + 8007334: 3714 adds r7, #20 + 8007336: 46bd mov sp, r7 + 8007338: bc80 pop {r7} + 800733a: 4770 bx lr + 800733c: 40021000 .word 0x40021000 + 8007340: 40010000 .word 0x40010000 + +08007344 : +/******************************************************************************/ +/** + * @brief This function handles Non maskable interrupt. + */ +void NMI_Handler(void) +{ + 8007344: b480 push {r7} + 8007346: 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) + 8007348: bf00 nop + 800734a: e7fd b.n 8007348 + +0800734c : + +/** + * @brief This function handles Hard fault interrupt. + */ +void HardFault_Handler(void) +{ + 800734c: b480 push {r7} + 800734e: af00 add r7, sp, #0 + /* USER CODE BEGIN HardFault_IRQn 0 */ + + /* USER CODE END HardFault_IRQn 0 */ + while (1) + 8007350: bf00 nop + 8007352: e7fd b.n 8007350 + +08007354 : + +/** + * @brief This function handles Memory management fault. + */ +void MemManage_Handler(void) +{ + 8007354: b480 push {r7} + 8007356: af00 add r7, sp, #0 + /* USER CODE BEGIN MemoryManagement_IRQn 0 */ + + /* USER CODE END MemoryManagement_IRQn 0 */ + while (1) + 8007358: bf00 nop + 800735a: e7fd b.n 8007358 + +0800735c : + +/** + * @brief This function handles Prefetch fault, memory access fault. + */ +void BusFault_Handler(void) +{ + 800735c: b480 push {r7} + 800735e: af00 add r7, sp, #0 + /* USER CODE BEGIN BusFault_IRQn 0 */ + + /* USER CODE END BusFault_IRQn 0 */ + while (1) + 8007360: bf00 nop + 8007362: e7fd b.n 8007360 + +08007364 : + +/** + * @brief This function handles Undefined instruction or illegal state. + */ +void UsageFault_Handler(void) +{ + 8007364: b480 push {r7} + 8007366: af00 add r7, sp, #0 + /* USER CODE BEGIN UsageFault_IRQn 0 */ + + /* USER CODE END UsageFault_IRQn 0 */ + while (1) + 8007368: bf00 nop + 800736a: e7fd b.n 8007368 + +0800736c : + +/** + * @brief This function handles System service call via SWI instruction. + */ +void SVC_Handler(void) +{ + 800736c: b480 push {r7} + 800736e: af00 add r7, sp, #0 + + /* USER CODE END SVCall_IRQn 0 */ + /* USER CODE BEGIN SVCall_IRQn 1 */ + + /* USER CODE END SVCall_IRQn 1 */ +} + 8007370: bf00 nop + 8007372: 46bd mov sp, r7 + 8007374: bc80 pop {r7} + 8007376: 4770 bx lr + +08007378 : + +/** + * @brief This function handles Debug monitor. + */ +void DebugMon_Handler(void) +{ + 8007378: b480 push {r7} + 800737a: af00 add r7, sp, #0 + + /* USER CODE END DebugMonitor_IRQn 0 */ + /* USER CODE BEGIN DebugMonitor_IRQn 1 */ + + /* USER CODE END DebugMonitor_IRQn 1 */ +} + 800737c: bf00 nop + 800737e: 46bd mov sp, r7 + 8007380: bc80 pop {r7} + 8007382: 4770 bx lr + +08007384 : + +/** + * @brief This function handles Pendable request for system service. + */ +void PendSV_Handler(void) +{ + 8007384: b480 push {r7} + 8007386: af00 add r7, sp, #0 + + /* USER CODE END PendSV_IRQn 0 */ + /* USER CODE BEGIN PendSV_IRQn 1 */ + + /* USER CODE END PendSV_IRQn 1 */ +} + 8007388: bf00 nop + 800738a: 46bd mov sp, r7 + 800738c: bc80 pop {r7} + 800738e: 4770 bx lr + +08007390 : + +/** + * @brief This function handles System tick timer. + */ +void SysTick_Handler(void) +{ + 8007390: b580 push {r7, lr} + 8007392: af00 add r7, sp, #0 + /* USER CODE BEGIN SysTick_IRQn 0 */ + + /* USER CODE END SysTick_IRQn 0 */ + HAL_IncTick(); + 8007394: f000 f874 bl 8007480 + /* USER CODE BEGIN SysTick_IRQn 1 */ + + /* USER CODE END SysTick_IRQn 1 */ +} + 8007398: bf00 nop + 800739a: bd80 pop {r7, pc} + +0800739c : + * @note This function should be used only after reset. + * @param None + * @retval None + */ +void SystemInit (void) +{ + 800739c: b480 push {r7} + 800739e: 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 */ +} + 80073a0: bf00 nop + 80073a2: 46bd mov sp, r7 + 80073a4: bc80 pop {r7} + 80073a6: 4770 bx lr + +080073a8 : + .weak Reset_Handler + .type Reset_Handler, %function +Reset_Handler: + +/* Copy the data segment initializers from flash to SRAM */ + ldr r0, =_sdata + 80073a8: 480c ldr r0, [pc, #48] @ (80073dc ) + ldr r1, =_edata + 80073aa: 490d ldr r1, [pc, #52] @ (80073e0 ) + ldr r2, =_sidata + 80073ac: 4a0d ldr r2, [pc, #52] @ (80073e4 ) + movs r3, #0 + 80073ae: 2300 movs r3, #0 + b LoopCopyDataInit + 80073b0: e002 b.n 80073b8 + +080073b2 : + +CopyDataInit: + ldr r4, [r2, r3] + 80073b2: 58d4 ldr r4, [r2, r3] + str r4, [r0, r3] + 80073b4: 50c4 str r4, [r0, r3] + adds r3, r3, #4 + 80073b6: 3304 adds r3, #4 + +080073b8 : + +LoopCopyDataInit: + adds r4, r0, r3 + 80073b8: 18c4 adds r4, r0, r3 + cmp r4, r1 + 80073ba: 428c cmp r4, r1 + bcc CopyDataInit + 80073bc: d3f9 bcc.n 80073b2 + +/* Zero fill the bss segment. */ + ldr r2, =_sbss + 80073be: 4a0a ldr r2, [pc, #40] @ (80073e8 ) + ldr r4, =_ebss + 80073c0: 4c0a ldr r4, [pc, #40] @ (80073ec ) + movs r3, #0 + 80073c2: 2300 movs r3, #0 + b LoopFillZerobss + 80073c4: e001 b.n 80073ca + +080073c6 : + +FillZerobss: + str r3, [r2] + 80073c6: 6013 str r3, [r2, #0] + adds r2, r2, #4 + 80073c8: 3204 adds r2, #4 + +080073ca : + +LoopFillZerobss: + cmp r2, r4 + 80073ca: 42a2 cmp r2, r4 + bcc FillZerobss + 80073cc: d3fb bcc.n 80073c6 + +/* Call the clock system intitialization function.*/ + bl SystemInit + 80073ce: f7ff ffe5 bl 800739c +/* Call static constructors */ + bl __libc_init_array + 80073d2: f000 ff15 bl 8008200 <__libc_init_array> +/* Call the application's entry point.*/ + bl main + 80073d6: f7ff fdf9 bl 8006fcc
      + bx lr + 80073da: 4770 bx lr + ldr r0, =_sdata + 80073dc: 20000000 .word 0x20000000 + ldr r1, =_edata + 80073e0: 20000010 .word 0x20000010 + ldr r2, =_sidata + 80073e4: 0800b244 .word 0x0800b244 + ldr r2, =_sbss + 80073e8: 20000010 .word 0x20000010 + ldr r4, =_ebss + 80073ec: 20000040 .word 0x20000040 + +080073f0 : + * @retval : None +*/ + .section .text.Default_Handler,"ax",%progbits +Default_Handler: +Infinite_Loop: + b Infinite_Loop + 80073f0: e7fe b.n 80073f0 + ... + +080073f4 : + * 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) +{ + 80073f4: b580 push {r7, lr} + 80073f6: 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(); + 80073f8: 4b08 ldr r3, [pc, #32] @ (800741c ) + 80073fa: 681b ldr r3, [r3, #0] + 80073fc: 4a07 ldr r2, [pc, #28] @ (800741c ) + 80073fe: f043 0310 orr.w r3, r3, #16 + 8007402: 6013 str r3, [r2, #0] +#endif +#endif /* PREFETCH_ENABLE */ + + /* Set Interrupt Group Priority */ + HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4); + 8007404: 2003 movs r0, #3 + 8007406: f000 f92b bl 8007660 + + /* Use systick as time base source and configure 1ms tick (default clock after Reset is HSI) */ + HAL_InitTick(TICK_INT_PRIORITY); + 800740a: 200f movs r0, #15 + 800740c: f000 f808 bl 8007420 + + /* Init the low level hardware */ + HAL_MspInit(); + 8007410: f7ff ff66 bl 80072e0 + + /* Return function status */ + return HAL_OK; + 8007414: 2300 movs r3, #0 +} + 8007416: 4618 mov r0, r3 + 8007418: bd80 pop {r7, pc} + 800741a: bf00 nop + 800741c: 40022000 .word 0x40022000 + +08007420 : + * implementation in user file. + * @param TickPriority Tick interrupt priority. + * @retval HAL status + */ +__weak HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority) +{ + 8007420: b580 push {r7, lr} + 8007422: b082 sub sp, #8 + 8007424: af00 add r7, sp, #0 + 8007426: 6078 str r0, [r7, #4] + /* Configure the SysTick to have interrupt in 1ms time basis*/ + if (HAL_SYSTICK_Config(SystemCoreClock / (1000U / uwTickFreq)) > 0U) + 8007428: 4b12 ldr r3, [pc, #72] @ (8007474 ) + 800742a: 681a ldr r2, [r3, #0] + 800742c: 4b12 ldr r3, [pc, #72] @ (8007478 ) + 800742e: 781b ldrb r3, [r3, #0] + 8007430: 4619 mov r1, r3 + 8007432: f44f 737a mov.w r3, #1000 @ 0x3e8 + 8007436: fbb3 f3f1 udiv r3, r3, r1 + 800743a: fbb2 f3f3 udiv r3, r2, r3 + 800743e: 4618 mov r0, r3 + 8007440: f000 f935 bl 80076ae + 8007444: 4603 mov r3, r0 + 8007446: 2b00 cmp r3, #0 + 8007448: d001 beq.n 800744e + { + return HAL_ERROR; + 800744a: 2301 movs r3, #1 + 800744c: e00e b.n 800746c + } + + /* Configure the SysTick IRQ priority */ + if (TickPriority < (1UL << __NVIC_PRIO_BITS)) + 800744e: 687b ldr r3, [r7, #4] + 8007450: 2b0f cmp r3, #15 + 8007452: d80a bhi.n 800746a + { + HAL_NVIC_SetPriority(SysTick_IRQn, TickPriority, 0U); + 8007454: 2200 movs r2, #0 + 8007456: 6879 ldr r1, [r7, #4] + 8007458: f04f 30ff mov.w r0, #4294967295 @ 0xffffffff + 800745c: f000 f90b bl 8007676 + uwTickPrio = TickPriority; + 8007460: 4a06 ldr r2, [pc, #24] @ (800747c ) + 8007462: 687b ldr r3, [r7, #4] + 8007464: 6013 str r3, [r2, #0] + { + return HAL_ERROR; + } + + /* Return function status */ + return HAL_OK; + 8007466: 2300 movs r3, #0 + 8007468: e000 b.n 800746c + return HAL_ERROR; + 800746a: 2301 movs r3, #1 +} + 800746c: 4618 mov r0, r3 + 800746e: 3708 adds r7, #8 + 8007470: 46bd mov sp, r7 + 8007472: bd80 pop {r7, pc} + 8007474: 20000004 .word 0x20000004 + 8007478: 2000000c .word 0x2000000c + 800747c: 20000008 .word 0x20000008 + +08007480 : + * @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) +{ + 8007480: b480 push {r7} + 8007482: af00 add r7, sp, #0 + uwTick += uwTickFreq; + 8007484: 4b05 ldr r3, [pc, #20] @ (800749c ) + 8007486: 781b ldrb r3, [r3, #0] + 8007488: 461a mov r2, r3 + 800748a: 4b05 ldr r3, [pc, #20] @ (80074a0 ) + 800748c: 681b ldr r3, [r3, #0] + 800748e: 4413 add r3, r2 + 8007490: 4a03 ldr r2, [pc, #12] @ (80074a0 ) + 8007492: 6013 str r3, [r2, #0] +} + 8007494: bf00 nop + 8007496: 46bd mov sp, r7 + 8007498: bc80 pop {r7} + 800749a: 4770 bx lr + 800749c: 2000000c .word 0x2000000c + 80074a0: 2000003c .word 0x2000003c + +080074a4 : + * @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) +{ + 80074a4: b480 push {r7} + 80074a6: af00 add r7, sp, #0 + return uwTick; + 80074a8: 4b02 ldr r3, [pc, #8] @ (80074b4 ) + 80074aa: 681b ldr r3, [r3, #0] +} + 80074ac: 4618 mov r0, r3 + 80074ae: 46bd mov sp, r7 + 80074b0: bc80 pop {r7} + 80074b2: 4770 bx lr + 80074b4: 2000003c .word 0x2000003c + +080074b8 : + * implementations in user file. + * @param Delay specifies the delay time length, in milliseconds. + * @retval None + */ +__weak void HAL_Delay(uint32_t Delay) +{ + 80074b8: b580 push {r7, lr} + 80074ba: b084 sub sp, #16 + 80074bc: af00 add r7, sp, #0 + 80074be: 6078 str r0, [r7, #4] + uint32_t tickstart = HAL_GetTick(); + 80074c0: f7ff fff0 bl 80074a4 + 80074c4: 60b8 str r0, [r7, #8] + uint32_t wait = Delay; + 80074c6: 687b ldr r3, [r7, #4] + 80074c8: 60fb str r3, [r7, #12] + + /* Add a freq to guarantee minimum wait */ + if (wait < HAL_MAX_DELAY) + 80074ca: 68fb ldr r3, [r7, #12] + 80074cc: f1b3 3fff cmp.w r3, #4294967295 @ 0xffffffff + 80074d0: d005 beq.n 80074de + { + wait += (uint32_t)(uwTickFreq); + 80074d2: 4b0a ldr r3, [pc, #40] @ (80074fc ) + 80074d4: 781b ldrb r3, [r3, #0] + 80074d6: 461a mov r2, r3 + 80074d8: 68fb ldr r3, [r7, #12] + 80074da: 4413 add r3, r2 + 80074dc: 60fb str r3, [r7, #12] + } + + while ((HAL_GetTick() - tickstart) < wait) + 80074de: bf00 nop + 80074e0: f7ff ffe0 bl 80074a4 + 80074e4: 4602 mov r2, r0 + 80074e6: 68bb ldr r3, [r7, #8] + 80074e8: 1ad3 subs r3, r2, r3 + 80074ea: 68fa ldr r2, [r7, #12] + 80074ec: 429a cmp r2, r3 + 80074ee: d8f7 bhi.n 80074e0 + { + } +} + 80074f0: bf00 nop + 80074f2: bf00 nop + 80074f4: 3710 adds r7, #16 + 80074f6: 46bd mov sp, r7 + 80074f8: bd80 pop {r7, pc} + 80074fa: bf00 nop + 80074fc: 2000000c .word 0x2000000c + +08007500 <__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) +{ + 8007500: b480 push {r7} + 8007502: b085 sub sp, #20 + 8007504: af00 add r7, sp, #0 + 8007506: 6078 str r0, [r7, #4] + uint32_t reg_value; + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + 8007508: 687b ldr r3, [r7, #4] + 800750a: f003 0307 and.w r3, r3, #7 + 800750e: 60fb str r3, [r7, #12] + + reg_value = SCB->AIRCR; /* read old register configuration */ + 8007510: 4b0c ldr r3, [pc, #48] @ (8007544 <__NVIC_SetPriorityGrouping+0x44>) + 8007512: 68db ldr r3, [r3, #12] + 8007514: 60bb str r3, [r7, #8] + reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ + 8007516: 68ba ldr r2, [r7, #8] + 8007518: f64f 03ff movw r3, #63743 @ 0xf8ff + 800751c: 4013 ands r3, r2 + 800751e: 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 */ + 8007520: 68fb ldr r3, [r7, #12] + 8007522: 021a lsls r2, r3, #8 + ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + 8007524: 68bb ldr r3, [r7, #8] + 8007526: 4313 orrs r3, r2 + reg_value = (reg_value | + 8007528: f043 63bf orr.w r3, r3, #100139008 @ 0x5f80000 + 800752c: f443 3300 orr.w r3, r3, #131072 @ 0x20000 + 8007530: 60bb str r3, [r7, #8] + SCB->AIRCR = reg_value; + 8007532: 4a04 ldr r2, [pc, #16] @ (8007544 <__NVIC_SetPriorityGrouping+0x44>) + 8007534: 68bb ldr r3, [r7, #8] + 8007536: 60d3 str r3, [r2, #12] +} + 8007538: bf00 nop + 800753a: 3714 adds r7, #20 + 800753c: 46bd mov sp, r7 + 800753e: bc80 pop {r7} + 8007540: 4770 bx lr + 8007542: bf00 nop + 8007544: e000ed00 .word 0xe000ed00 + +08007548 <__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) +{ + 8007548: b480 push {r7} + 800754a: af00 add r7, sp, #0 + return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); + 800754c: 4b04 ldr r3, [pc, #16] @ (8007560 <__NVIC_GetPriorityGrouping+0x18>) + 800754e: 68db ldr r3, [r3, #12] + 8007550: 0a1b lsrs r3, r3, #8 + 8007552: f003 0307 and.w r3, r3, #7 +} + 8007556: 4618 mov r0, r3 + 8007558: 46bd mov sp, r7 + 800755a: bc80 pop {r7} + 800755c: 4770 bx lr + 800755e: bf00 nop + 8007560: e000ed00 .word 0xe000ed00 + +08007564 <__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) +{ + 8007564: b480 push {r7} + 8007566: b083 sub sp, #12 + 8007568: af00 add r7, sp, #0 + 800756a: 4603 mov r3, r0 + 800756c: 6039 str r1, [r7, #0] + 800756e: 71fb strb r3, [r7, #7] + if ((int32_t)(IRQn) >= 0) + 8007570: f997 3007 ldrsb.w r3, [r7, #7] + 8007574: 2b00 cmp r3, #0 + 8007576: db0a blt.n 800758e <__NVIC_SetPriority+0x2a> + { + NVIC->IP[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + 8007578: 683b ldr r3, [r7, #0] + 800757a: b2da uxtb r2, r3 + 800757c: 490c ldr r1, [pc, #48] @ (80075b0 <__NVIC_SetPriority+0x4c>) + 800757e: f997 3007 ldrsb.w r3, [r7, #7] + 8007582: 0112 lsls r2, r2, #4 + 8007584: b2d2 uxtb r2, r2 + 8007586: 440b add r3, r1 + 8007588: 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); + } +} + 800758c: e00a b.n 80075a4 <__NVIC_SetPriority+0x40> + SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + 800758e: 683b ldr r3, [r7, #0] + 8007590: b2da uxtb r2, r3 + 8007592: 4908 ldr r1, [pc, #32] @ (80075b4 <__NVIC_SetPriority+0x50>) + 8007594: 79fb ldrb r3, [r7, #7] + 8007596: f003 030f and.w r3, r3, #15 + 800759a: 3b04 subs r3, #4 + 800759c: 0112 lsls r2, r2, #4 + 800759e: b2d2 uxtb r2, r2 + 80075a0: 440b add r3, r1 + 80075a2: 761a strb r2, [r3, #24] +} + 80075a4: bf00 nop + 80075a6: 370c adds r7, #12 + 80075a8: 46bd mov sp, r7 + 80075aa: bc80 pop {r7} + 80075ac: 4770 bx lr + 80075ae: bf00 nop + 80075b0: e000e100 .word 0xe000e100 + 80075b4: e000ed00 .word 0xe000ed00 + +080075b8 : + \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) +{ + 80075b8: b480 push {r7} + 80075ba: b089 sub sp, #36 @ 0x24 + 80075bc: af00 add r7, sp, #0 + 80075be: 60f8 str r0, [r7, #12] + 80075c0: 60b9 str r1, [r7, #8] + 80075c2: 607a str r2, [r7, #4] + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + 80075c4: 68fb ldr r3, [r7, #12] + 80075c6: f003 0307 and.w r3, r3, #7 + 80075ca: 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); + 80075cc: 69fb ldr r3, [r7, #28] + 80075ce: f1c3 0307 rsb r3, r3, #7 + 80075d2: 2b04 cmp r3, #4 + 80075d4: bf28 it cs + 80075d6: 2304 movcs r3, #4 + 80075d8: 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)); + 80075da: 69fb ldr r3, [r7, #28] + 80075dc: 3304 adds r3, #4 + 80075de: 2b06 cmp r3, #6 + 80075e0: d902 bls.n 80075e8 + 80075e2: 69fb ldr r3, [r7, #28] + 80075e4: 3b03 subs r3, #3 + 80075e6: e000 b.n 80075ea + 80075e8: 2300 movs r3, #0 + 80075ea: 617b str r3, [r7, #20] + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + 80075ec: f04f 32ff mov.w r2, #4294967295 @ 0xffffffff + 80075f0: 69bb ldr r3, [r7, #24] + 80075f2: fa02 f303 lsl.w r3, r2, r3 + 80075f6: 43da mvns r2, r3 + 80075f8: 68bb ldr r3, [r7, #8] + 80075fa: 401a ands r2, r3 + 80075fc: 697b ldr r3, [r7, #20] + 80075fe: 409a lsls r2, r3 + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + 8007600: f04f 31ff mov.w r1, #4294967295 @ 0xffffffff + 8007604: 697b ldr r3, [r7, #20] + 8007606: fa01 f303 lsl.w r3, r1, r3 + 800760a: 43d9 mvns r1, r3 + 800760c: 687b ldr r3, [r7, #4] + 800760e: 400b ands r3, r1 + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + 8007610: 4313 orrs r3, r2 + ); +} + 8007612: 4618 mov r0, r3 + 8007614: 3724 adds r7, #36 @ 0x24 + 8007616: 46bd mov sp, r7 + 8007618: bc80 pop {r7} + 800761a: 4770 bx lr + +0800761c : + \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) +{ + 800761c: b580 push {r7, lr} + 800761e: b082 sub sp, #8 + 8007620: af00 add r7, sp, #0 + 8007622: 6078 str r0, [r7, #4] + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + 8007624: 687b ldr r3, [r7, #4] + 8007626: 3b01 subs r3, #1 + 8007628: f1b3 7f80 cmp.w r3, #16777216 @ 0x1000000 + 800762c: d301 bcc.n 8007632 + { + return (1UL); /* Reload value impossible */ + 800762e: 2301 movs r3, #1 + 8007630: e00f b.n 8007652 + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + 8007632: 4a0a ldr r2, [pc, #40] @ (800765c ) + 8007634: 687b ldr r3, [r7, #4] + 8007636: 3b01 subs r3, #1 + 8007638: 6053 str r3, [r2, #4] + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + 800763a: 210f movs r1, #15 + 800763c: f04f 30ff mov.w r0, #4294967295 @ 0xffffffff + 8007640: f7ff ff90 bl 8007564 <__NVIC_SetPriority> + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + 8007644: 4b05 ldr r3, [pc, #20] @ (800765c ) + 8007646: 2200 movs r2, #0 + 8007648: 609a str r2, [r3, #8] + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + 800764a: 4b04 ldr r3, [pc, #16] @ (800765c ) + 800764c: 2207 movs r2, #7 + 800764e: 601a str r2, [r3, #0] + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ + 8007650: 2300 movs r3, #0 +} + 8007652: 4618 mov r0, r3 + 8007654: 3708 adds r7, #8 + 8007656: 46bd mov sp, r7 + 8007658: bd80 pop {r7, pc} + 800765a: bf00 nop + 800765c: e000e010 .word 0xe000e010 + +08007660 : + * @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) +{ + 8007660: b580 push {r7, lr} + 8007662: b082 sub sp, #8 + 8007664: af00 add r7, sp, #0 + 8007666: 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); + 8007668: 6878 ldr r0, [r7, #4] + 800766a: f7ff ff49 bl 8007500 <__NVIC_SetPriorityGrouping> +} + 800766e: bf00 nop + 8007670: 3708 adds r7, #8 + 8007672: 46bd mov sp, r7 + 8007674: bd80 pop {r7, pc} + +08007676 : + * 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) +{ + 8007676: b580 push {r7, lr} + 8007678: b086 sub sp, #24 + 800767a: af00 add r7, sp, #0 + 800767c: 4603 mov r3, r0 + 800767e: 60b9 str r1, [r7, #8] + 8007680: 607a str r2, [r7, #4] + 8007682: 73fb strb r3, [r7, #15] + uint32_t prioritygroup = 0x00U; + 8007684: 2300 movs r3, #0 + 8007686: 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(); + 8007688: f7ff ff5e bl 8007548 <__NVIC_GetPriorityGrouping> + 800768c: 6178 str r0, [r7, #20] + + NVIC_SetPriority(IRQn, NVIC_EncodePriority(prioritygroup, PreemptPriority, SubPriority)); + 800768e: 687a ldr r2, [r7, #4] + 8007690: 68b9 ldr r1, [r7, #8] + 8007692: 6978 ldr r0, [r7, #20] + 8007694: f7ff ff90 bl 80075b8 + 8007698: 4602 mov r2, r0 + 800769a: f997 300f ldrsb.w r3, [r7, #15] + 800769e: 4611 mov r1, r2 + 80076a0: 4618 mov r0, r3 + 80076a2: f7ff ff5f bl 8007564 <__NVIC_SetPriority> +} + 80076a6: bf00 nop + 80076a8: 3718 adds r7, #24 + 80076aa: 46bd mov sp, r7 + 80076ac: bd80 pop {r7, pc} + +080076ae : + * @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) +{ + 80076ae: b580 push {r7, lr} + 80076b0: b082 sub sp, #8 + 80076b2: af00 add r7, sp, #0 + 80076b4: 6078 str r0, [r7, #4] + return SysTick_Config(TicksNumb); + 80076b6: 6878 ldr r0, [r7, #4] + 80076b8: f7ff ffb0 bl 800761c + 80076bc: 4603 mov r3, r0 +} + 80076be: 4618 mov r0, r3 + 80076c0: 3708 adds r7, #8 + 80076c2: 46bd mov sp, r7 + 80076c4: bd80 pop {r7, pc} + ... + +080076c8 : + * @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) +{ + 80076c8: b480 push {r7} + 80076ca: b08b sub sp, #44 @ 0x2c + 80076cc: af00 add r7, sp, #0 + 80076ce: 6078 str r0, [r7, #4] + 80076d0: 6039 str r1, [r7, #0] + uint32_t position = 0x00u; + 80076d2: 2300 movs r3, #0 + 80076d4: 627b str r3, [r7, #36] @ 0x24 + uint32_t ioposition; + uint32_t iocurrent; + uint32_t temp; + uint32_t config = 0x00u; + 80076d6: 2300 movs r3, #0 + 80076d8: 623b str r3, [r7, #32] + 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) + 80076da: e179 b.n 80079d0 + { + /* Get the IO position */ + ioposition = (0x01uL << position); + 80076dc: 2201 movs r2, #1 + 80076de: 6a7b ldr r3, [r7, #36] @ 0x24 + 80076e0: fa02 f303 lsl.w r3, r2, r3 + 80076e4: 61fb str r3, [r7, #28] + + /* Get the current IO position */ + iocurrent = (uint32_t)(GPIO_Init->Pin) & ioposition; + 80076e6: 683b ldr r3, [r7, #0] + 80076e8: 681b ldr r3, [r3, #0] + 80076ea: 69fa ldr r2, [r7, #28] + 80076ec: 4013 ands r3, r2 + 80076ee: 61bb str r3, [r7, #24] + + if (iocurrent == ioposition) + 80076f0: 69ba ldr r2, [r7, #24] + 80076f2: 69fb ldr r3, [r7, #28] + 80076f4: 429a cmp r2, r3 + 80076f6: f040 8168 bne.w 80079ca + { + /* 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) + 80076fa: 683b ldr r3, [r7, #0] + 80076fc: 685b ldr r3, [r3, #4] + 80076fe: 4a96 ldr r2, [pc, #600] @ (8007958 ) + 8007700: 4293 cmp r3, r2 + 8007702: d05e beq.n 80077c2 + 8007704: 4a94 ldr r2, [pc, #592] @ (8007958 ) + 8007706: 4293 cmp r3, r2 + 8007708: d875 bhi.n 80077f6 + 800770a: 4a94 ldr r2, [pc, #592] @ (800795c ) + 800770c: 4293 cmp r3, r2 + 800770e: d058 beq.n 80077c2 + 8007710: 4a92 ldr r2, [pc, #584] @ (800795c ) + 8007712: 4293 cmp r3, r2 + 8007714: d86f bhi.n 80077f6 + 8007716: 4a92 ldr r2, [pc, #584] @ (8007960 ) + 8007718: 4293 cmp r3, r2 + 800771a: d052 beq.n 80077c2 + 800771c: 4a90 ldr r2, [pc, #576] @ (8007960 ) + 800771e: 4293 cmp r3, r2 + 8007720: d869 bhi.n 80077f6 + 8007722: 4a90 ldr r2, [pc, #576] @ (8007964 ) + 8007724: 4293 cmp r3, r2 + 8007726: d04c beq.n 80077c2 + 8007728: 4a8e ldr r2, [pc, #568] @ (8007964 ) + 800772a: 4293 cmp r3, r2 + 800772c: d863 bhi.n 80077f6 + 800772e: 4a8e ldr r2, [pc, #568] @ (8007968 ) + 8007730: 4293 cmp r3, r2 + 8007732: d046 beq.n 80077c2 + 8007734: 4a8c ldr r2, [pc, #560] @ (8007968 ) + 8007736: 4293 cmp r3, r2 + 8007738: d85d bhi.n 80077f6 + 800773a: 2b12 cmp r3, #18 + 800773c: d82a bhi.n 8007794 + 800773e: 2b12 cmp r3, #18 + 8007740: d859 bhi.n 80077f6 + 8007742: a201 add r2, pc, #4 @ (adr r2, 8007748 ) + 8007744: f852 f023 ldr.w pc, [r2, r3, lsl #2] + 8007748: 080077c3 .word 0x080077c3 + 800774c: 0800779d .word 0x0800779d + 8007750: 080077af .word 0x080077af + 8007754: 080077f1 .word 0x080077f1 + 8007758: 080077f7 .word 0x080077f7 + 800775c: 080077f7 .word 0x080077f7 + 8007760: 080077f7 .word 0x080077f7 + 8007764: 080077f7 .word 0x080077f7 + 8007768: 080077f7 .word 0x080077f7 + 800776c: 080077f7 .word 0x080077f7 + 8007770: 080077f7 .word 0x080077f7 + 8007774: 080077f7 .word 0x080077f7 + 8007778: 080077f7 .word 0x080077f7 + 800777c: 080077f7 .word 0x080077f7 + 8007780: 080077f7 .word 0x080077f7 + 8007784: 080077f7 .word 0x080077f7 + 8007788: 080077f7 .word 0x080077f7 + 800778c: 080077a5 .word 0x080077a5 + 8007790: 080077b9 .word 0x080077b9 + 8007794: 4a75 ldr r2, [pc, #468] @ (800796c ) + 8007796: 4293 cmp r3, r2 + 8007798: d013 beq.n 80077c2 + config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_ANALOG; + break; + + /* Parameters are checked with assert_param */ + default: + break; + 800779a: e02c b.n 80077f6 + config = GPIO_Init->Speed + GPIO_CR_CNF_GP_OUTPUT_PP; + 800779c: 683b ldr r3, [r7, #0] + 800779e: 68db ldr r3, [r3, #12] + 80077a0: 623b str r3, [r7, #32] + break; + 80077a2: e029 b.n 80077f8 + config = GPIO_Init->Speed + GPIO_CR_CNF_GP_OUTPUT_OD; + 80077a4: 683b ldr r3, [r7, #0] + 80077a6: 68db ldr r3, [r3, #12] + 80077a8: 3304 adds r3, #4 + 80077aa: 623b str r3, [r7, #32] + break; + 80077ac: e024 b.n 80077f8 + config = GPIO_Init->Speed + GPIO_CR_CNF_AF_OUTPUT_PP; + 80077ae: 683b ldr r3, [r7, #0] + 80077b0: 68db ldr r3, [r3, #12] + 80077b2: 3308 adds r3, #8 + 80077b4: 623b str r3, [r7, #32] + break; + 80077b6: e01f b.n 80077f8 + config = GPIO_Init->Speed + GPIO_CR_CNF_AF_OUTPUT_OD; + 80077b8: 683b ldr r3, [r7, #0] + 80077ba: 68db ldr r3, [r3, #12] + 80077bc: 330c adds r3, #12 + 80077be: 623b str r3, [r7, #32] + break; + 80077c0: e01a b.n 80077f8 + if (GPIO_Init->Pull == GPIO_NOPULL) + 80077c2: 683b ldr r3, [r7, #0] + 80077c4: 689b ldr r3, [r3, #8] + 80077c6: 2b00 cmp r3, #0 + 80077c8: d102 bne.n 80077d0 + config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_INPUT_FLOATING; + 80077ca: 2304 movs r3, #4 + 80077cc: 623b str r3, [r7, #32] + break; + 80077ce: e013 b.n 80077f8 + else if (GPIO_Init->Pull == GPIO_PULLUP) + 80077d0: 683b ldr r3, [r7, #0] + 80077d2: 689b ldr r3, [r3, #8] + 80077d4: 2b01 cmp r3, #1 + 80077d6: d105 bne.n 80077e4 + config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_INPUT_PU_PD; + 80077d8: 2308 movs r3, #8 + 80077da: 623b str r3, [r7, #32] + GPIOx->BSRR = ioposition; + 80077dc: 687b ldr r3, [r7, #4] + 80077de: 69fa ldr r2, [r7, #28] + 80077e0: 611a str r2, [r3, #16] + break; + 80077e2: e009 b.n 80077f8 + config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_INPUT_PU_PD; + 80077e4: 2308 movs r3, #8 + 80077e6: 623b str r3, [r7, #32] + GPIOx->BRR = ioposition; + 80077e8: 687b ldr r3, [r7, #4] + 80077ea: 69fa ldr r2, [r7, #28] + 80077ec: 615a str r2, [r3, #20] + break; + 80077ee: e003 b.n 80077f8 + config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_ANALOG; + 80077f0: 2300 movs r3, #0 + 80077f2: 623b str r3, [r7, #32] + break; + 80077f4: e000 b.n 80077f8 + break; + 80077f6: bf00 nop + } + + /* 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; + 80077f8: 69bb ldr r3, [r7, #24] + 80077fa: 2bff cmp r3, #255 @ 0xff + 80077fc: d801 bhi.n 8007802 + 80077fe: 687b ldr r3, [r7, #4] + 8007800: e001 b.n 8007806 + 8007802: 687b ldr r3, [r7, #4] + 8007804: 3304 adds r3, #4 + 8007806: 617b str r3, [r7, #20] + registeroffset = (iocurrent < GPIO_PIN_8) ? (position << 2u) : ((position - 8u) << 2u); + 8007808: 69bb ldr r3, [r7, #24] + 800780a: 2bff cmp r3, #255 @ 0xff + 800780c: d802 bhi.n 8007814 + 800780e: 6a7b ldr r3, [r7, #36] @ 0x24 + 8007810: 009b lsls r3, r3, #2 + 8007812: e002 b.n 800781a + 8007814: 6a7b ldr r3, [r7, #36] @ 0x24 + 8007816: 3b08 subs r3, #8 + 8007818: 009b lsls r3, r3, #2 + 800781a: 613b str r3, [r7, #16] + + /* Apply the new configuration of the pin to the register */ + MODIFY_REG((*configregister), ((GPIO_CRL_MODE0 | GPIO_CRL_CNF0) << registeroffset), (config << registeroffset)); + 800781c: 697b ldr r3, [r7, #20] + 800781e: 681a ldr r2, [r3, #0] + 8007820: 210f movs r1, #15 + 8007822: 693b ldr r3, [r7, #16] + 8007824: fa01 f303 lsl.w r3, r1, r3 + 8007828: 43db mvns r3, r3 + 800782a: 401a ands r2, r3 + 800782c: 6a39 ldr r1, [r7, #32] + 800782e: 693b ldr r3, [r7, #16] + 8007830: fa01 f303 lsl.w r3, r1, r3 + 8007834: 431a orrs r2, r3 + 8007836: 697b ldr r3, [r7, #20] + 8007838: 601a str r2, [r3, #0] + + /*--------------------- EXTI Mode Configuration ------------------------*/ + /* Configure the External Interrupt or event for the current IO */ + if ((GPIO_Init->Mode & EXTI_MODE) == EXTI_MODE) + 800783a: 683b ldr r3, [r7, #0] + 800783c: 685b ldr r3, [r3, #4] + 800783e: f003 5380 and.w r3, r3, #268435456 @ 0x10000000 + 8007842: 2b00 cmp r3, #0 + 8007844: f000 80c1 beq.w 80079ca + { + /* Enable AFIO Clock */ + __HAL_RCC_AFIO_CLK_ENABLE(); + 8007848: 4b49 ldr r3, [pc, #292] @ (8007970 ) + 800784a: 699b ldr r3, [r3, #24] + 800784c: 4a48 ldr r2, [pc, #288] @ (8007970 ) + 800784e: f043 0301 orr.w r3, r3, #1 + 8007852: 6193 str r3, [r2, #24] + 8007854: 4b46 ldr r3, [pc, #280] @ (8007970 ) + 8007856: 699b ldr r3, [r3, #24] + 8007858: f003 0301 and.w r3, r3, #1 + 800785c: 60bb str r3, [r7, #8] + 800785e: 68bb ldr r3, [r7, #8] + temp = AFIO->EXTICR[position >> 2u]; + 8007860: 4a44 ldr r2, [pc, #272] @ (8007974 ) + 8007862: 6a7b ldr r3, [r7, #36] @ 0x24 + 8007864: 089b lsrs r3, r3, #2 + 8007866: 3302 adds r3, #2 + 8007868: f852 3023 ldr.w r3, [r2, r3, lsl #2] + 800786c: 60fb str r3, [r7, #12] + CLEAR_BIT(temp, (0x0Fu) << (4u * (position & 0x03u))); + 800786e: 6a7b ldr r3, [r7, #36] @ 0x24 + 8007870: f003 0303 and.w r3, r3, #3 + 8007874: 009b lsls r3, r3, #2 + 8007876: 220f movs r2, #15 + 8007878: fa02 f303 lsl.w r3, r2, r3 + 800787c: 43db mvns r3, r3 + 800787e: 68fa ldr r2, [r7, #12] + 8007880: 4013 ands r3, r2 + 8007882: 60fb str r3, [r7, #12] + SET_BIT(temp, (GPIO_GET_INDEX(GPIOx)) << (4u * (position & 0x03u))); + 8007884: 687b ldr r3, [r7, #4] + 8007886: 4a3c ldr r2, [pc, #240] @ (8007978 ) + 8007888: 4293 cmp r3, r2 + 800788a: d01f beq.n 80078cc + 800788c: 687b ldr r3, [r7, #4] + 800788e: 4a3b ldr r2, [pc, #236] @ (800797c ) + 8007890: 4293 cmp r3, r2 + 8007892: d019 beq.n 80078c8 + 8007894: 687b ldr r3, [r7, #4] + 8007896: 4a3a ldr r2, [pc, #232] @ (8007980 ) + 8007898: 4293 cmp r3, r2 + 800789a: d013 beq.n 80078c4 + 800789c: 687b ldr r3, [r7, #4] + 800789e: 4a39 ldr r2, [pc, #228] @ (8007984 ) + 80078a0: 4293 cmp r3, r2 + 80078a2: d00d beq.n 80078c0 + 80078a4: 687b ldr r3, [r7, #4] + 80078a6: 4a38 ldr r2, [pc, #224] @ (8007988 ) + 80078a8: 4293 cmp r3, r2 + 80078aa: d007 beq.n 80078bc + 80078ac: 687b ldr r3, [r7, #4] + 80078ae: 4a37 ldr r2, [pc, #220] @ (800798c ) + 80078b0: 4293 cmp r3, r2 + 80078b2: d101 bne.n 80078b8 + 80078b4: 2305 movs r3, #5 + 80078b6: e00a b.n 80078ce + 80078b8: 2306 movs r3, #6 + 80078ba: e008 b.n 80078ce + 80078bc: 2304 movs r3, #4 + 80078be: e006 b.n 80078ce + 80078c0: 2303 movs r3, #3 + 80078c2: e004 b.n 80078ce + 80078c4: 2302 movs r3, #2 + 80078c6: e002 b.n 80078ce + 80078c8: 2301 movs r3, #1 + 80078ca: e000 b.n 80078ce + 80078cc: 2300 movs r3, #0 + 80078ce: 6a7a ldr r2, [r7, #36] @ 0x24 + 80078d0: f002 0203 and.w r2, r2, #3 + 80078d4: 0092 lsls r2, r2, #2 + 80078d6: 4093 lsls r3, r2 + 80078d8: 68fa ldr r2, [r7, #12] + 80078da: 4313 orrs r3, r2 + 80078dc: 60fb str r3, [r7, #12] + AFIO->EXTICR[position >> 2u] = temp; + 80078de: 4925 ldr r1, [pc, #148] @ (8007974 ) + 80078e0: 6a7b ldr r3, [r7, #36] @ 0x24 + 80078e2: 089b lsrs r3, r3, #2 + 80078e4: 3302 adds r3, #2 + 80078e6: 68fa ldr r2, [r7, #12] + 80078e8: f841 2023 str.w r2, [r1, r3, lsl #2] + + + /* Configure the interrupt mask */ + if ((GPIO_Init->Mode & GPIO_MODE_IT) == GPIO_MODE_IT) + 80078ec: 683b ldr r3, [r7, #0] + 80078ee: 685b ldr r3, [r3, #4] + 80078f0: f403 3380 and.w r3, r3, #65536 @ 0x10000 + 80078f4: 2b00 cmp r3, #0 + 80078f6: d006 beq.n 8007906 + { + SET_BIT(EXTI->IMR, iocurrent); + 80078f8: 4b25 ldr r3, [pc, #148] @ (8007990 ) + 80078fa: 681a ldr r2, [r3, #0] + 80078fc: 4924 ldr r1, [pc, #144] @ (8007990 ) + 80078fe: 69bb ldr r3, [r7, #24] + 8007900: 4313 orrs r3, r2 + 8007902: 600b str r3, [r1, #0] + 8007904: e006 b.n 8007914 + } + else + { + CLEAR_BIT(EXTI->IMR, iocurrent); + 8007906: 4b22 ldr r3, [pc, #136] @ (8007990 ) + 8007908: 681a ldr r2, [r3, #0] + 800790a: 69bb ldr r3, [r7, #24] + 800790c: 43db mvns r3, r3 + 800790e: 4920 ldr r1, [pc, #128] @ (8007990 ) + 8007910: 4013 ands r3, r2 + 8007912: 600b str r3, [r1, #0] + } + + /* Configure the event mask */ + if ((GPIO_Init->Mode & GPIO_MODE_EVT) == GPIO_MODE_EVT) + 8007914: 683b ldr r3, [r7, #0] + 8007916: 685b ldr r3, [r3, #4] + 8007918: f403 3300 and.w r3, r3, #131072 @ 0x20000 + 800791c: 2b00 cmp r3, #0 + 800791e: d006 beq.n 800792e + { + SET_BIT(EXTI->EMR, iocurrent); + 8007920: 4b1b ldr r3, [pc, #108] @ (8007990 ) + 8007922: 685a ldr r2, [r3, #4] + 8007924: 491a ldr r1, [pc, #104] @ (8007990 ) + 8007926: 69bb ldr r3, [r7, #24] + 8007928: 4313 orrs r3, r2 + 800792a: 604b str r3, [r1, #4] + 800792c: e006 b.n 800793c + } + else + { + CLEAR_BIT(EXTI->EMR, iocurrent); + 800792e: 4b18 ldr r3, [pc, #96] @ (8007990 ) + 8007930: 685a ldr r2, [r3, #4] + 8007932: 69bb ldr r3, [r7, #24] + 8007934: 43db mvns r3, r3 + 8007936: 4916 ldr r1, [pc, #88] @ (8007990 ) + 8007938: 4013 ands r3, r2 + 800793a: 604b str r3, [r1, #4] + } + + /* Enable or disable the rising trigger */ + if ((GPIO_Init->Mode & RISING_EDGE) == RISING_EDGE) + 800793c: 683b ldr r3, [r7, #0] + 800793e: 685b ldr r3, [r3, #4] + 8007940: f403 1380 and.w r3, r3, #1048576 @ 0x100000 + 8007944: 2b00 cmp r3, #0 + 8007946: d025 beq.n 8007994 + { + SET_BIT(EXTI->RTSR, iocurrent); + 8007948: 4b11 ldr r3, [pc, #68] @ (8007990 ) + 800794a: 689a ldr r2, [r3, #8] + 800794c: 4910 ldr r1, [pc, #64] @ (8007990 ) + 800794e: 69bb ldr r3, [r7, #24] + 8007950: 4313 orrs r3, r2 + 8007952: 608b str r3, [r1, #8] + 8007954: e025 b.n 80079a2 + 8007956: bf00 nop + 8007958: 10320000 .word 0x10320000 + 800795c: 10310000 .word 0x10310000 + 8007960: 10220000 .word 0x10220000 + 8007964: 10210000 .word 0x10210000 + 8007968: 10120000 .word 0x10120000 + 800796c: 10110000 .word 0x10110000 + 8007970: 40021000 .word 0x40021000 + 8007974: 40010000 .word 0x40010000 + 8007978: 40010800 .word 0x40010800 + 800797c: 40010c00 .word 0x40010c00 + 8007980: 40011000 .word 0x40011000 + 8007984: 40011400 .word 0x40011400 + 8007988: 40011800 .word 0x40011800 + 800798c: 40011c00 .word 0x40011c00 + 8007990: 40010400 .word 0x40010400 + } + else + { + CLEAR_BIT(EXTI->RTSR, iocurrent); + 8007994: 4b15 ldr r3, [pc, #84] @ (80079ec ) + 8007996: 689a ldr r2, [r3, #8] + 8007998: 69bb ldr r3, [r7, #24] + 800799a: 43db mvns r3, r3 + 800799c: 4913 ldr r1, [pc, #76] @ (80079ec ) + 800799e: 4013 ands r3, r2 + 80079a0: 608b str r3, [r1, #8] + } + + /* Enable or disable the falling trigger */ + if ((GPIO_Init->Mode & FALLING_EDGE) == FALLING_EDGE) + 80079a2: 683b ldr r3, [r7, #0] + 80079a4: 685b ldr r3, [r3, #4] + 80079a6: f403 1300 and.w r3, r3, #2097152 @ 0x200000 + 80079aa: 2b00 cmp r3, #0 + 80079ac: d006 beq.n 80079bc + { + SET_BIT(EXTI->FTSR, iocurrent); + 80079ae: 4b0f ldr r3, [pc, #60] @ (80079ec ) + 80079b0: 68da ldr r2, [r3, #12] + 80079b2: 490e ldr r1, [pc, #56] @ (80079ec ) + 80079b4: 69bb ldr r3, [r7, #24] + 80079b6: 4313 orrs r3, r2 + 80079b8: 60cb str r3, [r1, #12] + 80079ba: e006 b.n 80079ca + } + else + { + CLEAR_BIT(EXTI->FTSR, iocurrent); + 80079bc: 4b0b ldr r3, [pc, #44] @ (80079ec ) + 80079be: 68da ldr r2, [r3, #12] + 80079c0: 69bb ldr r3, [r7, #24] + 80079c2: 43db mvns r3, r3 + 80079c4: 4909 ldr r1, [pc, #36] @ (80079ec ) + 80079c6: 4013 ands r3, r2 + 80079c8: 60cb str r3, [r1, #12] + } + } + } + + position++; + 80079ca: 6a7b ldr r3, [r7, #36] @ 0x24 + 80079cc: 3301 adds r3, #1 + 80079ce: 627b str r3, [r7, #36] @ 0x24 + while (((GPIO_Init->Pin) >> position) != 0x00u) + 80079d0: 683b ldr r3, [r7, #0] + 80079d2: 681a ldr r2, [r3, #0] + 80079d4: 6a7b ldr r3, [r7, #36] @ 0x24 + 80079d6: fa22 f303 lsr.w r3, r2, r3 + 80079da: 2b00 cmp r3, #0 + 80079dc: f47f ae7e bne.w 80076dc + } +} + 80079e0: bf00 nop + 80079e2: bf00 nop + 80079e4: 372c adds r7, #44 @ 0x2c + 80079e6: 46bd mov sp, r7 + 80079e8: bc80 pop {r7} + 80079ea: 4770 bx lr + 80079ec: 40010400 .word 0x40010400 + +080079f0 : + * @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) +{ + 80079f0: b480 push {r7} + 80079f2: b083 sub sp, #12 + 80079f4: af00 add r7, sp, #0 + 80079f6: 6078 str r0, [r7, #4] + 80079f8: 460b mov r3, r1 + 80079fa: 807b strh r3, [r7, #2] + 80079fc: 4613 mov r3, r2 + 80079fe: 707b strb r3, [r7, #1] + /* Check the parameters */ + assert_param(IS_GPIO_PIN(GPIO_Pin)); + assert_param(IS_GPIO_PIN_ACTION(PinState)); + + if (PinState != GPIO_PIN_RESET) + 8007a00: 787b ldrb r3, [r7, #1] + 8007a02: 2b00 cmp r3, #0 + 8007a04: d003 beq.n 8007a0e + { + GPIOx->BSRR = GPIO_Pin; + 8007a06: 887a ldrh r2, [r7, #2] + 8007a08: 687b ldr r3, [r7, #4] + 8007a0a: 611a str r2, [r3, #16] + } + else + { + GPIOx->BSRR = (uint32_t)GPIO_Pin << 16u; + } +} + 8007a0c: e003 b.n 8007a16 + GPIOx->BSRR = (uint32_t)GPIO_Pin << 16u; + 8007a0e: 887b ldrh r3, [r7, #2] + 8007a10: 041a lsls r2, r3, #16 + 8007a12: 687b ldr r3, [r7, #4] + 8007a14: 611a str r2, [r3, #16] +} + 8007a16: bf00 nop + 8007a18: 370c adds r7, #12 + 8007a1a: 46bd mov sp, r7 + 8007a1c: bc80 pop {r7} + 8007a1e: 4770 bx lr + +08007a20 : + * 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) +{ + 8007a20: b580 push {r7, lr} + 8007a22: b086 sub sp, #24 + 8007a24: af00 add r7, sp, #0 + 8007a26: 6078 str r0, [r7, #4] + uint32_t tickstart; + uint32_t pll_config; + + /* Check Null pointer */ + if (RCC_OscInitStruct == NULL) + 8007a28: 687b ldr r3, [r7, #4] + 8007a2a: 2b00 cmp r3, #0 + 8007a2c: d101 bne.n 8007a32 + { + return HAL_ERROR; + 8007a2e: 2301 movs r3, #1 + 8007a30: e272 b.n 8007f18 + + /* Check the parameters */ + assert_param(IS_RCC_OSCILLATORTYPE(RCC_OscInitStruct->OscillatorType)); + + /*------------------------------- HSE Configuration ------------------------*/ + if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSE) == RCC_OSCILLATORTYPE_HSE) + 8007a32: 687b ldr r3, [r7, #4] + 8007a34: 681b ldr r3, [r3, #0] + 8007a36: f003 0301 and.w r3, r3, #1 + 8007a3a: 2b00 cmp r3, #0 + 8007a3c: f000 8087 beq.w 8007b4e + { + /* 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) + 8007a40: 4b92 ldr r3, [pc, #584] @ (8007c8c ) + 8007a42: 685b ldr r3, [r3, #4] + 8007a44: f003 030c and.w r3, r3, #12 + 8007a48: 2b04 cmp r3, #4 + 8007a4a: d00c beq.n 8007a66 + || ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && (__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSE))) + 8007a4c: 4b8f ldr r3, [pc, #572] @ (8007c8c ) + 8007a4e: 685b ldr r3, [r3, #4] + 8007a50: f003 030c and.w r3, r3, #12 + 8007a54: 2b08 cmp r3, #8 + 8007a56: d112 bne.n 8007a7e + 8007a58: 4b8c ldr r3, [pc, #560] @ (8007c8c ) + 8007a5a: 685b ldr r3, [r3, #4] + 8007a5c: f403 3380 and.w r3, r3, #65536 @ 0x10000 + 8007a60: f5b3 3f80 cmp.w r3, #65536 @ 0x10000 + 8007a64: d10b bne.n 8007a7e + { + if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) && (RCC_OscInitStruct->HSEState == RCC_HSE_OFF)) + 8007a66: 4b89 ldr r3, [pc, #548] @ (8007c8c ) + 8007a68: 681b ldr r3, [r3, #0] + 8007a6a: f403 3300 and.w r3, r3, #131072 @ 0x20000 + 8007a6e: 2b00 cmp r3, #0 + 8007a70: d06c beq.n 8007b4c + 8007a72: 687b ldr r3, [r7, #4] + 8007a74: 685b ldr r3, [r3, #4] + 8007a76: 2b00 cmp r3, #0 + 8007a78: d168 bne.n 8007b4c + { + return HAL_ERROR; + 8007a7a: 2301 movs r3, #1 + 8007a7c: e24c b.n 8007f18 + } + } + else + { + /* Set the new HSE configuration ---------------------------------------*/ + __HAL_RCC_HSE_CONFIG(RCC_OscInitStruct->HSEState); + 8007a7e: 687b ldr r3, [r7, #4] + 8007a80: 685b ldr r3, [r3, #4] + 8007a82: f5b3 3f80 cmp.w r3, #65536 @ 0x10000 + 8007a86: d106 bne.n 8007a96 + 8007a88: 4b80 ldr r3, [pc, #512] @ (8007c8c ) + 8007a8a: 681b ldr r3, [r3, #0] + 8007a8c: 4a7f ldr r2, [pc, #508] @ (8007c8c ) + 8007a8e: f443 3380 orr.w r3, r3, #65536 @ 0x10000 + 8007a92: 6013 str r3, [r2, #0] + 8007a94: e02e b.n 8007af4 + 8007a96: 687b ldr r3, [r7, #4] + 8007a98: 685b ldr r3, [r3, #4] + 8007a9a: 2b00 cmp r3, #0 + 8007a9c: d10c bne.n 8007ab8 + 8007a9e: 4b7b ldr r3, [pc, #492] @ (8007c8c ) + 8007aa0: 681b ldr r3, [r3, #0] + 8007aa2: 4a7a ldr r2, [pc, #488] @ (8007c8c ) + 8007aa4: f423 3380 bic.w r3, r3, #65536 @ 0x10000 + 8007aa8: 6013 str r3, [r2, #0] + 8007aaa: 4b78 ldr r3, [pc, #480] @ (8007c8c ) + 8007aac: 681b ldr r3, [r3, #0] + 8007aae: 4a77 ldr r2, [pc, #476] @ (8007c8c ) + 8007ab0: f423 2380 bic.w r3, r3, #262144 @ 0x40000 + 8007ab4: 6013 str r3, [r2, #0] + 8007ab6: e01d b.n 8007af4 + 8007ab8: 687b ldr r3, [r7, #4] + 8007aba: 685b ldr r3, [r3, #4] + 8007abc: f5b3 2fa0 cmp.w r3, #327680 @ 0x50000 + 8007ac0: d10c bne.n 8007adc + 8007ac2: 4b72 ldr r3, [pc, #456] @ (8007c8c ) + 8007ac4: 681b ldr r3, [r3, #0] + 8007ac6: 4a71 ldr r2, [pc, #452] @ (8007c8c ) + 8007ac8: f443 2380 orr.w r3, r3, #262144 @ 0x40000 + 8007acc: 6013 str r3, [r2, #0] + 8007ace: 4b6f ldr r3, [pc, #444] @ (8007c8c ) + 8007ad0: 681b ldr r3, [r3, #0] + 8007ad2: 4a6e ldr r2, [pc, #440] @ (8007c8c ) + 8007ad4: f443 3380 orr.w r3, r3, #65536 @ 0x10000 + 8007ad8: 6013 str r3, [r2, #0] + 8007ada: e00b b.n 8007af4 + 8007adc: 4b6b ldr r3, [pc, #428] @ (8007c8c ) + 8007ade: 681b ldr r3, [r3, #0] + 8007ae0: 4a6a ldr r2, [pc, #424] @ (8007c8c ) + 8007ae2: f423 3380 bic.w r3, r3, #65536 @ 0x10000 + 8007ae6: 6013 str r3, [r2, #0] + 8007ae8: 4b68 ldr r3, [pc, #416] @ (8007c8c ) + 8007aea: 681b ldr r3, [r3, #0] + 8007aec: 4a67 ldr r2, [pc, #412] @ (8007c8c ) + 8007aee: f423 2380 bic.w r3, r3, #262144 @ 0x40000 + 8007af2: 6013 str r3, [r2, #0] + + + /* Check the HSE State */ + if (RCC_OscInitStruct->HSEState != RCC_HSE_OFF) + 8007af4: 687b ldr r3, [r7, #4] + 8007af6: 685b ldr r3, [r3, #4] + 8007af8: 2b00 cmp r3, #0 + 8007afa: d013 beq.n 8007b24 + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8007afc: f7ff fcd2 bl 80074a4 + 8007b00: 6138 str r0, [r7, #16] + + /* Wait till HSE is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == RESET) + 8007b02: e008 b.n 8007b16 + { + if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE) + 8007b04: f7ff fcce bl 80074a4 + 8007b08: 4602 mov r2, r0 + 8007b0a: 693b ldr r3, [r7, #16] + 8007b0c: 1ad3 subs r3, r2, r3 + 8007b0e: 2b64 cmp r3, #100 @ 0x64 + 8007b10: d901 bls.n 8007b16 + { + return HAL_TIMEOUT; + 8007b12: 2303 movs r3, #3 + 8007b14: e200 b.n 8007f18 + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == RESET) + 8007b16: 4b5d ldr r3, [pc, #372] @ (8007c8c ) + 8007b18: 681b ldr r3, [r3, #0] + 8007b1a: f403 3300 and.w r3, r3, #131072 @ 0x20000 + 8007b1e: 2b00 cmp r3, #0 + 8007b20: d0f0 beq.n 8007b04 + 8007b22: e014 b.n 8007b4e + } + } + else + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8007b24: f7ff fcbe bl 80074a4 + 8007b28: 6138 str r0, [r7, #16] + + /* Wait till HSE is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) + 8007b2a: e008 b.n 8007b3e + { + if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE) + 8007b2c: f7ff fcba bl 80074a4 + 8007b30: 4602 mov r2, r0 + 8007b32: 693b ldr r3, [r7, #16] + 8007b34: 1ad3 subs r3, r2, r3 + 8007b36: 2b64 cmp r3, #100 @ 0x64 + 8007b38: d901 bls.n 8007b3e + { + return HAL_TIMEOUT; + 8007b3a: 2303 movs r3, #3 + 8007b3c: e1ec b.n 8007f18 + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) + 8007b3e: 4b53 ldr r3, [pc, #332] @ (8007c8c ) + 8007b40: 681b ldr r3, [r3, #0] + 8007b42: f403 3300 and.w r3, r3, #131072 @ 0x20000 + 8007b46: 2b00 cmp r3, #0 + 8007b48: d1f0 bne.n 8007b2c + 8007b4a: e000 b.n 8007b4e + if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) && (RCC_OscInitStruct->HSEState == RCC_HSE_OFF)) + 8007b4c: bf00 nop + } + } + } + } + /*----------------------------- HSI Configuration --------------------------*/ + if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSI) == RCC_OSCILLATORTYPE_HSI) + 8007b4e: 687b ldr r3, [r7, #4] + 8007b50: 681b ldr r3, [r3, #0] + 8007b52: f003 0302 and.w r3, r3, #2 + 8007b56: 2b00 cmp r3, #0 + 8007b58: d063 beq.n 8007c22 + /* 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) + 8007b5a: 4b4c ldr r3, [pc, #304] @ (8007c8c ) + 8007b5c: 685b ldr r3, [r3, #4] + 8007b5e: f003 030c and.w r3, r3, #12 + 8007b62: 2b00 cmp r3, #0 + 8007b64: d00b beq.n 8007b7e + || ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && (__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSI_DIV2))) + 8007b66: 4b49 ldr r3, [pc, #292] @ (8007c8c ) + 8007b68: 685b ldr r3, [r3, #4] + 8007b6a: f003 030c and.w r3, r3, #12 + 8007b6e: 2b08 cmp r3, #8 + 8007b70: d11c bne.n 8007bac + 8007b72: 4b46 ldr r3, [pc, #280] @ (8007c8c ) + 8007b74: 685b ldr r3, [r3, #4] + 8007b76: f403 3380 and.w r3, r3, #65536 @ 0x10000 + 8007b7a: 2b00 cmp r3, #0 + 8007b7c: d116 bne.n 8007bac + { + /* 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)) + 8007b7e: 4b43 ldr r3, [pc, #268] @ (8007c8c ) + 8007b80: 681b ldr r3, [r3, #0] + 8007b82: f003 0302 and.w r3, r3, #2 + 8007b86: 2b00 cmp r3, #0 + 8007b88: d005 beq.n 8007b96 + 8007b8a: 687b ldr r3, [r7, #4] + 8007b8c: 691b ldr r3, [r3, #16] + 8007b8e: 2b01 cmp r3, #1 + 8007b90: d001 beq.n 8007b96 + { + return HAL_ERROR; + 8007b92: 2301 movs r3, #1 + 8007b94: e1c0 b.n 8007f18 + } + /* Otherwise, just the calibration is allowed */ + else + { + /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/ + __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->HSICalibrationValue); + 8007b96: 4b3d ldr r3, [pc, #244] @ (8007c8c ) + 8007b98: 681b ldr r3, [r3, #0] + 8007b9a: f023 02f8 bic.w r2, r3, #248 @ 0xf8 + 8007b9e: 687b ldr r3, [r7, #4] + 8007ba0: 695b ldr r3, [r3, #20] + 8007ba2: 00db lsls r3, r3, #3 + 8007ba4: 4939 ldr r1, [pc, #228] @ (8007c8c ) + 8007ba6: 4313 orrs r3, r2 + 8007ba8: 600b str r3, [r1, #0] + if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) && (RCC_OscInitStruct->HSIState != RCC_HSI_ON)) + 8007baa: e03a b.n 8007c22 + } + } + else + { + /* Check the HSI State */ + if (RCC_OscInitStruct->HSIState != RCC_HSI_OFF) + 8007bac: 687b ldr r3, [r7, #4] + 8007bae: 691b ldr r3, [r3, #16] + 8007bb0: 2b00 cmp r3, #0 + 8007bb2: d020 beq.n 8007bf6 + { + /* Enable the Internal High Speed oscillator (HSI). */ + __HAL_RCC_HSI_ENABLE(); + 8007bb4: 4b36 ldr r3, [pc, #216] @ (8007c90 ) + 8007bb6: 2201 movs r2, #1 + 8007bb8: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8007bba: f7ff fc73 bl 80074a4 + 8007bbe: 6138 str r0, [r7, #16] + + /* Wait till HSI is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET) + 8007bc0: e008 b.n 8007bd4 + { + if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE) + 8007bc2: f7ff fc6f bl 80074a4 + 8007bc6: 4602 mov r2, r0 + 8007bc8: 693b ldr r3, [r7, #16] + 8007bca: 1ad3 subs r3, r2, r3 + 8007bcc: 2b02 cmp r3, #2 + 8007bce: d901 bls.n 8007bd4 + { + return HAL_TIMEOUT; + 8007bd0: 2303 movs r3, #3 + 8007bd2: e1a1 b.n 8007f18 + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET) + 8007bd4: 4b2d ldr r3, [pc, #180] @ (8007c8c ) + 8007bd6: 681b ldr r3, [r3, #0] + 8007bd8: f003 0302 and.w r3, r3, #2 + 8007bdc: 2b00 cmp r3, #0 + 8007bde: d0f0 beq.n 8007bc2 + } + } + + /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/ + __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->HSICalibrationValue); + 8007be0: 4b2a ldr r3, [pc, #168] @ (8007c8c ) + 8007be2: 681b ldr r3, [r3, #0] + 8007be4: f023 02f8 bic.w r2, r3, #248 @ 0xf8 + 8007be8: 687b ldr r3, [r7, #4] + 8007bea: 695b ldr r3, [r3, #20] + 8007bec: 00db lsls r3, r3, #3 + 8007bee: 4927 ldr r1, [pc, #156] @ (8007c8c ) + 8007bf0: 4313 orrs r3, r2 + 8007bf2: 600b str r3, [r1, #0] + 8007bf4: e015 b.n 8007c22 + } + else + { + /* Disable the Internal High Speed oscillator (HSI). */ + __HAL_RCC_HSI_DISABLE(); + 8007bf6: 4b26 ldr r3, [pc, #152] @ (8007c90 ) + 8007bf8: 2200 movs r2, #0 + 8007bfa: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8007bfc: f7ff fc52 bl 80074a4 + 8007c00: 6138 str r0, [r7, #16] + + /* Wait till HSI is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) + 8007c02: e008 b.n 8007c16 + { + if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE) + 8007c04: f7ff fc4e bl 80074a4 + 8007c08: 4602 mov r2, r0 + 8007c0a: 693b ldr r3, [r7, #16] + 8007c0c: 1ad3 subs r3, r2, r3 + 8007c0e: 2b02 cmp r3, #2 + 8007c10: d901 bls.n 8007c16 + { + return HAL_TIMEOUT; + 8007c12: 2303 movs r3, #3 + 8007c14: e180 b.n 8007f18 + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) + 8007c16: 4b1d ldr r3, [pc, #116] @ (8007c8c ) + 8007c18: 681b ldr r3, [r3, #0] + 8007c1a: f003 0302 and.w r3, r3, #2 + 8007c1e: 2b00 cmp r3, #0 + 8007c20: d1f0 bne.n 8007c04 + } + } + } + } + /*------------------------------ LSI Configuration -------------------------*/ + if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSI) == RCC_OSCILLATORTYPE_LSI) + 8007c22: 687b ldr r3, [r7, #4] + 8007c24: 681b ldr r3, [r3, #0] + 8007c26: f003 0308 and.w r3, r3, #8 + 8007c2a: 2b00 cmp r3, #0 + 8007c2c: d03a beq.n 8007ca4 + { + /* Check the parameters */ + assert_param(IS_RCC_LSI(RCC_OscInitStruct->LSIState)); + + /* Check the LSI State */ + if (RCC_OscInitStruct->LSIState != RCC_LSI_OFF) + 8007c2e: 687b ldr r3, [r7, #4] + 8007c30: 699b ldr r3, [r3, #24] + 8007c32: 2b00 cmp r3, #0 + 8007c34: d019 beq.n 8007c6a + { + /* Enable the Internal Low Speed oscillator (LSI). */ + __HAL_RCC_LSI_ENABLE(); + 8007c36: 4b17 ldr r3, [pc, #92] @ (8007c94 ) + 8007c38: 2201 movs r2, #1 + 8007c3a: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8007c3c: f7ff fc32 bl 80074a4 + 8007c40: 6138 str r0, [r7, #16] + + /* Wait till LSI is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) == RESET) + 8007c42: e008 b.n 8007c56 + { + if ((HAL_GetTick() - tickstart) > LSI_TIMEOUT_VALUE) + 8007c44: f7ff fc2e bl 80074a4 + 8007c48: 4602 mov r2, r0 + 8007c4a: 693b ldr r3, [r7, #16] + 8007c4c: 1ad3 subs r3, r2, r3 + 8007c4e: 2b02 cmp r3, #2 + 8007c50: d901 bls.n 8007c56 + { + return HAL_TIMEOUT; + 8007c52: 2303 movs r3, #3 + 8007c54: e160 b.n 8007f18 + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) == RESET) + 8007c56: 4b0d ldr r3, [pc, #52] @ (8007c8c ) + 8007c58: 6a5b ldr r3, [r3, #36] @ 0x24 + 8007c5a: f003 0302 and.w r3, r3, #2 + 8007c5e: 2b00 cmp r3, #0 + 8007c60: d0f0 beq.n 8007c44 + } + } + /* To have a fully stabilized clock in the specified range, a software delay of 1ms + should be added.*/ + RCC_Delay(1); + 8007c62: 2001 movs r0, #1 + 8007c64: f000 faa6 bl 80081b4 + 8007c68: e01c b.n 8007ca4 + } + else + { + /* Disable the Internal Low Speed oscillator (LSI). */ + __HAL_RCC_LSI_DISABLE(); + 8007c6a: 4b0a ldr r3, [pc, #40] @ (8007c94 ) + 8007c6c: 2200 movs r2, #0 + 8007c6e: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8007c70: f7ff fc18 bl 80074a4 + 8007c74: 6138 str r0, [r7, #16] + + /* Wait till LSI is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) != RESET) + 8007c76: e00f b.n 8007c98 + { + if ((HAL_GetTick() - tickstart) > LSI_TIMEOUT_VALUE) + 8007c78: f7ff fc14 bl 80074a4 + 8007c7c: 4602 mov r2, r0 + 8007c7e: 693b ldr r3, [r7, #16] + 8007c80: 1ad3 subs r3, r2, r3 + 8007c82: 2b02 cmp r3, #2 + 8007c84: d908 bls.n 8007c98 + { + return HAL_TIMEOUT; + 8007c86: 2303 movs r3, #3 + 8007c88: e146 b.n 8007f18 + 8007c8a: bf00 nop + 8007c8c: 40021000 .word 0x40021000 + 8007c90: 42420000 .word 0x42420000 + 8007c94: 42420480 .word 0x42420480 + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) != RESET) + 8007c98: 4b92 ldr r3, [pc, #584] @ (8007ee4 ) + 8007c9a: 6a5b ldr r3, [r3, #36] @ 0x24 + 8007c9c: f003 0302 and.w r3, r3, #2 + 8007ca0: 2b00 cmp r3, #0 + 8007ca2: d1e9 bne.n 8007c78 + } + } + } + } + /*------------------------------ LSE Configuration -------------------------*/ + if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSE) == RCC_OSCILLATORTYPE_LSE) + 8007ca4: 687b ldr r3, [r7, #4] + 8007ca6: 681b ldr r3, [r3, #0] + 8007ca8: f003 0304 and.w r3, r3, #4 + 8007cac: 2b00 cmp r3, #0 + 8007cae: f000 80a6 beq.w 8007dfe + { + FlagStatus pwrclkchanged = RESET; + 8007cb2: 2300 movs r3, #0 + 8007cb4: 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()) + 8007cb6: 4b8b ldr r3, [pc, #556] @ (8007ee4 ) + 8007cb8: 69db ldr r3, [r3, #28] + 8007cba: f003 5380 and.w r3, r3, #268435456 @ 0x10000000 + 8007cbe: 2b00 cmp r3, #0 + 8007cc0: d10d bne.n 8007cde + { + __HAL_RCC_PWR_CLK_ENABLE(); + 8007cc2: 4b88 ldr r3, [pc, #544] @ (8007ee4 ) + 8007cc4: 69db ldr r3, [r3, #28] + 8007cc6: 4a87 ldr r2, [pc, #540] @ (8007ee4 ) + 8007cc8: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 + 8007ccc: 61d3 str r3, [r2, #28] + 8007cce: 4b85 ldr r3, [pc, #532] @ (8007ee4 ) + 8007cd0: 69db ldr r3, [r3, #28] + 8007cd2: f003 5380 and.w r3, r3, #268435456 @ 0x10000000 + 8007cd6: 60bb str r3, [r7, #8] + 8007cd8: 68bb ldr r3, [r7, #8] + pwrclkchanged = SET; + 8007cda: 2301 movs r3, #1 + 8007cdc: 75fb strb r3, [r7, #23] + } + + if (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) + 8007cde: 4b82 ldr r3, [pc, #520] @ (8007ee8 ) + 8007ce0: 681b ldr r3, [r3, #0] + 8007ce2: f403 7380 and.w r3, r3, #256 @ 0x100 + 8007ce6: 2b00 cmp r3, #0 + 8007ce8: d118 bne.n 8007d1c + { + /* Enable write access to Backup domain */ + SET_BIT(PWR->CR, PWR_CR_DBP); + 8007cea: 4b7f ldr r3, [pc, #508] @ (8007ee8 ) + 8007cec: 681b ldr r3, [r3, #0] + 8007cee: 4a7e ldr r2, [pc, #504] @ (8007ee8 ) + 8007cf0: f443 7380 orr.w r3, r3, #256 @ 0x100 + 8007cf4: 6013 str r3, [r2, #0] + + /* Wait for Backup domain Write protection disable */ + tickstart = HAL_GetTick(); + 8007cf6: f7ff fbd5 bl 80074a4 + 8007cfa: 6138 str r0, [r7, #16] + + while (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) + 8007cfc: e008 b.n 8007d10 + { + if ((HAL_GetTick() - tickstart) > RCC_DBP_TIMEOUT_VALUE) + 8007cfe: f7ff fbd1 bl 80074a4 + 8007d02: 4602 mov r2, r0 + 8007d04: 693b ldr r3, [r7, #16] + 8007d06: 1ad3 subs r3, r2, r3 + 8007d08: 2b64 cmp r3, #100 @ 0x64 + 8007d0a: d901 bls.n 8007d10 + { + return HAL_TIMEOUT; + 8007d0c: 2303 movs r3, #3 + 8007d0e: e103 b.n 8007f18 + while (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) + 8007d10: 4b75 ldr r3, [pc, #468] @ (8007ee8 ) + 8007d12: 681b ldr r3, [r3, #0] + 8007d14: f403 7380 and.w r3, r3, #256 @ 0x100 + 8007d18: 2b00 cmp r3, #0 + 8007d1a: d0f0 beq.n 8007cfe + } + } + } + + /* Set the new LSE configuration -----------------------------------------*/ + __HAL_RCC_LSE_CONFIG(RCC_OscInitStruct->LSEState); + 8007d1c: 687b ldr r3, [r7, #4] + 8007d1e: 68db ldr r3, [r3, #12] + 8007d20: 2b01 cmp r3, #1 + 8007d22: d106 bne.n 8007d32 + 8007d24: 4b6f ldr r3, [pc, #444] @ (8007ee4 ) + 8007d26: 6a1b ldr r3, [r3, #32] + 8007d28: 4a6e ldr r2, [pc, #440] @ (8007ee4 ) + 8007d2a: f043 0301 orr.w r3, r3, #1 + 8007d2e: 6213 str r3, [r2, #32] + 8007d30: e02d b.n 8007d8e + 8007d32: 687b ldr r3, [r7, #4] + 8007d34: 68db ldr r3, [r3, #12] + 8007d36: 2b00 cmp r3, #0 + 8007d38: d10c bne.n 8007d54 + 8007d3a: 4b6a ldr r3, [pc, #424] @ (8007ee4 ) + 8007d3c: 6a1b ldr r3, [r3, #32] + 8007d3e: 4a69 ldr r2, [pc, #420] @ (8007ee4 ) + 8007d40: f023 0301 bic.w r3, r3, #1 + 8007d44: 6213 str r3, [r2, #32] + 8007d46: 4b67 ldr r3, [pc, #412] @ (8007ee4 ) + 8007d48: 6a1b ldr r3, [r3, #32] + 8007d4a: 4a66 ldr r2, [pc, #408] @ (8007ee4 ) + 8007d4c: f023 0304 bic.w r3, r3, #4 + 8007d50: 6213 str r3, [r2, #32] + 8007d52: e01c b.n 8007d8e + 8007d54: 687b ldr r3, [r7, #4] + 8007d56: 68db ldr r3, [r3, #12] + 8007d58: 2b05 cmp r3, #5 + 8007d5a: d10c bne.n 8007d76 + 8007d5c: 4b61 ldr r3, [pc, #388] @ (8007ee4 ) + 8007d5e: 6a1b ldr r3, [r3, #32] + 8007d60: 4a60 ldr r2, [pc, #384] @ (8007ee4 ) + 8007d62: f043 0304 orr.w r3, r3, #4 + 8007d66: 6213 str r3, [r2, #32] + 8007d68: 4b5e ldr r3, [pc, #376] @ (8007ee4 ) + 8007d6a: 6a1b ldr r3, [r3, #32] + 8007d6c: 4a5d ldr r2, [pc, #372] @ (8007ee4 ) + 8007d6e: f043 0301 orr.w r3, r3, #1 + 8007d72: 6213 str r3, [r2, #32] + 8007d74: e00b b.n 8007d8e + 8007d76: 4b5b ldr r3, [pc, #364] @ (8007ee4 ) + 8007d78: 6a1b ldr r3, [r3, #32] + 8007d7a: 4a5a ldr r2, [pc, #360] @ (8007ee4 ) + 8007d7c: f023 0301 bic.w r3, r3, #1 + 8007d80: 6213 str r3, [r2, #32] + 8007d82: 4b58 ldr r3, [pc, #352] @ (8007ee4 ) + 8007d84: 6a1b ldr r3, [r3, #32] + 8007d86: 4a57 ldr r2, [pc, #348] @ (8007ee4 ) + 8007d88: f023 0304 bic.w r3, r3, #4 + 8007d8c: 6213 str r3, [r2, #32] + /* Check the LSE State */ + if (RCC_OscInitStruct->LSEState != RCC_LSE_OFF) + 8007d8e: 687b ldr r3, [r7, #4] + 8007d90: 68db ldr r3, [r3, #12] + 8007d92: 2b00 cmp r3, #0 + 8007d94: d015 beq.n 8007dc2 + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8007d96: f7ff fb85 bl 80074a4 + 8007d9a: 6138 str r0, [r7, #16] + + /* Wait till LSE is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) == RESET) + 8007d9c: e00a b.n 8007db4 + { + if ((HAL_GetTick() - tickstart) > RCC_LSE_TIMEOUT_VALUE) + 8007d9e: f7ff fb81 bl 80074a4 + 8007da2: 4602 mov r2, r0 + 8007da4: 693b ldr r3, [r7, #16] + 8007da6: 1ad3 subs r3, r2, r3 + 8007da8: f241 3288 movw r2, #5000 @ 0x1388 + 8007dac: 4293 cmp r3, r2 + 8007dae: d901 bls.n 8007db4 + { + return HAL_TIMEOUT; + 8007db0: 2303 movs r3, #3 + 8007db2: e0b1 b.n 8007f18 + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) == RESET) + 8007db4: 4b4b ldr r3, [pc, #300] @ (8007ee4 ) + 8007db6: 6a1b ldr r3, [r3, #32] + 8007db8: f003 0302 and.w r3, r3, #2 + 8007dbc: 2b00 cmp r3, #0 + 8007dbe: d0ee beq.n 8007d9e + 8007dc0: e014 b.n 8007dec + } + } + else + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8007dc2: f7ff fb6f bl 80074a4 + 8007dc6: 6138 str r0, [r7, #16] + + /* Wait till LSE is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) != RESET) + 8007dc8: e00a b.n 8007de0 + { + if ((HAL_GetTick() - tickstart) > RCC_LSE_TIMEOUT_VALUE) + 8007dca: f7ff fb6b bl 80074a4 + 8007dce: 4602 mov r2, r0 + 8007dd0: 693b ldr r3, [r7, #16] + 8007dd2: 1ad3 subs r3, r2, r3 + 8007dd4: f241 3288 movw r2, #5000 @ 0x1388 + 8007dd8: 4293 cmp r3, r2 + 8007dda: d901 bls.n 8007de0 + { + return HAL_TIMEOUT; + 8007ddc: 2303 movs r3, #3 + 8007dde: e09b b.n 8007f18 + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) != RESET) + 8007de0: 4b40 ldr r3, [pc, #256] @ (8007ee4 ) + 8007de2: 6a1b ldr r3, [r3, #32] + 8007de4: f003 0302 and.w r3, r3, #2 + 8007de8: 2b00 cmp r3, #0 + 8007dea: d1ee bne.n 8007dca + } + } + } + + /* Require to disable power clock if necessary */ + if (pwrclkchanged == SET) + 8007dec: 7dfb ldrb r3, [r7, #23] + 8007dee: 2b01 cmp r3, #1 + 8007df0: d105 bne.n 8007dfe + { + __HAL_RCC_PWR_CLK_DISABLE(); + 8007df2: 4b3c ldr r3, [pc, #240] @ (8007ee4 ) + 8007df4: 69db ldr r3, [r3, #28] + 8007df6: 4a3b ldr r2, [pc, #236] @ (8007ee4 ) + 8007df8: f023 5380 bic.w r3, r3, #268435456 @ 0x10000000 + 8007dfc: 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) + 8007dfe: 687b ldr r3, [r7, #4] + 8007e00: 69db ldr r3, [r3, #28] + 8007e02: 2b00 cmp r3, #0 + 8007e04: f000 8087 beq.w 8007f16 + { + /* Check if the PLL is used as system clock or not */ + if (__HAL_RCC_GET_SYSCLK_SOURCE() != RCC_SYSCLKSOURCE_STATUS_PLLCLK) + 8007e08: 4b36 ldr r3, [pc, #216] @ (8007ee4 ) + 8007e0a: 685b ldr r3, [r3, #4] + 8007e0c: f003 030c and.w r3, r3, #12 + 8007e10: 2b08 cmp r3, #8 + 8007e12: d061 beq.n 8007ed8 + { + if ((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_ON) + 8007e14: 687b ldr r3, [r7, #4] + 8007e16: 69db ldr r3, [r3, #28] + 8007e18: 2b02 cmp r3, #2 + 8007e1a: d146 bne.n 8007eaa + /* 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(); + 8007e1c: 4b33 ldr r3, [pc, #204] @ (8007eec ) + 8007e1e: 2200 movs r2, #0 + 8007e20: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8007e22: f7ff fb3f bl 80074a4 + 8007e26: 6138 str r0, [r7, #16] + + /* Wait till PLL is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET) + 8007e28: e008 b.n 8007e3c + { + if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) + 8007e2a: f7ff fb3b bl 80074a4 + 8007e2e: 4602 mov r2, r0 + 8007e30: 693b ldr r3, [r7, #16] + 8007e32: 1ad3 subs r3, r2, r3 + 8007e34: 2b02 cmp r3, #2 + 8007e36: d901 bls.n 8007e3c + { + return HAL_TIMEOUT; + 8007e38: 2303 movs r3, #3 + 8007e3a: e06d b.n 8007f18 + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET) + 8007e3c: 4b29 ldr r3, [pc, #164] @ (8007ee4 ) + 8007e3e: 681b ldr r3, [r3, #0] + 8007e40: f003 7300 and.w r3, r3, #33554432 @ 0x2000000 + 8007e44: 2b00 cmp r3, #0 + 8007e46: d1f0 bne.n 8007e2a + } + } + + /* 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) + 8007e48: 687b ldr r3, [r7, #4] + 8007e4a: 6a1b ldr r3, [r3, #32] + 8007e4c: f5b3 3f80 cmp.w r3, #65536 @ 0x10000 + 8007e50: d108 bne.n 8007e64 + /* 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); + 8007e52: 4b24 ldr r3, [pc, #144] @ (8007ee4 ) + 8007e54: 685b ldr r3, [r3, #4] + 8007e56: f423 3200 bic.w r2, r3, #131072 @ 0x20000 + 8007e5a: 687b ldr r3, [r7, #4] + 8007e5c: 689b ldr r3, [r3, #8] + 8007e5e: 4921 ldr r1, [pc, #132] @ (8007ee4 ) + 8007e60: 4313 orrs r3, r2 + 8007e62: 604b str r3, [r1, #4] + } + + /* Configure the main PLL clock source and multiplication factors. */ + __HAL_RCC_PLL_CONFIG(RCC_OscInitStruct->PLL.PLLSource, + 8007e64: 4b1f ldr r3, [pc, #124] @ (8007ee4 ) + 8007e66: 685b ldr r3, [r3, #4] + 8007e68: f423 1274 bic.w r2, r3, #3997696 @ 0x3d0000 + 8007e6c: 687b ldr r3, [r7, #4] + 8007e6e: 6a19 ldr r1, [r3, #32] + 8007e70: 687b ldr r3, [r7, #4] + 8007e72: 6a5b ldr r3, [r3, #36] @ 0x24 + 8007e74: 430b orrs r3, r1 + 8007e76: 491b ldr r1, [pc, #108] @ (8007ee4 ) + 8007e78: 4313 orrs r3, r2 + 8007e7a: 604b str r3, [r1, #4] + RCC_OscInitStruct->PLL.PLLMUL); + /* Enable the main PLL. */ + __HAL_RCC_PLL_ENABLE(); + 8007e7c: 4b1b ldr r3, [pc, #108] @ (8007eec ) + 8007e7e: 2201 movs r2, #1 + 8007e80: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8007e82: f7ff fb0f bl 80074a4 + 8007e86: 6138 str r0, [r7, #16] + + /* Wait till PLL is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == RESET) + 8007e88: e008 b.n 8007e9c + { + if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) + 8007e8a: f7ff fb0b bl 80074a4 + 8007e8e: 4602 mov r2, r0 + 8007e90: 693b ldr r3, [r7, #16] + 8007e92: 1ad3 subs r3, r2, r3 + 8007e94: 2b02 cmp r3, #2 + 8007e96: d901 bls.n 8007e9c + { + return HAL_TIMEOUT; + 8007e98: 2303 movs r3, #3 + 8007e9a: e03d b.n 8007f18 + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == RESET) + 8007e9c: 4b11 ldr r3, [pc, #68] @ (8007ee4 ) + 8007e9e: 681b ldr r3, [r3, #0] + 8007ea0: f003 7300 and.w r3, r3, #33554432 @ 0x2000000 + 8007ea4: 2b00 cmp r3, #0 + 8007ea6: d0f0 beq.n 8007e8a + 8007ea8: e035 b.n 8007f16 + } + } + else + { + /* Disable the main PLL. */ + __HAL_RCC_PLL_DISABLE(); + 8007eaa: 4b10 ldr r3, [pc, #64] @ (8007eec ) + 8007eac: 2200 movs r2, #0 + 8007eae: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8007eb0: f7ff faf8 bl 80074a4 + 8007eb4: 6138 str r0, [r7, #16] + + /* Wait till PLL is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET) + 8007eb6: e008 b.n 8007eca + { + if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) + 8007eb8: f7ff faf4 bl 80074a4 + 8007ebc: 4602 mov r2, r0 + 8007ebe: 693b ldr r3, [r7, #16] + 8007ec0: 1ad3 subs r3, r2, r3 + 8007ec2: 2b02 cmp r3, #2 + 8007ec4: d901 bls.n 8007eca + { + return HAL_TIMEOUT; + 8007ec6: 2303 movs r3, #3 + 8007ec8: e026 b.n 8007f18 + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET) + 8007eca: 4b06 ldr r3, [pc, #24] @ (8007ee4 ) + 8007ecc: 681b ldr r3, [r3, #0] + 8007ece: f003 7300 and.w r3, r3, #33554432 @ 0x2000000 + 8007ed2: 2b00 cmp r3, #0 + 8007ed4: d1f0 bne.n 8007eb8 + 8007ed6: e01e b.n 8007f16 + } + } + else + { + /* Check if there is a request to disable the PLL used as System clock source */ + if ((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_OFF) + 8007ed8: 687b ldr r3, [r7, #4] + 8007eda: 69db ldr r3, [r3, #28] + 8007edc: 2b01 cmp r3, #1 + 8007ede: d107 bne.n 8007ef0 + { + return HAL_ERROR; + 8007ee0: 2301 movs r3, #1 + 8007ee2: e019 b.n 8007f18 + 8007ee4: 40021000 .word 0x40021000 + 8007ee8: 40007000 .word 0x40007000 + 8007eec: 42420060 .word 0x42420060 + } + else + { + /* Do not return HAL_ERROR if request repeats the current configuration */ + pll_config = RCC->CFGR; + 8007ef0: 4b0b ldr r3, [pc, #44] @ (8007f20 ) + 8007ef2: 685b ldr r3, [r3, #4] + 8007ef4: 60fb str r3, [r7, #12] + if ((READ_BIT(pll_config, RCC_CFGR_PLLSRC) != RCC_OscInitStruct->PLL.PLLSource) || + 8007ef6: 68fb ldr r3, [r7, #12] + 8007ef8: f403 3280 and.w r2, r3, #65536 @ 0x10000 + 8007efc: 687b ldr r3, [r7, #4] + 8007efe: 6a1b ldr r3, [r3, #32] + 8007f00: 429a cmp r2, r3 + 8007f02: d106 bne.n 8007f12 + (READ_BIT(pll_config, RCC_CFGR_PLLMULL) != RCC_OscInitStruct->PLL.PLLMUL)) + 8007f04: 68fb ldr r3, [r7, #12] + 8007f06: f403 1270 and.w r2, r3, #3932160 @ 0x3c0000 + 8007f0a: 687b ldr r3, [r7, #4] + 8007f0c: 6a5b ldr r3, [r3, #36] @ 0x24 + if ((READ_BIT(pll_config, RCC_CFGR_PLLSRC) != RCC_OscInitStruct->PLL.PLLSource) || + 8007f0e: 429a cmp r2, r3 + 8007f10: d001 beq.n 8007f16 + { + return HAL_ERROR; + 8007f12: 2301 movs r3, #1 + 8007f14: e000 b.n 8007f18 + } + } + } + } + + return HAL_OK; + 8007f16: 2300 movs r3, #0 +} + 8007f18: 4618 mov r0, r3 + 8007f1a: 3718 adds r7, #24 + 8007f1c: 46bd mov sp, r7 + 8007f1e: bd80 pop {r7, pc} + 8007f20: 40021000 .word 0x40021000 + +08007f24 : + * 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) +{ + 8007f24: b580 push {r7, lr} + 8007f26: b084 sub sp, #16 + 8007f28: af00 add r7, sp, #0 + 8007f2a: 6078 str r0, [r7, #4] + 8007f2c: 6039 str r1, [r7, #0] + uint32_t tickstart; + + /* Check Null pointer */ + if (RCC_ClkInitStruct == NULL) + 8007f2e: 687b ldr r3, [r7, #4] + 8007f30: 2b00 cmp r3, #0 + 8007f32: d101 bne.n 8007f38 + { + return HAL_ERROR; + 8007f34: 2301 movs r3, #1 + 8007f36: e0d0 b.n 80080da + 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()) + 8007f38: 4b6a ldr r3, [pc, #424] @ (80080e4 ) + 8007f3a: 681b ldr r3, [r3, #0] + 8007f3c: f003 0307 and.w r3, r3, #7 + 8007f40: 683a ldr r2, [r7, #0] + 8007f42: 429a cmp r2, r3 + 8007f44: d910 bls.n 8007f68 + { + /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */ + __HAL_FLASH_SET_LATENCY(FLatency); + 8007f46: 4b67 ldr r3, [pc, #412] @ (80080e4 ) + 8007f48: 681b ldr r3, [r3, #0] + 8007f4a: f023 0207 bic.w r2, r3, #7 + 8007f4e: 4965 ldr r1, [pc, #404] @ (80080e4 ) + 8007f50: 683b ldr r3, [r7, #0] + 8007f52: 4313 orrs r3, r2 + 8007f54: 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) + 8007f56: 4b63 ldr r3, [pc, #396] @ (80080e4 ) + 8007f58: 681b ldr r3, [r3, #0] + 8007f5a: f003 0307 and.w r3, r3, #7 + 8007f5e: 683a ldr r2, [r7, #0] + 8007f60: 429a cmp r2, r3 + 8007f62: d001 beq.n 8007f68 + { + return HAL_ERROR; + 8007f64: 2301 movs r3, #1 + 8007f66: e0b8 b.n 80080da + } +} + +#endif /* FLASH_ACR_LATENCY */ +/*-------------------------- HCLK Configuration --------------------------*/ +if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_HCLK) == RCC_CLOCKTYPE_HCLK) + 8007f68: 687b ldr r3, [r7, #4] + 8007f6a: 681b ldr r3, [r3, #0] + 8007f6c: f003 0302 and.w r3, r3, #2 + 8007f70: 2b00 cmp r3, #0 + 8007f72: d020 beq.n 8007fb6 + { + /* 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) + 8007f74: 687b ldr r3, [r7, #4] + 8007f76: 681b ldr r3, [r3, #0] + 8007f78: f003 0304 and.w r3, r3, #4 + 8007f7c: 2b00 cmp r3, #0 + 8007f7e: d005 beq.n 8007f8c + { + MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE1, RCC_HCLK_DIV16); + 8007f80: 4b59 ldr r3, [pc, #356] @ (80080e8 ) + 8007f82: 685b ldr r3, [r3, #4] + 8007f84: 4a58 ldr r2, [pc, #352] @ (80080e8 ) + 8007f86: f443 63e0 orr.w r3, r3, #1792 @ 0x700 + 8007f8a: 6053 str r3, [r2, #4] + } + + if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2) + 8007f8c: 687b ldr r3, [r7, #4] + 8007f8e: 681b ldr r3, [r3, #0] + 8007f90: f003 0308 and.w r3, r3, #8 + 8007f94: 2b00 cmp r3, #0 + 8007f96: d005 beq.n 8007fa4 + { + MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE2, (RCC_HCLK_DIV16 << 3)); + 8007f98: 4b53 ldr r3, [pc, #332] @ (80080e8 ) + 8007f9a: 685b ldr r3, [r3, #4] + 8007f9c: 4a52 ldr r2, [pc, #328] @ (80080e8 ) + 8007f9e: f443 5360 orr.w r3, r3, #14336 @ 0x3800 + 8007fa2: 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); + 8007fa4: 4b50 ldr r3, [pc, #320] @ (80080e8 ) + 8007fa6: 685b ldr r3, [r3, #4] + 8007fa8: f023 02f0 bic.w r2, r3, #240 @ 0xf0 + 8007fac: 687b ldr r3, [r7, #4] + 8007fae: 689b ldr r3, [r3, #8] + 8007fb0: 494d ldr r1, [pc, #308] @ (80080e8 ) + 8007fb2: 4313 orrs r3, r2 + 8007fb4: 604b str r3, [r1, #4] + } + + /*------------------------- SYSCLK Configuration ---------------------------*/ + if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_SYSCLK) == RCC_CLOCKTYPE_SYSCLK) + 8007fb6: 687b ldr r3, [r7, #4] + 8007fb8: 681b ldr r3, [r3, #0] + 8007fba: f003 0301 and.w r3, r3, #1 + 8007fbe: 2b00 cmp r3, #0 + 8007fc0: d040 beq.n 8008044 + { + assert_param(IS_RCC_SYSCLKSOURCE(RCC_ClkInitStruct->SYSCLKSource)); + + /* HSE is selected as System Clock Source */ + if (RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_HSE) + 8007fc2: 687b ldr r3, [r7, #4] + 8007fc4: 685b ldr r3, [r3, #4] + 8007fc6: 2b01 cmp r3, #1 + 8007fc8: d107 bne.n 8007fda + { + /* Check the HSE ready flag */ + if (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == RESET) + 8007fca: 4b47 ldr r3, [pc, #284] @ (80080e8 ) + 8007fcc: 681b ldr r3, [r3, #0] + 8007fce: f403 3300 and.w r3, r3, #131072 @ 0x20000 + 8007fd2: 2b00 cmp r3, #0 + 8007fd4: d115 bne.n 8008002 + { + return HAL_ERROR; + 8007fd6: 2301 movs r3, #1 + 8007fd8: e07f b.n 80080da + } + } + /* PLL is selected as System Clock Source */ + else if (RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_PLLCLK) + 8007fda: 687b ldr r3, [r7, #4] + 8007fdc: 685b ldr r3, [r3, #4] + 8007fde: 2b02 cmp r3, #2 + 8007fe0: d107 bne.n 8007ff2 + { + /* Check the PLL ready flag */ + if (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == RESET) + 8007fe2: 4b41 ldr r3, [pc, #260] @ (80080e8 ) + 8007fe4: 681b ldr r3, [r3, #0] + 8007fe6: f003 7300 and.w r3, r3, #33554432 @ 0x2000000 + 8007fea: 2b00 cmp r3, #0 + 8007fec: d109 bne.n 8008002 + { + return HAL_ERROR; + 8007fee: 2301 movs r3, #1 + 8007ff0: e073 b.n 80080da + } + /* HSI is selected as System Clock Source */ + else + { + /* Check the HSI ready flag */ + if (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET) + 8007ff2: 4b3d ldr r3, [pc, #244] @ (80080e8 ) + 8007ff4: 681b ldr r3, [r3, #0] + 8007ff6: f003 0302 and.w r3, r3, #2 + 8007ffa: 2b00 cmp r3, #0 + 8007ffc: d101 bne.n 8008002 + { + return HAL_ERROR; + 8007ffe: 2301 movs r3, #1 + 8008000: e06b b.n 80080da + } + } + __HAL_RCC_SYSCLK_CONFIG(RCC_ClkInitStruct->SYSCLKSource); + 8008002: 4b39 ldr r3, [pc, #228] @ (80080e8 ) + 8008004: 685b ldr r3, [r3, #4] + 8008006: f023 0203 bic.w r2, r3, #3 + 800800a: 687b ldr r3, [r7, #4] + 800800c: 685b ldr r3, [r3, #4] + 800800e: 4936 ldr r1, [pc, #216] @ (80080e8 ) + 8008010: 4313 orrs r3, r2 + 8008012: 604b str r3, [r1, #4] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8008014: f7ff fa46 bl 80074a4 + 8008018: 60f8 str r0, [r7, #12] + + while (__HAL_RCC_GET_SYSCLK_SOURCE() != (RCC_ClkInitStruct->SYSCLKSource << RCC_CFGR_SWS_Pos)) + 800801a: e00a b.n 8008032 + { + if ((HAL_GetTick() - tickstart) > CLOCKSWITCH_TIMEOUT_VALUE) + 800801c: f7ff fa42 bl 80074a4 + 8008020: 4602 mov r2, r0 + 8008022: 68fb ldr r3, [r7, #12] + 8008024: 1ad3 subs r3, r2, r3 + 8008026: f241 3288 movw r2, #5000 @ 0x1388 + 800802a: 4293 cmp r3, r2 + 800802c: d901 bls.n 8008032 + { + return HAL_TIMEOUT; + 800802e: 2303 movs r3, #3 + 8008030: e053 b.n 80080da + while (__HAL_RCC_GET_SYSCLK_SOURCE() != (RCC_ClkInitStruct->SYSCLKSource << RCC_CFGR_SWS_Pos)) + 8008032: 4b2d ldr r3, [pc, #180] @ (80080e8 ) + 8008034: 685b ldr r3, [r3, #4] + 8008036: f003 020c and.w r2, r3, #12 + 800803a: 687b ldr r3, [r7, #4] + 800803c: 685b ldr r3, [r3, #4] + 800803e: 009b lsls r3, r3, #2 + 8008040: 429a cmp r2, r3 + 8008042: d1eb bne.n 800801c + } + } + +#if defined(FLASH_ACR_LATENCY) + /* Decreasing the number of wait states because of lower CPU frequency */ + if (FLatency < __HAL_FLASH_GET_LATENCY()) + 8008044: 4b27 ldr r3, [pc, #156] @ (80080e4 ) + 8008046: 681b ldr r3, [r3, #0] + 8008048: f003 0307 and.w r3, r3, #7 + 800804c: 683a ldr r2, [r7, #0] + 800804e: 429a cmp r2, r3 + 8008050: d210 bcs.n 8008074 + { + /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */ + __HAL_FLASH_SET_LATENCY(FLatency); + 8008052: 4b24 ldr r3, [pc, #144] @ (80080e4 ) + 8008054: 681b ldr r3, [r3, #0] + 8008056: f023 0207 bic.w r2, r3, #7 + 800805a: 4922 ldr r1, [pc, #136] @ (80080e4 ) + 800805c: 683b ldr r3, [r7, #0] + 800805e: 4313 orrs r3, r2 + 8008060: 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) + 8008062: 4b20 ldr r3, [pc, #128] @ (80080e4 ) + 8008064: 681b ldr r3, [r3, #0] + 8008066: f003 0307 and.w r3, r3, #7 + 800806a: 683a ldr r2, [r7, #0] + 800806c: 429a cmp r2, r3 + 800806e: d001 beq.n 8008074 + { + return HAL_ERROR; + 8008070: 2301 movs r3, #1 + 8008072: e032 b.n 80080da + } +} +#endif /* FLASH_ACR_LATENCY */ + +/*-------------------------- PCLK1 Configuration ---------------------------*/ +if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1) + 8008074: 687b ldr r3, [r7, #4] + 8008076: 681b ldr r3, [r3, #0] + 8008078: f003 0304 and.w r3, r3, #4 + 800807c: 2b00 cmp r3, #0 + 800807e: d008 beq.n 8008092 + { + assert_param(IS_RCC_PCLK(RCC_ClkInitStruct->APB1CLKDivider)); + MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE1, RCC_ClkInitStruct->APB1CLKDivider); + 8008080: 4b19 ldr r3, [pc, #100] @ (80080e8 ) + 8008082: 685b ldr r3, [r3, #4] + 8008084: f423 62e0 bic.w r2, r3, #1792 @ 0x700 + 8008088: 687b ldr r3, [r7, #4] + 800808a: 68db ldr r3, [r3, #12] + 800808c: 4916 ldr r1, [pc, #88] @ (80080e8 ) + 800808e: 4313 orrs r3, r2 + 8008090: 604b str r3, [r1, #4] + } + + /*-------------------------- PCLK2 Configuration ---------------------------*/ + if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2) + 8008092: 687b ldr r3, [r7, #4] + 8008094: 681b ldr r3, [r3, #0] + 8008096: f003 0308 and.w r3, r3, #8 + 800809a: 2b00 cmp r3, #0 + 800809c: d009 beq.n 80080b2 + { + assert_param(IS_RCC_PCLK(RCC_ClkInitStruct->APB2CLKDivider)); + MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE2, ((RCC_ClkInitStruct->APB2CLKDivider) << 3)); + 800809e: 4b12 ldr r3, [pc, #72] @ (80080e8 ) + 80080a0: 685b ldr r3, [r3, #4] + 80080a2: f423 5260 bic.w r2, r3, #14336 @ 0x3800 + 80080a6: 687b ldr r3, [r7, #4] + 80080a8: 691b ldr r3, [r3, #16] + 80080aa: 00db lsls r3, r3, #3 + 80080ac: 490e ldr r1, [pc, #56] @ (80080e8 ) + 80080ae: 4313 orrs r3, r2 + 80080b0: 604b str r3, [r1, #4] + } + + /* Update the SystemCoreClock global variable */ + SystemCoreClock = HAL_RCC_GetSysClockFreq() >> AHBPrescTable[(RCC->CFGR & RCC_CFGR_HPRE) >> RCC_CFGR_HPRE_Pos]; + 80080b2: f000 f821 bl 80080f8 + 80080b6: 4602 mov r2, r0 + 80080b8: 4b0b ldr r3, [pc, #44] @ (80080e8 ) + 80080ba: 685b ldr r3, [r3, #4] + 80080bc: 091b lsrs r3, r3, #4 + 80080be: f003 030f and.w r3, r3, #15 + 80080c2: 490a ldr r1, [pc, #40] @ (80080ec ) + 80080c4: 5ccb ldrb r3, [r1, r3] + 80080c6: fa22 f303 lsr.w r3, r2, r3 + 80080ca: 4a09 ldr r2, [pc, #36] @ (80080f0 ) + 80080cc: 6013 str r3, [r2, #0] + + /* Configure the source of time base considering new system clocks settings*/ + HAL_InitTick(uwTickPrio); + 80080ce: 4b09 ldr r3, [pc, #36] @ (80080f4 ) + 80080d0: 681b ldr r3, [r3, #0] + 80080d2: 4618 mov r0, r3 + 80080d4: f7ff f9a4 bl 8007420 + + return HAL_OK; + 80080d8: 2300 movs r3, #0 +} + 80080da: 4618 mov r0, r3 + 80080dc: 3710 adds r7, #16 + 80080de: 46bd mov sp, r7 + 80080e0: bd80 pop {r7, pc} + 80080e2: bf00 nop + 80080e4: 40022000 .word 0x40022000 + 80080e8: 40021000 .word 0x40021000 + 80080ec: 0800b22c .word 0x0800b22c + 80080f0: 20000004 .word 0x20000004 + 80080f4: 20000008 .word 0x20000008 + +080080f8 : + * right SYSCLK value. Otherwise, any configuration based on this function will be incorrect. + * + * @retval SYSCLK frequency + */ +uint32_t HAL_RCC_GetSysClockFreq(void) +{ + 80080f8: b490 push {r4, r7} + 80080fa: b08a sub sp, #40 @ 0x28 + 80080fc: 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}; + 80080fe: 4b29 ldr r3, [pc, #164] @ (80081a4 ) + 8008100: 1d3c adds r4, r7, #4 + 8008102: cb0f ldmia r3, {r0, r1, r2, r3} + 8008104: 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}; + 8008108: f240 2301 movw r3, #513 @ 0x201 + 800810c: 803b strh r3, [r7, #0] +#endif /*RCC_CFGR2_PREDIV1*/ + +#endif + uint32_t tmpreg = 0U, prediv = 0U, pllclk = 0U, pllmul = 0U; + 800810e: 2300 movs r3, #0 + 8008110: 61fb str r3, [r7, #28] + 8008112: 2300 movs r3, #0 + 8008114: 61bb str r3, [r7, #24] + 8008116: 2300 movs r3, #0 + 8008118: 627b str r3, [r7, #36] @ 0x24 + 800811a: 2300 movs r3, #0 + 800811c: 617b str r3, [r7, #20] + uint32_t sysclockfreq = 0U; + 800811e: 2300 movs r3, #0 + 8008120: 623b str r3, [r7, #32] +#if defined(RCC_CFGR2_PREDIV1SRC) + uint32_t prediv2 = 0U, pll2mul = 0U; +#endif /*RCC_CFGR2_PREDIV1SRC*/ + + tmpreg = RCC->CFGR; + 8008122: 4b21 ldr r3, [pc, #132] @ (80081a8 ) + 8008124: 685b ldr r3, [r3, #4] + 8008126: 61fb str r3, [r7, #28] + + /* Get SYSCLK source -------------------------------------------------------*/ + switch (tmpreg & RCC_CFGR_SWS) + 8008128: 69fb ldr r3, [r7, #28] + 800812a: f003 030c and.w r3, r3, #12 + 800812e: 2b04 cmp r3, #4 + 8008130: d002 beq.n 8008138 + 8008132: 2b08 cmp r3, #8 + 8008134: d003 beq.n 800813e + 8008136: e02b b.n 8008190 + { + case RCC_SYSCLKSOURCE_STATUS_HSE: /* HSE used as system clock */ + { + sysclockfreq = HSE_VALUE; + 8008138: 4b1c ldr r3, [pc, #112] @ (80081ac ) + 800813a: 623b str r3, [r7, #32] + break; + 800813c: e02b b.n 8008196 + } + case RCC_SYSCLKSOURCE_STATUS_PLLCLK: /* PLL used as system clock */ + { + pllmul = aPLLMULFactorTable[(uint32_t)(tmpreg & RCC_CFGR_PLLMULL) >> RCC_CFGR_PLLMULL_Pos]; + 800813e: 69fb ldr r3, [r7, #28] + 8008140: 0c9b lsrs r3, r3, #18 + 8008142: f003 030f and.w r3, r3, #15 + 8008146: 3328 adds r3, #40 @ 0x28 + 8008148: 443b add r3, r7 + 800814a: f813 3c24 ldrb.w r3, [r3, #-36] + 800814e: 617b str r3, [r7, #20] + if ((tmpreg & RCC_CFGR_PLLSRC) != RCC_PLLSOURCE_HSI_DIV2) + 8008150: 69fb ldr r3, [r7, #28] + 8008152: f403 3380 and.w r3, r3, #65536 @ 0x10000 + 8008156: 2b00 cmp r3, #0 + 8008158: d012 beq.n 8008180 + { +#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]; + 800815a: 4b13 ldr r3, [pc, #76] @ (80081a8 ) + 800815c: 685b ldr r3, [r3, #4] + 800815e: 0c5b lsrs r3, r3, #17 + 8008160: f003 0301 and.w r3, r3, #1 + 8008164: 3328 adds r3, #40 @ 0x28 + 8008166: 443b add r3, r7 + 8008168: f813 3c28 ldrb.w r3, [r3, #-40] + 800816c: 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); + 800816e: 697b ldr r3, [r7, #20] + 8008170: 4a0e ldr r2, [pc, #56] @ (80081ac ) + 8008172: fb03 f202 mul.w r2, r3, r2 + 8008176: 69bb ldr r3, [r7, #24] + 8008178: fbb2 f3f3 udiv r3, r2, r3 + 800817c: 627b str r3, [r7, #36] @ 0x24 + 800817e: e004 b.n 800818a +#endif /*RCC_CFGR2_PREDIV1SRC*/ + } + else + { + /* HSI used as PLL clock source : PLLCLK = HSI/2 * PLLMUL */ + pllclk = (uint32_t)((HSI_VALUE >> 1) * pllmul); + 8008180: 697b ldr r3, [r7, #20] + 8008182: 4a0b ldr r2, [pc, #44] @ (80081b0 ) + 8008184: fb02 f303 mul.w r3, r2, r3 + 8008188: 627b str r3, [r7, #36] @ 0x24 + } + sysclockfreq = pllclk; + 800818a: 6a7b ldr r3, [r7, #36] @ 0x24 + 800818c: 623b str r3, [r7, #32] + break; + 800818e: e002 b.n 8008196 + } + case RCC_SYSCLKSOURCE_STATUS_HSI: /* HSI used as system clock source */ + default: /* HSI used as system clock */ + { + sysclockfreq = HSI_VALUE; + 8008190: 4b06 ldr r3, [pc, #24] @ (80081ac ) + 8008192: 623b str r3, [r7, #32] + break; + 8008194: bf00 nop + } + } + return sysclockfreq; + 8008196: 6a3b ldr r3, [r7, #32] +} + 8008198: 4618 mov r0, r3 + 800819a: 3728 adds r7, #40 @ 0x28 + 800819c: 46bd mov sp, r7 + 800819e: bc90 pop {r4, r7} + 80081a0: 4770 bx lr + 80081a2: bf00 nop + 80081a4: 0800829c .word 0x0800829c + 80081a8: 40021000 .word 0x40021000 + 80081ac: 007a1200 .word 0x007a1200 + 80081b0: 003d0900 .word 0x003d0900 + +080081b4 : + * @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) +{ + 80081b4: b480 push {r7} + 80081b6: b085 sub sp, #20 + 80081b8: af00 add r7, sp, #0 + 80081ba: 6078 str r0, [r7, #4] + __IO uint32_t Delay = mdelay * (SystemCoreClock / 8U / 1000U); + 80081bc: 4b0a ldr r3, [pc, #40] @ (80081e8 ) + 80081be: 681b ldr r3, [r3, #0] + 80081c0: 4a0a ldr r2, [pc, #40] @ (80081ec ) + 80081c2: fba2 2303 umull r2, r3, r2, r3 + 80081c6: 0a5b lsrs r3, r3, #9 + 80081c8: 687a ldr r2, [r7, #4] + 80081ca: fb02 f303 mul.w r3, r2, r3 + 80081ce: 60fb str r3, [r7, #12] + do + { + __NOP(); + 80081d0: bf00 nop + } + while (Delay --); + 80081d2: 68fb ldr r3, [r7, #12] + 80081d4: 1e5a subs r2, r3, #1 + 80081d6: 60fa str r2, [r7, #12] + 80081d8: 2b00 cmp r3, #0 + 80081da: d1f9 bne.n 80081d0 +} + 80081dc: bf00 nop + 80081de: bf00 nop + 80081e0: 3714 adds r7, #20 + 80081e2: 46bd mov sp, r7 + 80081e4: bc80 pop {r7} + 80081e6: 4770 bx lr + 80081e8: 20000004 .word 0x20000004 + 80081ec: 10624dd3 .word 0x10624dd3 + +080081f0 : + 80081f0: 4603 mov r3, r0 + 80081f2: 4402 add r2, r0 + 80081f4: 4293 cmp r3, r2 + 80081f6: d100 bne.n 80081fa + 80081f8: 4770 bx lr + 80081fa: f803 1b01 strb.w r1, [r3], #1 + 80081fe: e7f9 b.n 80081f4 + +08008200 <__libc_init_array>: + 8008200: b570 push {r4, r5, r6, lr} + 8008202: 2600 movs r6, #0 + 8008204: 4d0c ldr r5, [pc, #48] @ (8008238 <__libc_init_array+0x38>) + 8008206: 4c0d ldr r4, [pc, #52] @ (800823c <__libc_init_array+0x3c>) + 8008208: 1b64 subs r4, r4, r5 + 800820a: 10a4 asrs r4, r4, #2 + 800820c: 42a6 cmp r6, r4 + 800820e: d109 bne.n 8008224 <__libc_init_array+0x24> + 8008210: f000 f81a bl 8008248 <_init> + 8008214: 2600 movs r6, #0 + 8008216: 4d0a ldr r5, [pc, #40] @ (8008240 <__libc_init_array+0x40>) + 8008218: 4c0a ldr r4, [pc, #40] @ (8008244 <__libc_init_array+0x44>) + 800821a: 1b64 subs r4, r4, r5 + 800821c: 10a4 asrs r4, r4, #2 + 800821e: 42a6 cmp r6, r4 + 8008220: d105 bne.n 800822e <__libc_init_array+0x2e> + 8008222: bd70 pop {r4, r5, r6, pc} + 8008224: f855 3b04 ldr.w r3, [r5], #4 + 8008228: 4798 blx r3 + 800822a: 3601 adds r6, #1 + 800822c: e7ee b.n 800820c <__libc_init_array+0xc> + 800822e: f855 3b04 ldr.w r3, [r5], #4 + 8008232: 4798 blx r3 + 8008234: 3601 adds r6, #1 + 8008236: e7f2 b.n 800821e <__libc_init_array+0x1e> + 8008238: 0800b23c .word 0x0800b23c + 800823c: 0800b23c .word 0x0800b23c + 8008240: 0800b23c .word 0x0800b23c + 8008244: 0800b240 .word 0x0800b240 + +08008248 <_init>: + 8008248: b5f8 push {r3, r4, r5, r6, r7, lr} + 800824a: bf00 nop + 800824c: bcf8 pop {r3, r4, r5, r6, r7} + 800824e: bc08 pop {r3} + 8008250: 469e mov lr, r3 + 8008252: 4770 bx lr + +08008254 <_fini>: + 8008254: b5f8 push {r3, r4, r5, r6, r7, lr} + 8008256: bf00 nop + 8008258: bcf8 pop {r3, r4, r5, r6, r7} + 800825a: bc08 pop {r3} + 800825c: 469e mov lr, r3 + 800825e: 4770 bx lr diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/lcd.map b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/lcd.map new file mode 100644 index 0000000..1fc9892 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/lcd.map @@ -0,0 +1,2998 @@ +Archive member included to satisfy reference by file (symbol) + +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-exit.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o (exit) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-exit.o) (__stdio_exit_handler) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fwalk.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) (_fwalk_sglue) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-memset.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o (memset) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-impure.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) (_impure_data) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-errno.o) + ./Core/Src/syscalls.o (__errno) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-init.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o (__libc_init_array) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) (__retarget_lock_init_recursive) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mallocr.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) (_malloc_r) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fflush.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) (_fflush_r) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mlock.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mallocr.o) (__malloc_lock) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) (__sread) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-closer.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) (_close_r) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-reent.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-closer.o) (errno) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lseekr.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) (_lseek_r) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-readr.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) (_read_r) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-sbrkr.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mallocr.o) (_sbrk_r) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-writer.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) (_write_r) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-freer.o) + /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fflush.o) (_free_r) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldf3.o) + ./Core/Src/lcd.o (__aeabi_dmul) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) + ./Core/Src/lcd.o (__aeabi_i2d) +/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) + ./Core/Src/lcd.o (__aeabi_d2uiz) + +Discarded input sections + + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crti.o + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crti.o + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crti.o + .data 0x00000000 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtbegin.o + .rodata 0x00000000 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtbegin.o + .text 0x00000000 0x7c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o + .ARM.extab 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o + .ARM.exidx 0x00000000 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o + .ARM.attributes + 0x00000000 0x1b /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/gpio.o + .text 0x00000000 0x0 ./Core/Src/gpio.o + .data 0x00000000 0x0 ./Core/Src/gpio.o + .bss 0x00000000 0x0 ./Core/Src/gpio.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/lcd.o + .text 0x00000000 0x0 ./Core/Src/lcd.o + .data 0x00000000 0x0 ./Core/Src/lcd.o + .bss 0x00000000 0x0 ./Core/Src/lcd.o + .data.g_point_color + 0x00000000 0x4 ./Core/Src/lcd.o + .text.lcd_wr_regno + 0x00000000 0x4c ./Core/Src/lcd.o + .text.lcd_write_ram_prepare + 0x00000000 0x54 ./Core/Src/lcd.o + .text.lcd_read_point + 0x00000000 0x128 ./Core/Src/lcd.o + .text.lcd_display_on + 0x00000000 0x94 ./Core/Src/lcd.o + .text.lcd_display_off + 0x00000000 0x94 ./Core/Src/lcd.o + .text.lcd_set_window + 0x00000000 0x7d0 ./Core/Src/lcd.o + .text.lcd_color_fill + 0x00000000 0xfc ./Core/Src/lcd.o + .text.lcd_draw_hline + 0x00000000 0x64 ./Core/Src/lcd.o + .text.lcd_draw_circle + 0x00000000 0x156 ./Core/Src/lcd.o + .text.lcd_fill_circle + 0x00000000 0x138 ./Core/Src/lcd.o + .text.lcd_pow 0x00000000 0x36 ./Core/Src/lcd.o + .text.lcd_show_num + 0x00000000 0xf0 ./Core/Src/lcd.o + .text.lcd_show_xnum + 0x00000000 0x144 ./Core/Src/lcd.o + .debug_macro 0x00000000 0xaa8 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x22 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x20f ./Core/Src/lcd.o + .debug_macro 0x00000000 0x2e ./Core/Src/lcd.o + .debug_macro 0x00000000 0x22 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x103 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x6a ./Core/Src/lcd.o + .debug_macro 0x00000000 0x1df ./Core/Src/lcd.o + .debug_macro 0x00000000 0x1c ./Core/Src/lcd.o + .debug_macro 0x00000000 0x22 ./Core/Src/lcd.o + .debug_macro 0x00000000 0xbd ./Core/Src/lcd.o + .debug_macro 0x00000000 0xd23 ./Core/Src/lcd.o + .debug_macro 0x00000000 0xfd8c ./Core/Src/lcd.o + .debug_macro 0x00000000 0x6d ./Core/Src/lcd.o + .debug_macro 0x00000000 0x3468 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x5be ./Core/Src/lcd.o + .debug_macro 0x00000000 0x4d5 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x1cb ./Core/Src/lcd.o + .debug_macro 0x00000000 0x114 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x1ea ./Core/Src/lcd.o + .debug_macro 0x00000000 0x27 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x144 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x1bc ./Core/Src/lcd.o + .debug_macro 0x00000000 0x30 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x3c ./Core/Src/lcd.o + .debug_macro 0x00000000 0x57 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x88 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x24f ./Core/Src/lcd.o + .debug_macro 0x00000000 0x141 ./Core/Src/lcd.o + .debug_macro 0x00000000 0xb5 ./Core/Src/lcd.o + .debug_macro 0x00000000 0x34 ./Core/Src/lcd.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/main.o + .text 0x00000000 0x0 ./Core/Src/main.o + .data 0x00000000 0x0 ./Core/Src/main.o + .bss 0x00000000 0x0 ./Core/Src/main.o + .debug_macro 0x00000000 0xaa8 ./Core/Src/main.o + .debug_macro 0x00000000 0x20f ./Core/Src/main.o + .debug_macro 0x00000000 0x2e ./Core/Src/main.o + .debug_macro 0x00000000 0x22 ./Core/Src/main.o + .debug_macro 0x00000000 0x22 ./Core/Src/main.o + .debug_macro 0x00000000 0x8e ./Core/Src/main.o + .debug_macro 0x00000000 0x51 ./Core/Src/main.o + .debug_macro 0x00000000 0x103 ./Core/Src/main.o + .debug_macro 0x00000000 0x6a ./Core/Src/main.o + .debug_macro 0x00000000 0x1df ./Core/Src/main.o + .debug_macro 0x00000000 0x1c ./Core/Src/main.o + .debug_macro 0x00000000 0x22 ./Core/Src/main.o + .debug_macro 0x00000000 0xbd ./Core/Src/main.o + .debug_macro 0x00000000 0xd23 ./Core/Src/main.o + .debug_macro 0x00000000 0xfd8c ./Core/Src/main.o + .debug_macro 0x00000000 0x6d ./Core/Src/main.o + .debug_macro 0x00000000 0x3468 ./Core/Src/main.o + .debug_macro 0x00000000 0x189 ./Core/Src/main.o + .debug_macro 0x00000000 0x5c ./Core/Src/main.o + .debug_macro 0x00000000 0x5be ./Core/Src/main.o + .debug_macro 0x00000000 0x4d5 ./Core/Src/main.o + .debug_macro 0x00000000 0x1cb ./Core/Src/main.o + .debug_macro 0x00000000 0x114 ./Core/Src/main.o + .debug_macro 0x00000000 0x1ea ./Core/Src/main.o + .debug_macro 0x00000000 0x27 ./Core/Src/main.o + .debug_macro 0x00000000 0x144 ./Core/Src/main.o + .debug_macro 0x00000000 0x1bc ./Core/Src/main.o + .debug_macro 0x00000000 0x30 ./Core/Src/main.o + .debug_macro 0x00000000 0x3c ./Core/Src/main.o + .debug_macro 0x00000000 0x57 ./Core/Src/main.o + .debug_macro 0x00000000 0x88 ./Core/Src/main.o + .debug_macro 0x00000000 0x24f ./Core/Src/main.o + .debug_macro 0x00000000 0x141 ./Core/Src/main.o + .debug_macro 0x00000000 0xb5 ./Core/Src/main.o + .debug_macro 0x00000000 0x34 ./Core/Src/main.o + .debug_macro 0x00000000 0x24 ./Core/Src/main.o + .debug_macro 0x00000000 0x43 ./Core/Src/main.o + .debug_macro 0x00000000 0x34 ./Core/Src/main.o + .debug_macro 0x00000000 0x16 ./Core/Src/main.o + .debug_macro 0x00000000 0x16 ./Core/Src/main.o + .debug_macro 0x00000000 0x43 ./Core/Src/main.o + .debug_macro 0x00000000 0x34 ./Core/Src/main.o + .debug_macro 0x00000000 0x10 ./Core/Src/main.o + .debug_macro 0x00000000 0x58 ./Core/Src/main.o + .debug_macro 0x00000000 0x8e ./Core/Src/main.o + .debug_macro 0x00000000 0x1c ./Core/Src/main.o + .debug_macro 0x00000000 0x177 ./Core/Src/main.o + .debug_macro 0x00000000 0x369 ./Core/Src/main.o + .debug_macro 0x00000000 0x16 ./Core/Src/main.o + .debug_macro 0x00000000 0x29 ./Core/Src/main.o + .debug_macro 0x00000000 0x1a7 ./Core/Src/main.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .text 0x00000000 0x0 ./Core/Src/stm32f1xx_hal_msp.o + .data 0x00000000 0x0 ./Core/Src/stm32f1xx_hal_msp.o + .bss 0x00000000 0x0 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0xaa8 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x20f ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x2e ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x22 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x22 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x8e ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x51 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x103 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x6a ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x1df ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x1c ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x22 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0xbd ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0xd23 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0xfd8c ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x6d ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x3468 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x189 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x5c ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x5be ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x4d5 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x1cb ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x114 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x1ea ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x27 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x144 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x1bc ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x30 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x3c ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x57 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x88 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x24f ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x141 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0xb5 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00000000 0x34 ./Core/Src/stm32f1xx_hal_msp.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/stm32f1xx_it.o + .text 0x00000000 0x0 ./Core/Src/stm32f1xx_it.o + .data 0x00000000 0x0 ./Core/Src/stm32f1xx_it.o + .bss 0x00000000 0x0 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0xaa8 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x20f ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x2e ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x22 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x22 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x8e ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x51 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x103 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x6a ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x1df ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x1c ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x22 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0xbd ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0xd23 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0xfd8c ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x6d ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x3468 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x189 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x5c ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x5be ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x4d5 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x1cb ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x114 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x1ea ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x27 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x144 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x1bc ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x30 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x3c ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x57 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x88 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x24f ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x141 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0xb5 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000 0x34 ./Core/Src/stm32f1xx_it.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/syscalls.o + .text 0x00000000 0x0 ./Core/Src/syscalls.o + .data 0x00000000 0x0 ./Core/Src/syscalls.o + .bss 0x00000000 0x0 ./Core/Src/syscalls.o + .bss.__env 0x00000000 0x4 ./Core/Src/syscalls.o + .data.environ 0x00000000 0x4 ./Core/Src/syscalls.o + .text.initialise_monitor_handles + 0x00000000 0xc ./Core/Src/syscalls.o + .text._getpid 0x00000000 0xe ./Core/Src/syscalls.o + .text._kill 0x00000000 0x20 ./Core/Src/syscalls.o + .text._exit 0x00000000 0x16 ./Core/Src/syscalls.o + .text._read 0x00000000 0x3a ./Core/Src/syscalls.o + .text._write 0x00000000 0x38 ./Core/Src/syscalls.o + .text._close 0x00000000 0x16 ./Core/Src/syscalls.o + .text._fstat 0x00000000 0x1e ./Core/Src/syscalls.o + .text._isatty 0x00000000 0x14 ./Core/Src/syscalls.o + .text._lseek 0x00000000 0x18 ./Core/Src/syscalls.o + .text._open 0x00000000 0x1a ./Core/Src/syscalls.o + .text._wait 0x00000000 0x1e ./Core/Src/syscalls.o + .text._unlink 0x00000000 0x1e ./Core/Src/syscalls.o + .text._times 0x00000000 0x16 ./Core/Src/syscalls.o + .text._stat 0x00000000 0x1e ./Core/Src/syscalls.o + .text._link 0x00000000 0x20 ./Core/Src/syscalls.o + .text._fork 0x00000000 0x16 ./Core/Src/syscalls.o + .text._execve 0x00000000 0x22 ./Core/Src/syscalls.o + .debug_info 0x00000000 0x6a3 ./Core/Src/syscalls.o + .debug_abbrev 0x00000000 0x1b6 ./Core/Src/syscalls.o + .debug_aranges + 0x00000000 0xa8 ./Core/Src/syscalls.o + .debug_rnglists + 0x00000000 0x79 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x274 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0xaa8 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x22 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x5b ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x24 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x94 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x43 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x34 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x57 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x189 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x369 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x16 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x43 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x34 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x58 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x8e ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x1c ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x177 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x35 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x6a ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x1c ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x52 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x22 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x52 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0xcf ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x1c ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x3d ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x35 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x12c ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x16 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x16 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x29 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x242 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x1c ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x16 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x146 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x103 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x1df ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x18a ./Core/Src/syscalls.o + .debug_macro 0x00000000 0x16 ./Core/Src/syscalls.o + .debug_macro 0x00000000 0xce ./Core/Src/syscalls.o + .debug_line 0x00000000 0x84b ./Core/Src/syscalls.o + .debug_str 0x00000000 0x988e ./Core/Src/syscalls.o + .comment 0x00000000 0x44 ./Core/Src/syscalls.o + .debug_frame 0x00000000 0x2ac ./Core/Src/syscalls.o + .ARM.attributes + 0x00000000 0x2d ./Core/Src/syscalls.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/sysmem.o + .text 0x00000000 0x0 ./Core/Src/sysmem.o + .data 0x00000000 0x0 ./Core/Src/sysmem.o + .bss 0x00000000 0x0 ./Core/Src/sysmem.o + .bss.__sbrk_heap_end + 0x00000000 0x4 ./Core/Src/sysmem.o + .text._sbrk 0x00000000 0x6c ./Core/Src/sysmem.o + .debug_info 0x00000000 0x168 ./Core/Src/sysmem.o + .debug_abbrev 0x00000000 0xbc ./Core/Src/sysmem.o + .debug_aranges + 0x00000000 0x20 ./Core/Src/sysmem.o + .debug_rnglists + 0x00000000 0x13 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0xff ./Core/Src/sysmem.o + .debug_macro 0x00000000 0xaa8 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x10 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x22 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x5b ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x24 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x94 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x43 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x34 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x189 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x16 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x43 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x57 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x34 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x10 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x58 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x8e ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x1c ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x177 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x23c ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x103 ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x6a ./Core/Src/sysmem.o + .debug_macro 0x00000000 0x1df ./Core/Src/sysmem.o + .debug_line 0x00000000 0x51c ./Core/Src/sysmem.o + .debug_str 0x00000000 0x60a6 ./Core/Src/sysmem.o + .comment 0x00000000 0x44 ./Core/Src/sysmem.o + .debug_frame 0x00000000 0x34 ./Core/Src/sysmem.o + .ARM.attributes + 0x00000000 0x2d ./Core/Src/sysmem.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x00000000 0xc ./Core/Src/system_stm32f1xx.o + .text 0x00000000 0x0 ./Core/Src/system_stm32f1xx.o + .data 0x00000000 0x0 ./Core/Src/system_stm32f1xx.o + .bss 0x00000000 0x0 ./Core/Src/system_stm32f1xx.o + .rodata.APBPrescTable + 0x00000000 0x8 ./Core/Src/system_stm32f1xx.o + .text.SystemCoreClockUpdate + 0x00000000 0xe4 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0xaa8 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x2e ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x22 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x22 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x8e ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x51 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x103 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x6a ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x1df ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x1c ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x22 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0xbd ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0xd23 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0xfd8c ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x6d ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x20f ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x3468 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x189 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x5c ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x5be ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x4d5 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x1cb ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x114 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x1ea ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x27 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x144 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x1bc ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x30 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x3c ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x57 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x88 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x24f ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0x141 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00000000 0xb5 ./Core/Src/system_stm32f1xx.o + .text 0x00000000 0x14 ./Core/Startup/startup_stm32f103rctx.o + .data 0x00000000 0x0 ./Core/Startup/startup_stm32f103rctx.o + .bss 0x00000000 0x0 ./Core/Startup/startup_stm32f103rctx.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DeInit + 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_MspInit + 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_MspDeInit + 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetTickPrio + 0x00000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_SetTickFreq + 0x00000000 0x50 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetTickFreq + 0x00000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_SuspendTick + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_ResumeTick + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetHalVersion + 0x00000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetREVID + 0x00000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetDEVID + 0x00000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetUIDw0 + 0x00000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetUIDw1 + 0x00000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetUIDw2 + 0x00000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DBGMCU_EnableDBGSleepMode + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DBGMCU_DisableDBGSleepMode + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DBGMCU_EnableDBGStopMode + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DBGMCU_DisableDBGStopMode + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DBGMCU_EnableDBGStandbyMode + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DBGMCU_DisableDBGStandbyMode + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_EnableIRQ + 0x00000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_DisableIRQ + 0x00000000 0x48 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_GetPendingIRQ + 0x00000000 0x40 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_SetPendingIRQ + 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_ClearPendingIRQ + 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_GetActive + 0x00000000 0x40 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_GetPriority + 0x00000000 0x4c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.NVIC_DecodePriority + 0x00000000 0x6c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_SystemReset + 0x00000000 0x2c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_EnableIRQ + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_DisableIRQ + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_SystemReset + 0x00000000 0x8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_GetPriorityGrouping + 0x00000000 0xe ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_GetPriority + 0x00000000 0x2c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_SetPendingIRQ + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_GetPendingIRQ + 0x00000000 0x1e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_ClearPendingIRQ + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_GetActive + 0x00000000 0x1e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_SYSTICK_CLKSourceConfig + 0x00000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_SYSTICK_IRQHandler + 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_SYSTICK_Callback + 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_Init + 0x00000000 0xec ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_DeInit + 0x00000000 0xf0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_Start + 0x00000000 0x84 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_Start_IT + 0x00000000 0xbe ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_Abort + 0x00000000 0x74 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_Abort_IT + 0x00000000 0x210 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_PollForTransfer + 0x00000000 0x77c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_IRQHandler + 0x00000000 0x478 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_RegisterCallback + 0x00000000 0x90 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_UnRegisterCallback + 0x00000000 0xa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_GetState + 0x00000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_GetError + 0x00000000 0x16 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.DMA_SetConfig + 0x00000000 0x5a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_info 0x00000000 0x6cd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_abbrev 0x00000000 0x20b ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_aranges + 0x00000000 0x80 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_rnglists + 0x00000000 0x64 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_line 0x00000000 0x1226 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_str 0x00000000 0x89330 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .comment 0x00000000 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_frame 0x00000000 0x20c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .ARM.attributes + 0x00000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_SetConfigLine + 0x00000000 0x14c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_GetConfigLine + 0x00000000 0xf0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_ClearConfigLine + 0x00000000 0xc0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_RegisterCallback + 0x00000000 0x32 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_GetHandle + 0x00000000 0x26 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_IRQHandler + 0x00000000 0x48 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_GetPending + 0x00000000 0x40 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_ClearPending + 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_GenerateSWI + 0x00000000 0x2c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_info 0x00000000 0x4ec ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_abbrev 0x00000000 0x1c5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_aranges + 0x00000000 0x60 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_rnglists + 0x00000000 0x46 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_line 0x00000000 0x94a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_str 0x00000000 0x89109 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .comment 0x00000000 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_frame 0x00000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .ARM.attributes + 0x00000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .bss.pFlash 0x00000000 0x20 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_Program + 0x00000000 0xe0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_Program_IT + 0x00000000 0x90 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_IRQHandler + 0x00000000 0x1c8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_EndOfOperationCallback + 0x00000000 0x12 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_OperationErrorCallback + 0x00000000 0x12 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_Unlock + 0x00000000 0x4c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_Lock + 0x00000000 0x20 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_OB_Unlock + 0x00000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_OB_Lock + 0x00000000 0x20 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_OB_Launch + 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_GetError + 0x00000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.FLASH_Program_HalfWord + 0x00000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.FLASH_WaitForLastOperation + 0x00000000 0x8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.FLASH_SetErrorCode + 0x00000000 0xa0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_info 0x00000000 0x4f8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_abbrev 0x00000000 0x250 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_aranges + 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_rnglists + 0x00000000 0x66 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_line 0x00000000 0x9e5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_str 0x00000000 0x89262 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .comment 0x00000000 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_frame 0x00000000 0x20c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .ARM.attributes + 0x00000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.HAL_FLASHEx_Erase + 0x00000000 0xd8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.HAL_FLASHEx_Erase_IT + 0x00000000 0x84 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.HAL_FLASHEx_OBErase + 0x00000000 0x84 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.HAL_FLASHEx_OBProgram + 0x00000000 0xf8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.HAL_FLASHEx_OBGetConfig + 0x00000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.HAL_FLASHEx_OBGetUserData + 0x00000000 0x40 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_MassErase + 0x00000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_EnableWRP + 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_DisableWRP + 0x00000000 0x140 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_RDP_LevelConfig + 0x00000000 0xa0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_UserConfig + 0x00000000 0x6c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_ProgramData + 0x00000000 0x68 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_GetWRP + 0x00000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_GetRDP + 0x00000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_GetUser + 0x00000000 0x20 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_PageErase + 0x00000000 0x40 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_info 0x00000000 0x777 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_abbrev 0x00000000 0x247 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_aranges + 0x00000000 0x98 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_rnglists + 0x00000000 0x74 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x196 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_line 0x00000000 0xace ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_str 0x00000000 0x89410 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .comment 0x00000000 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_frame 0x00000000 0x258 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .ARM.attributes + 0x00000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_DeInit + 0x00000000 0x198 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_ReadPin + 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_TogglePin + 0x00000000 0x32 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_LockPin + 0x00000000 0x4e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_EXTI_IRQHandler + 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_EXTI_Callback + 0x00000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .text.HAL_GPIOEx_ConfigEventout + 0x00000000 0x2c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .text.HAL_GPIOEx_EnableEventout + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .text.HAL_GPIOEx_DisableEventout + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_info 0x00000000 0x152 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_abbrev 0x00000000 0xca ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_aranges + 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_rnglists + 0x00000000 0x1f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_line 0x00000000 0x692 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_str 0x00000000 0x88f8a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .comment 0x00000000 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_frame 0x00000000 0x78 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .ARM.attributes + 0x00000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.PWR_OverloadWfe + 0x00000000 0x10 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_DeInit + 0x00000000 0x28 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnableBkUpAccess + 0x00000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_DisableBkUpAccess + 0x00000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_ConfigPVD + 0x00000000 0xbc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnablePVD + 0x00000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_DisablePVD + 0x00000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnableWakeUpPin + 0x00000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_DisableWakeUpPin + 0x00000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnterSLEEPMode + 0x00000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnterSTOPMode + 0x00000000 0x64 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnterSTANDBYMode + 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnableSleepOnExit + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_DisableSleepOnExit + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnableSEVOnPend + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_DisableSEVOnPend + 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_PVD_IRQHandler + 0x00000000 0x24 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_PVDCallback + 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_info 0x00000000 0x628 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_abbrev 0x00000000 0x1f6 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_aranges + 0x00000000 0xa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_rnglists + 0x00000000 0x7a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x1e4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_line 0x00000000 0x87e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_str 0x00000000 0x894be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .comment 0x00000000 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_frame 0x00000000 0x270 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .ARM.attributes + 0x00000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_DeInit + 0x00000000 0x134 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_MCOConfig + 0x00000000 0x70 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_EnableCSS + 0x00000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_DisableCSS + 0x00000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_GetHCLKFreq + 0x00000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_GetPCLK1Freq + 0x00000000 0x28 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_GetPCLK2Freq + 0x00000000 0x28 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_GetOscConfig + 0x00000000 0x104 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_GetClockConfig + 0x00000000 0x60 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_NMI_IRQHandler + 0x00000000 0x28 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_CSSCallback + 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .text.HAL_RCCEx_PeriphCLKConfig + 0x00000000 0x16c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .text.HAL_RCCEx_GetPeriphCLKConfig + 0x00000000 0x84 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .rodata 0x00000000 0x10 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .text.HAL_RCCEx_GetPeriphCLKFreq + 0x00000000 0x1c8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_info 0x00000000 0x3d9 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_abbrev 0x00000000 0x188 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_aranges + 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_rnglists + 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_line 0x00000000 0x864 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_str 0x00000000 0x89144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .comment 0x00000000 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_frame 0x00000000 0x84 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .ARM.attributes + 0x00000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_info 0x00000000 0x70 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_abbrev 0x00000000 0x28 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_aranges + 0x00000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x185 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_line 0x00000000 0x646 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_str 0x00000000 0x88ed6 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .comment 0x00000000 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .ARM.attributes + 0x00000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x00000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .text 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .data 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .bss 0x00000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_info 0x00000000 0x70 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_abbrev 0x00000000 0x28 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_aranges + 0x00000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0xaa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0xbd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0xfd8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x189 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x4d5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x1ea ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x24f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x00000000 0xb5 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_line 0x00000000 0x649 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_str 0x00000000 0x88ed9 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .comment 0x00000000 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .ARM.attributes + 0x00000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-exit.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-exit.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-exit.o) + .text.exit 0x00000000 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-exit.o) + .debug_frame 0x00000000 0x28 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-exit.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-exit.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text.std 0x00000000 0x6c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text.stdio_exit_handler + 0x00000000 0x18 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text.cleanup_stdio + 0x00000000 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text.__fp_lock + 0x00000000 0x18 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text.__fp_unlock + 0x00000000 0x18 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text.global_stdio_init.part.0 + 0x00000000 0x3c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text.__sfp_lock_acquire + 0x00000000 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text.__sfp_lock_release + 0x00000000 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text.__sfp 0x00000000 0xa4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text.__sinit 0x00000000 0x30 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text.__fp_lock_all + 0x00000000 0x1c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text.__fp_unlock_all + 0x00000000 0x1c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .data.__sglue 0x00000000 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .bss.__sf 0x00000000 0x138 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .bss.__stdio_exit_handler + 0x00000000 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .debug_frame 0x00000000 0x144 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-findfp.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fwalk.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fwalk.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fwalk.o) + .text._fwalk_sglue + 0x00000000 0x3c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fwalk.o) + .debug_frame 0x00000000 0x34 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fwalk.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fwalk.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-memset.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-memset.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-memset.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-impure.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-impure.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-impure.o) + .data._impure_ptr + 0x00000000 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-impure.o) + .data._impure_data + 0x00000000 0x4c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-impure.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-impure.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-errno.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-errno.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-errno.o) + .text.__errno 0x00000000 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-errno.o) + .debug_frame 0x00000000 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-errno.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-errno.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-init.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-init.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-init.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .text.__retarget_lock_init + 0x00000000 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .text.__retarget_lock_init_recursive + 0x00000000 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .text.__retarget_lock_close + 0x00000000 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .text.__retarget_lock_close_recursive + 0x00000000 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .text.__retarget_lock_acquire + 0x00000000 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .text.__retarget_lock_acquire_recursive + 0x00000000 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .text.__retarget_lock_try_acquire + 0x00000000 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .text.__retarget_lock_try_acquire_recursive + 0x00000000 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .text.__retarget_lock_release + 0x00000000 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .text.__retarget_lock_release_recursive + 0x00000000 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .bss.__lock___arc4random_mutex + 0x00000000 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .bss.__lock___dd_hash_mutex + 0x00000000 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .bss.__lock___tz_mutex + 0x00000000 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .bss.__lock___env_recursive_mutex + 0x00000000 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .bss.__lock___malloc_recursive_mutex + 0x00000000 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .bss.__lock___at_quick_exit_mutex + 0x00000000 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .bss.__lock___atexit_recursive_mutex + 0x00000000 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .bss.__lock___sfp_recursive_mutex + 0x00000000 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .debug_frame 0x00000000 0xb0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lock.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mallocr.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mallocr.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mallocr.o) + .text.sbrk_aligned + 0x00000000 0x44 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mallocr.o) + .text._malloc_r + 0x00000000 0x100 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mallocr.o) + .bss.__malloc_sbrk_start + 0x00000000 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mallocr.o) + .bss.__malloc_free_list + 0x00000000 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mallocr.o) + .debug_frame 0x00000000 0x50 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mallocr.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mallocr.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fflush.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fflush.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fflush.o) + .text.__sflush_r + 0x00000000 0x100 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fflush.o) + .text._fflush_r + 0x00000000 0x50 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fflush.o) + .text.fflush 0x00000000 0x28 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fflush.o) + .debug_frame 0x00000000 0x5c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fflush.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-fflush.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mlock.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mlock.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mlock.o) + .text.__malloc_lock + 0x00000000 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mlock.o) + .text.__malloc_unlock + 0x00000000 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mlock.o) + .debug_frame 0x00000000 0x30 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mlock.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-mlock.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) + .text.__sread 0x00000000 0x22 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) + .text.__seofread + 0x00000000 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) + .text.__swrite + 0x00000000 0x38 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) + .text.__sseek 0x00000000 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) + .text.__sclose + 0x00000000 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) + .debug_frame 0x00000000 0x88 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-stdio.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-closer.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-closer.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-closer.o) + .text._close_r + 0x00000000 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-closer.o) + .debug_frame 0x00000000 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-closer.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-closer.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-reent.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-reent.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-reent.o) + .text._reclaim_reent + 0x00000000 0xac /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-reent.o) + .bss.errno 0x00000000 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-reent.o) + .debug_frame 0x00000000 0x38 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-reent.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-reent.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lseekr.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lseekr.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lseekr.o) + .text._lseek_r + 0x00000000 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lseekr.o) + .debug_frame 0x00000000 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lseekr.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-lseekr.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-readr.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-readr.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-readr.o) + .text._read_r 0x00000000 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-readr.o) + .debug_frame 0x00000000 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-readr.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-readr.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-sbrkr.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-sbrkr.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-sbrkr.o) + .text._sbrk_r 0x00000000 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-sbrkr.o) + .debug_frame 0x00000000 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-sbrkr.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-sbrkr.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-writer.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-writer.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-writer.o) + .text._write_r + 0x00000000 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-writer.o) + .debug_frame 0x00000000 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-writer.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-writer.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-freer.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-freer.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-freer.o) + .text._free_r 0x00000000 0x90 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-freer.o) + .debug_frame 0x00000000 0x38 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-freer.o) + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-freer.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldf3.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldf3.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtend.o + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtend.o + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtend.o + .rodata 0x00000000 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtend.o + .eh_frame 0x00000000 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtend.o + .ARM.attributes + 0x00000000 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtend.o + .text 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtn.o + .data 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtn.o + .bss 0x00000000 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtn.o + +Memory Configuration + +Name Origin Length Attributes +RAM 0x20000000 0x0000c000 xrw +FLASH 0x08000000 0x00040000 xr +*default* 0x00000000 0xffffffff + +Linker script and memory map + +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crti.o +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtbegin.o +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o +LOAD ./Core/Src/gpio.o +LOAD ./Core/Src/lcd.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_stm32f103rctx.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 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a +END GROUP +START GROUP +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a +END GROUP +START GROUP +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libnosys.a +END GROUP +START GROUP +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libnosys.a +END GROUP +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtend.o +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtn.o + 0x2000c000 _estack = (ORIGIN (RAM) + LENGTH (RAM)) + 0x00000200 _Min_Heap_Size = 0x200 + 0x00000400 _Min_Stack_Size = 0x400 + +.isr_vector 0x08000000 0x1e4 + 0x08000000 . = ALIGN (0x4) + *(.isr_vector) + .isr_vector 0x08000000 0x1e4 ./Core/Startup/startup_stm32f103rctx.o + 0x08000000 g_pfnVectors + 0x080001e4 . = ALIGN (0x4) + +.text 0x080001e8 0x8078 + 0x080001e8 . = ALIGN (0x4) + *(.text) + .text 0x080001e8 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtbegin.o + .text 0x08000228 0x254 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldf3.o) + 0x08000228 __aeabi_dmul + 0x08000228 __muldf3 + .text 0x0800047c 0x378 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) + 0x0800047c __aeabi_drsub + 0x08000484 __subdf3 + 0x08000484 __aeabi_dsub + 0x08000488 __aeabi_dadd + 0x08000488 __adddf3 + 0x08000700 __aeabi_ui2d + 0x08000700 __floatunsidf + 0x08000720 __floatsidf + 0x08000720 __aeabi_i2d + 0x08000744 __extendsfdf2 + 0x08000744 __aeabi_f2d + 0x08000788 __aeabi_ul2d + 0x08000788 __floatundidf + 0x08000798 __aeabi_l2d + 0x08000798 __floatdidf + .text 0x080007f4 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) + 0x080007f4 __fixunsdfsi + 0x080007f4 __aeabi_d2uiz + *(.text*) + .text.MX_GPIO_Init + 0x08000834 0xf8 ./Core/Src/gpio.o + 0x08000834 MX_GPIO_Init + .text.lcd_wr_xdata + 0x0800092c 0x48 ./Core/Src/lcd.o + 0x0800092c lcd_wr_xdata + .text.lcd_write_reg + 0x08000974 0x84 ./Core/Src/lcd.o + 0x08000974 lcd_write_reg + .text.lcd_opt_delay + 0x080009f8 0x20 ./Core/Src/lcd.o + .text.lcd_rd_data + 0x08000a18 0x88 ./Core/Src/lcd.o + .text.lcd_set_cursor + 0x08000aa0 0x628 ./Core/Src/lcd.o + 0x08000aa0 lcd_set_cursor + .text.lcd_scan_dir + 0x080010c8 0x718 ./Core/Src/lcd.o + 0x080010c8 lcd_scan_dir + .text.lcd_draw_point + 0x080017e0 0x94 ./Core/Src/lcd.o + 0x080017e0 lcd_draw_point + *fill* 0x08001874 0x4 + .text.lcd_ssd_backlight_set + 0x08001878 0x180 ./Core/Src/lcd.o + 0x08001878 lcd_ssd_backlight_set + .text.lcd_display_dir + 0x080019f8 0x1b0 ./Core/Src/lcd.o + 0x080019f8 lcd_display_dir + .text.lcd_init + 0x08001ba8 0x4ebc ./Core/Src/lcd.o + 0x08001ba8 lcd_init + .text.lcd_clear + 0x08006a64 0xb8 ./Core/Src/lcd.o + 0x08006a64 lcd_clear + .text.lcd_fill + 0x08006b1c 0xdc ./Core/Src/lcd.o + 0x08006b1c lcd_fill + .text.lcd_draw_line + 0x08006bf8 0x10a ./Core/Src/lcd.o + 0x08006bf8 lcd_draw_line + .text.lcd_draw_rectangle + 0x08006d02 0x6e ./Core/Src/lcd.o + 0x08006d02 lcd_draw_rectangle + .text.lcd_show_char + 0x08006d70 0x1bc ./Core/Src/lcd.o + 0x08006d70 lcd_show_char + .text.lcd_show_string + 0x08006f2c 0xa0 ./Core/Src/lcd.o + 0x08006f2c lcd_show_string + .text.main 0x08006fcc 0x27c ./Core/Src/main.o + 0x08006fcc main + .text.SystemClock_Config + 0x08007248 0x8a ./Core/Src/main.o + 0x08007248 SystemClock_Config + .text.Error_Handler + 0x080072d2 0xc ./Core/Src/main.o + 0x080072d2 Error_Handler + *fill* 0x080072de 0x2 + .text.HAL_MspInit + 0x080072e0 0x64 ./Core/Src/stm32f1xx_hal_msp.o + 0x080072e0 HAL_MspInit + .text.NMI_Handler + 0x08007344 0x8 ./Core/Src/stm32f1xx_it.o + 0x08007344 NMI_Handler + .text.HardFault_Handler + 0x0800734c 0x8 ./Core/Src/stm32f1xx_it.o + 0x0800734c HardFault_Handler + .text.MemManage_Handler + 0x08007354 0x8 ./Core/Src/stm32f1xx_it.o + 0x08007354 MemManage_Handler + .text.BusFault_Handler + 0x0800735c 0x8 ./Core/Src/stm32f1xx_it.o + 0x0800735c BusFault_Handler + .text.UsageFault_Handler + 0x08007364 0x8 ./Core/Src/stm32f1xx_it.o + 0x08007364 UsageFault_Handler + .text.SVC_Handler + 0x0800736c 0xc ./Core/Src/stm32f1xx_it.o + 0x0800736c SVC_Handler + .text.DebugMon_Handler + 0x08007378 0xc ./Core/Src/stm32f1xx_it.o + 0x08007378 DebugMon_Handler + .text.PendSV_Handler + 0x08007384 0xc ./Core/Src/stm32f1xx_it.o + 0x08007384 PendSV_Handler + .text.SysTick_Handler + 0x08007390 0xc ./Core/Src/stm32f1xx_it.o + 0x08007390 SysTick_Handler + .text.SystemInit + 0x0800739c 0xc ./Core/Src/system_stm32f1xx.o + 0x0800739c SystemInit + .text.Reset_Handler + 0x080073a8 0x48 ./Core/Startup/startup_stm32f103rctx.o + 0x080073a8 Reset_Handler + .text.Default_Handler + 0x080073f0 0x2 ./Core/Startup/startup_stm32f103rctx.o + 0x080073f0 DMA2_Channel3_IRQHandler + 0x080073f0 EXTI2_IRQHandler + 0x080073f0 TIM8_TRG_COM_IRQHandler + 0x080073f0 TIM8_CC_IRQHandler + 0x080073f0 TIM1_CC_IRQHandler + 0x080073f0 TIM6_IRQHandler + 0x080073f0 PVD_IRQHandler + 0x080073f0 SDIO_IRQHandler + 0x080073f0 EXTI3_IRQHandler + 0x080073f0 EXTI0_IRQHandler + 0x080073f0 I2C2_EV_IRQHandler + 0x080073f0 ADC1_2_IRQHandler + 0x080073f0 SPI1_IRQHandler + 0x080073f0 TAMPER_IRQHandler + 0x080073f0 TIM8_UP_IRQHandler + 0x080073f0 DMA2_Channel2_IRQHandler + 0x080073f0 DMA1_Channel4_IRQHandler + 0x080073f0 USART3_IRQHandler + 0x080073f0 RTC_IRQHandler + 0x080073f0 DMA1_Channel7_IRQHandler + 0x080073f0 CAN1_RX1_IRQHandler + 0x080073f0 UART5_IRQHandler + 0x080073f0 ADC3_IRQHandler + 0x080073f0 TIM4_IRQHandler + 0x080073f0 DMA2_Channel1_IRQHandler + 0x080073f0 I2C1_EV_IRQHandler + 0x080073f0 DMA1_Channel6_IRQHandler + 0x080073f0 UART4_IRQHandler + 0x080073f0 TIM3_IRQHandler + 0x080073f0 RCC_IRQHandler + 0x080073f0 TIM1_TRG_COM_IRQHandler + 0x080073f0 DMA1_Channel1_IRQHandler + 0x080073f0 Default_Handler + 0x080073f0 EXTI15_10_IRQHandler + 0x080073f0 TIM7_IRQHandler + 0x080073f0 TIM5_IRQHandler + 0x080073f0 EXTI9_5_IRQHandler + 0x080073f0 SPI2_IRQHandler + 0x080073f0 DMA1_Channel5_IRQHandler + 0x080073f0 EXTI4_IRQHandler + 0x080073f0 USB_LP_CAN1_RX0_IRQHandler + 0x080073f0 USB_HP_CAN1_TX_IRQHandler + 0x080073f0 DMA1_Channel3_IRQHandler + 0x080073f0 FSMC_IRQHandler + 0x080073f0 TIM1_UP_IRQHandler + 0x080073f0 WWDG_IRQHandler + 0x080073f0 TIM2_IRQHandler + 0x080073f0 TIM1_BRK_IRQHandler + 0x080073f0 EXTI1_IRQHandler + 0x080073f0 DMA2_Channel4_5_IRQHandler + 0x080073f0 USART2_IRQHandler + 0x080073f0 I2C2_ER_IRQHandler + 0x080073f0 DMA1_Channel2_IRQHandler + 0x080073f0 TIM8_BRK_IRQHandler + 0x080073f0 CAN1_SCE_IRQHandler + 0x080073f0 FLASH_IRQHandler + 0x080073f0 USART1_IRQHandler + 0x080073f0 SPI3_IRQHandler + 0x080073f0 I2C1_ER_IRQHandler + 0x080073f0 USBWakeUp_IRQHandler + 0x080073f0 RTC_Alarm_IRQHandler + *fill* 0x080073f2 0x2 + .text.HAL_Init + 0x080073f4 0x2c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x080073f4 HAL_Init + .text.HAL_InitTick + 0x08007420 0x60 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x08007420 HAL_InitTick + .text.HAL_IncTick + 0x08007480 0x24 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x08007480 HAL_IncTick + .text.HAL_GetTick + 0x080074a4 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x080074a4 HAL_GetTick + .text.HAL_Delay + 0x080074b8 0x48 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x080074b8 HAL_Delay + .text.__NVIC_SetPriorityGrouping + 0x08007500 0x48 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_GetPriorityGrouping + 0x08007548 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_SetPriority + 0x08007564 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.NVIC_EncodePriority + 0x080075b8 0x64 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.SysTick_Config + 0x0800761c 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_SetPriorityGrouping + 0x08007660 0x16 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + 0x08007660 HAL_NVIC_SetPriorityGrouping + .text.HAL_NVIC_SetPriority + 0x08007676 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + 0x08007676 HAL_NVIC_SetPriority + .text.HAL_SYSTICK_Config + 0x080076ae 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + 0x080076ae HAL_SYSTICK_Config + *fill* 0x080076c6 0x2 + .text.HAL_GPIO_Init + 0x080076c8 0x328 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + 0x080076c8 HAL_GPIO_Init + .text.HAL_GPIO_WritePin + 0x080079f0 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + 0x080079f0 HAL_GPIO_WritePin + .text.HAL_RCC_OscConfig + 0x08007a20 0x504 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + 0x08007a20 HAL_RCC_OscConfig + .text.HAL_RCC_ClockConfig + 0x08007f24 0x1d4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + 0x08007f24 HAL_RCC_ClockConfig + .text.HAL_RCC_GetSysClockFreq + 0x080080f8 0xbc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + 0x080080f8 HAL_RCC_GetSysClockFreq + .text.RCC_Delay + 0x080081b4 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.memset 0x080081f0 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-memset.o) + 0x080081f0 memset + .text.__libc_init_array + 0x08008200 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-init.o) + 0x08008200 __libc_init_array + *(.glue_7) + .glue_7 0x08008248 0x0 linker stubs + *(.glue_7t) + .glue_7t 0x08008248 0x0 linker stubs + *(.eh_frame) + .eh_frame 0x08008248 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtbegin.o + *(.init) + .init 0x08008248 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crti.o + 0x08008248 _init + .init 0x0800824c 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtn.o + *(.fini) + .fini 0x08008254 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crti.o + 0x08008254 _fini + .fini 0x08008258 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtn.o + 0x08008260 . = ALIGN (0x4) + 0x08008260 _etext = . + +.vfp11_veneer 0x08008260 0x0 + .vfp11_veneer 0x08008260 0x0 linker stubs + +.v4_bx 0x08008260 0x0 + .v4_bx 0x08008260 0x0 linker stubs + +.iplt 0x08008260 0x0 + .iplt 0x08008260 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtbegin.o + +.rodata 0x08008260 0x2fdc + 0x08008260 . = ALIGN (0x4) + *(.rodata) + .rodata 0x08008260 0x39 ./Core/Src/main.o + *fill* 0x08008299 0x3 + .rodata 0x0800829c 0x10 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + *(.rodata*) + .rodata.asc2_1206 + 0x080082ac 0x474 ./Core/Src/lcd.o + 0x080082ac asc2_1206 + .rodata.asc2_1608 + 0x08008720 0x5f0 ./Core/Src/lcd.o + 0x08008720 asc2_1608 + .rodata.asc2_2412 + 0x08008d10 0xd5c ./Core/Src/lcd.o + 0x08008d10 asc2_2412 + .rodata.asc2_3216 + 0x08009a6c 0x17c0 ./Core/Src/lcd.o + 0x08009a6c asc2_3216 + .rodata.AHBPrescTable + 0x0800b22c 0x10 ./Core/Src/system_stm32f1xx.o + 0x0800b22c AHBPrescTable + 0x0800b23c . = ALIGN (0x4) + +.ARM.extab 0x0800b23c 0x0 + 0x0800b23c . = ALIGN (0x4) + *(.ARM.extab* .gnu.linkonce.armextab.*) + 0x0800b23c . = ALIGN (0x4) + +.ARM 0x0800b23c 0x0 + 0x0800b23c . = ALIGN (0x4) + 0x0800b23c __exidx_start = . + *(.ARM.exidx*) + 0x0800b23c __exidx_end = . + 0x0800b23c . = ALIGN (0x4) + +.preinit_array 0x0800b23c 0x0 + 0x0800b23c . = ALIGN (0x4) + 0x0800b23c PROVIDE (__preinit_array_start = .) + *(.preinit_array*) + 0x0800b23c PROVIDE (__preinit_array_end = .) + 0x0800b23c . = ALIGN (0x4) + +.init_array 0x0800b23c 0x4 + 0x0800b23c . = ALIGN (0x4) + 0x0800b23c PROVIDE (__init_array_start = .) + *(SORT_BY_NAME(.init_array.*)) + *(.init_array*) + .init_array 0x0800b23c 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtbegin.o + 0x0800b240 PROVIDE (__init_array_end = .) + 0x0800b240 . = ALIGN (0x4) + +.fini_array 0x0800b240 0x4 + 0x0800b240 . = ALIGN (0x4) + [!provide] PROVIDE (__fini_array_start = .) + *(SORT_BY_NAME(.fini_array.*)) + *(.fini_array*) + .fini_array 0x0800b240 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtbegin.o + [!provide] PROVIDE (__fini_array_end = .) + 0x0800b244 . = ALIGN (0x4) + 0x0800b244 _sidata = LOADADDR (.data) + +.rel.dyn 0x0800b244 0x0 + .rel.iplt 0x0800b244 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtbegin.o + +.data 0x20000000 0x10 load address 0x0800b244 + 0x20000000 . = ALIGN (0x4) + 0x20000000 _sdata = . + *(.data) + *(.data*) + .data.g_back_color + 0x20000000 0x4 ./Core/Src/lcd.o + 0x20000000 g_back_color + .data.SystemCoreClock + 0x20000004 0x4 ./Core/Src/system_stm32f1xx.o + 0x20000004 SystemCoreClock + .data.uwTickPrio + 0x20000008 0x4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x20000008 uwTickPrio + .data.uwTickFreq + 0x2000000c 0x1 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x2000000c uwTickFreq + *(.RamFunc) + *(.RamFunc*) + 0x20000010 . = ALIGN (0x4) + *fill* 0x2000000d 0x3 + 0x20000010 _edata = . + +.igot.plt 0x20000010 0x0 load address 0x0800b254 + .igot.plt 0x20000010 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtbegin.o + 0x20000010 . = ALIGN (0x4) + +.bss 0x20000010 0x30 load address 0x0800b254 + 0x20000010 _sbss = . + 0x20000010 __bss_start__ = _sbss + *(.bss) + .bss 0x20000010 0x1c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtbegin.o + *(.bss*) + .bss.lcddev 0x2000002c 0xe ./Core/Src/lcd.o + 0x2000002c lcddev + *fill* 0x2000003a 0x2 + .bss.uwTick 0x2000003c 0x4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x2000003c uwTick + *(COMMON) + 0x20000040 . = ALIGN (0x4) + 0x20000040 _ebss = . + 0x20000040 __bss_end__ = _ebss + +._user_heap_stack + 0x20000040 0x600 load address 0x0800b254 + 0x20000040 . = ALIGN (0x8) + [!provide] PROVIDE (end = .) + 0x20000040 PROVIDE (_end = .) + 0x20000240 . = (. + _Min_Heap_Size) + *fill* 0x20000040 0x200 + 0x20000640 . = (. + _Min_Stack_Size) + *fill* 0x20000240 0x400 + 0x20000640 . = ALIGN (0x8) + +/DISCARD/ + libc.a(*) + libm.a(*) + libgcc.a(*) + +.ARM.attributes + 0x00000000 0x29 + *(.ARM.attributes) + .ARM.attributes + 0x00000000 0x1d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crti.o + .ARM.attributes + 0x0000001d 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtbegin.o + .ARM.attributes + 0x0000004a 0x2d ./Core/Src/gpio.o + .ARM.attributes + 0x00000077 0x2d ./Core/Src/lcd.o + .ARM.attributes + 0x000000a4 0x2d ./Core/Src/main.o + .ARM.attributes + 0x000000d1 0x2d ./Core/Src/stm32f1xx_hal_msp.o + .ARM.attributes + 0x000000fe 0x2d ./Core/Src/stm32f1xx_it.o + .ARM.attributes + 0x0000012b 0x2d ./Core/Src/system_stm32f1xx.o + .ARM.attributes + 0x00000158 0x21 ./Core/Startup/startup_stm32f103rctx.o + .ARM.attributes + 0x00000179 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .ARM.attributes + 0x000001a6 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .ARM.attributes + 0x000001d3 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .ARM.attributes + 0x00000200 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .ARM.attributes + 0x0000022d 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-memset.o) + .ARM.attributes + 0x0000025a 0x2d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-init.o) + .ARM.attributes + 0x00000287 0x1d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldf3.o) + .ARM.attributes + 0x000002a4 0x1d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) + .ARM.attributes + 0x000002c1 0x1d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) + .ARM.attributes + 0x000002de 0x1d /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/crtn.o +OUTPUT(lcd.elf elf32-littlearm) +LOAD linker stubs +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc.a +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a +LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a + +.debug_info 0x00000000 0x527d + .debug_info 0x00000000 0x2b7 ./Core/Src/gpio.o + .debug_info 0x000002b7 0x2626 ./Core/Src/lcd.o + .debug_info 0x000028dd 0x45f ./Core/Src/main.o + .debug_info 0x00002d3c 0x1f1 ./Core/Src/stm32f1xx_hal_msp.o + .debug_info 0x00002f2d 0x113 ./Core/Src/stm32f1xx_it.o + .debug_info 0x00003040 0x222 ./Core/Src/system_stm32f1xx.o + .debug_info 0x00003262 0x30 ./Core/Startup/startup_stm32f103rctx.o + .debug_info 0x00003292 0x76a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_info 0x000039fc 0xaed ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_info 0x000044e9 0x5ab ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_info 0x00004a94 0x7e9 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_abbrev 0x00000000 0x12da + .debug_abbrev 0x00000000 0x13f ./Core/Src/gpio.o + .debug_abbrev 0x0000013f 0x363 ./Core/Src/lcd.o + .debug_abbrev 0x000004a2 0x213 ./Core/Src/main.o + .debug_abbrev 0x000006b5 0xdb ./Core/Src/stm32f1xx_hal_msp.o + .debug_abbrev 0x00000790 0x73 ./Core/Src/stm32f1xx_it.o + .debug_abbrev 0x00000803 0x13f ./Core/Src/system_stm32f1xx.o + .debug_abbrev 0x00000942 0x24 ./Core/Startup/startup_stm32f103rctx.o + .debug_abbrev 0x00000966 0x201 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_abbrev 0x00000b67 0x2f8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_abbrev 0x00000e5f 0x1ca ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_abbrev 0x00001029 0x2b1 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_aranges 0x00000000 0x4e8 + .debug_aranges + 0x00000000 0x20 ./Core/Src/gpio.o + .debug_aranges + 0x00000020 0x100 ./Core/Src/lcd.o + .debug_aranges + 0x00000120 0x30 ./Core/Src/main.o + .debug_aranges + 0x00000150 0x20 ./Core/Src/stm32f1xx_hal_msp.o + .debug_aranges + 0x00000170 0x60 ./Core/Src/stm32f1xx_it.o + .debug_aranges + 0x000001d0 0x28 ./Core/Src/system_stm32f1xx.o + .debug_aranges + 0x000001f8 0x28 ./Core/Startup/startup_stm32f103rctx.o + .debug_aranges + 0x00000220 0xe0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_aranges + 0x00000300 0x100 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_aranges + 0x00000400 0x58 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_aranges + 0x00000458 0x90 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_rnglists + 0x00000000 0x399 + .debug_rnglists + 0x00000000 0x14 ./Core/Src/gpio.o + .debug_rnglists + 0x00000014 0xd2 ./Core/Src/lcd.o + .debug_rnglists + 0x000000e6 0x21 ./Core/Src/main.o + .debug_rnglists + 0x00000107 0x13 ./Core/Src/stm32f1xx_hal_msp.o + .debug_rnglists + 0x0000011a 0x43 ./Core/Src/stm32f1xx_it.o + .debug_rnglists + 0x0000015d 0x1a ./Core/Src/system_stm32f1xx.o + .debug_rnglists + 0x00000177 0x19 ./Core/Startup/startup_stm32f103rctx.o + .debug_rnglists + 0x00000190 0xa3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_rnglists + 0x00000233 0xbb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_rnglists + 0x000002ee 0x3f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_rnglists + 0x0000032d 0x6c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_macro 0x00000000 0x18ae7 + .debug_macro 0x00000000 0x19d ./Core/Src/gpio.o + .debug_macro 0x0000019d 0xaa8 ./Core/Src/gpio.o + .debug_macro 0x00000c45 0x20f ./Core/Src/gpio.o + .debug_macro 0x00000e54 0x2e ./Core/Src/gpio.o + .debug_macro 0x00000e82 0x22 ./Core/Src/gpio.o + .debug_macro 0x00000ea4 0x22 ./Core/Src/gpio.o + .debug_macro 0x00000ec6 0x8e ./Core/Src/gpio.o + .debug_macro 0x00000f54 0x51 ./Core/Src/gpio.o + .debug_macro 0x00000fa5 0x103 ./Core/Src/gpio.o + .debug_macro 0x000010a8 0x6a ./Core/Src/gpio.o + .debug_macro 0x00001112 0x1df ./Core/Src/gpio.o + .debug_macro 0x000012f1 0x1c ./Core/Src/gpio.o + .debug_macro 0x0000130d 0x22 ./Core/Src/gpio.o + .debug_macro 0x0000132f 0xbd ./Core/Src/gpio.o + .debug_macro 0x000013ec 0xd23 ./Core/Src/gpio.o + .debug_macro 0x0000210f 0xfd8c ./Core/Src/gpio.o + .debug_macro 0x00011e9b 0x6d ./Core/Src/gpio.o + .debug_macro 0x00011f08 0x3468 ./Core/Src/gpio.o + .debug_macro 0x00015370 0x189 ./Core/Src/gpio.o + .debug_macro 0x000154f9 0x5c ./Core/Src/gpio.o + .debug_macro 0x00015555 0x5be ./Core/Src/gpio.o + .debug_macro 0x00015b13 0x4d5 ./Core/Src/gpio.o + .debug_macro 0x00015fe8 0x1cb ./Core/Src/gpio.o + .debug_macro 0x000161b3 0x114 ./Core/Src/gpio.o + .debug_macro 0x000162c7 0x1ea ./Core/Src/gpio.o + .debug_macro 0x000164b1 0x27 ./Core/Src/gpio.o + .debug_macro 0x000164d8 0x144 ./Core/Src/gpio.o + .debug_macro 0x0001661c 0x1bc ./Core/Src/gpio.o + .debug_macro 0x000167d8 0x30 ./Core/Src/gpio.o + .debug_macro 0x00016808 0x3c ./Core/Src/gpio.o + .debug_macro 0x00016844 0x57 ./Core/Src/gpio.o + .debug_macro 0x0001689b 0x88 ./Core/Src/gpio.o + .debug_macro 0x00016923 0x24f ./Core/Src/gpio.o + .debug_macro 0x00016b72 0x141 ./Core/Src/gpio.o + .debug_macro 0x00016cb3 0xb5 ./Core/Src/gpio.o + .debug_macro 0x00016d68 0x34 ./Core/Src/gpio.o + .debug_macro 0x00016d9c 0x272 ./Core/Src/lcd.o + .debug_macro 0x0001700e 0x24 ./Core/Src/lcd.o + .debug_macro 0x00017032 0x5b ./Core/Src/lcd.o + .debug_macro 0x0001708d 0x94 ./Core/Src/lcd.o + .debug_macro 0x00017121 0x43 ./Core/Src/lcd.o + .debug_macro 0x00017164 0x34 ./Core/Src/lcd.o + .debug_macro 0x00017198 0x16 ./Core/Src/lcd.o + .debug_macro 0x000171ae 0x11c ./Core/Src/lcd.o + .debug_macro 0x000172ca 0x94 ./Core/Src/lcd.o + .debug_macro 0x0001735e 0x16 ./Core/Src/lcd.o + .debug_macro 0x00017374 0x43 ./Core/Src/lcd.o + .debug_macro 0x000173b7 0x57 ./Core/Src/lcd.o + .debug_macro 0x0001740e 0x34 ./Core/Src/lcd.o + .debug_macro 0x00017442 0x10 ./Core/Src/lcd.o + .debug_macro 0x00017452 0x58 ./Core/Src/lcd.o + .debug_macro 0x000174aa 0x8e ./Core/Src/lcd.o + .debug_macro 0x00017538 0x1c ./Core/Src/lcd.o + .debug_macro 0x00017554 0x177 ./Core/Src/lcd.o + .debug_macro 0x000176cb 0x369 ./Core/Src/lcd.o + .debug_macro 0x00017a34 0x16 ./Core/Src/lcd.o + .debug_macro 0x00017a4a 0x29 ./Core/Src/lcd.o + .debug_macro 0x00017a73 0x56 ./Core/Src/lcd.o + .debug_macro 0x00017ac9 0x1a7 ./Core/Src/lcd.o + .debug_macro 0x00017c70 0x27c ./Core/Src/main.o + .debug_macro 0x00017eec 0x61 ./Core/Src/main.o + .debug_macro 0x00017f4d 0x35 ./Core/Src/main.o + .debug_macro 0x00017f82 0x193 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x00018115 0x19d ./Core/Src/stm32f1xx_it.o + .debug_macro 0x000182b2 0x184 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x00018436 0x1a8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x000185de 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x00018762 0x1ef ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x00018951 0x196 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_line 0x00000000 0x75c5 + .debug_line 0x00000000 0x681 ./Core/Src/gpio.o + .debug_line 0x00000681 0x2719 ./Core/Src/lcd.o + .debug_line 0x00002d9a 0x8d8 ./Core/Src/main.o + .debug_line 0x00003672 0x652 ./Core/Src/stm32f1xx_hal_msp.o + .debug_line 0x00003cc4 0x713 ./Core/Src/stm32f1xx_it.o + .debug_line 0x000043d7 0x6cf ./Core/Src/system_stm32f1xx.o + .debug_line 0x00004aa6 0x79 ./Core/Startup/startup_stm32f103rctx.o + .debug_line 0x00004b1f 0x8fc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_line 0x0000541b 0xae8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_line 0x00005f03 0x9bb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_line 0x000068be 0xd07 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_str 0x00000000 0x8dac0 + .debug_str 0x00000000 0x88c7c ./Core/Src/gpio.o + 0x89079 (size before relaxing) + .debug_str 0x00088c7c 0x3c5b ./Core/Src/lcd.o + 0x8cc99 (size before relaxing) + .debug_str 0x0008c8d7 0x1be ./Core/Src/main.o + 0x8cb2a (size before relaxing) + .debug_str 0x0008ca95 0x2c ./Core/Src/stm32f1xx_hal_msp.o + 0x89001 (size before relaxing) + .debug_str 0x0008cac1 0xc9 ./Core/Src/stm32f1xx_it.o + 0x89016 (size before relaxing) + .debug_str 0x0008cb8a 0x7e ./Core/Src/system_stm32f1xx.o + 0x88f87 (size before relaxing) + .debug_str 0x0008cc08 0x44 ./Core/Startup/startup_stm32f103rctx.o + 0xb1 (size before relaxing) + .debug_str 0x0008cc4c 0x69f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x8979e (size before relaxing) + .debug_str 0x0008d2eb 0x2bb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + 0x896ea (size before relaxing) + .debug_str 0x0008d5a6 0x2f1 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + 0x8930d (size before relaxing) + .debug_str 0x0008d897 0x229 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + 0x893b6 (size before relaxing) + +.comment 0x00000000 0x43 + .comment 0x00000000 0x43 ./Core/Src/gpio.o + 0x44 (size before relaxing) + .comment 0x00000043 0x44 ./Core/Src/lcd.o + .comment 0x00000043 0x44 ./Core/Src/main.o + .comment 0x00000043 0x44 ./Core/Src/stm32f1xx_hal_msp.o + .comment 0x00000043 0x44 ./Core/Src/stm32f1xx_it.o + .comment 0x00000043 0x44 ./Core/Src/system_stm32f1xx.o + .comment 0x00000043 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .comment 0x00000043 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .comment 0x00000043 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .comment 0x00000043 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_frame 0x00000000 0x12dc + .debug_frame 0x00000000 0x34 ./Core/Src/gpio.o + .debug_frame 0x00000034 0x48c ./Core/Src/lcd.o + .debug_frame 0x000004c0 0x78 ./Core/Src/main.o + .debug_frame 0x00000538 0x38 ./Core/Src/stm32f1xx_hal_msp.o + .debug_frame 0x00000570 0x104 ./Core/Src/stm32f1xx_it.o + .debug_frame 0x00000674 0x58 ./Core/Src/system_stm32f1xx.o + .debug_frame 0x000006cc 0x334 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_frame 0x00000a00 0x428 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_frame 0x00000e28 0x14c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_frame 0x00000f74 0x21c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_frame 0x00001190 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-memset.o) + .debug_frame 0x000011b0 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(libc_a-init.o) + .debug_frame 0x000011dc 0x30 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldf3.o) + .debug_frame 0x0000120c 0xac /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) + .debug_frame 0x000012b8 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.macos64_1.0.200.202406191456/tools/bin/../lib/gcc/arm-none-eabi/12.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) + +.debug_line_str + 0x00000000 0x95 + .debug_line_str + 0x00000000 0x95 ./Core/Startup/startup_stm32f103rctx.o diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/makefile b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/makefile new file mode 100644 index 0000000..2912ded --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/makefile @@ -0,0 +1,94 @@ +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +-include ../makefile.init + +RM := rm -rf + +# All of the sources participating in the build are defined here +-include sources.mk +-include Drivers/STM32F1xx_HAL_Driver/Src/subdir.mk +-include Core/Startup/subdir.mk +-include Core/Src/subdir.mk +-include objects.mk + +ifneq ($(MAKECMDGOALS),clean) +ifneq ($(strip $(S_DEPS)),) +-include $(S_DEPS) +endif +ifneq ($(strip $(S_UPPER_DEPS)),) +-include $(S_UPPER_DEPS) +endif +ifneq ($(strip $(C_DEPS)),) +-include $(C_DEPS) +endif +endif + +-include ../makefile.defs + +OPTIONAL_TOOL_DEPS := \ +$(wildcard ../makefile.defs) \ +$(wildcard ../makefile.init) \ +$(wildcard ../makefile.targets) \ + + +BUILD_ARTIFACT_NAME := lcd +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 += \ +lcd.elf \ + +MAP_FILES += \ +lcd.map \ + +SIZE_OUTPUT += \ +default.size.stdout \ + +OBJDUMP_LIST += \ +lcd.list \ + + +# All Target +all: main-build + +# Main-build Target +main-build: lcd.elf secondary-outputs + +# Tool invocations +lcd.elf lcd.map: $(OBJS) $(USER_OBJS) /Users/chanben/Desktop/SUSTech_CS_Notes/CS301\ Embedded\ System\ and\ Microcomputer\ Principle/Lab/lab3/lcd/STM32F103RCTX_FLASH.ld makefile objects.list $(OPTIONAL_TOOL_DEPS) + arm-none-eabi-gcc -o "lcd.elf" @"objects.list" $(USER_OBJS) $(LIBS) -mcpu=cortex-m3 -T"/Users/chanben/Desktop/SUSTech_CS_Notes/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/STM32F103RCTX_FLASH.ld" --specs=nosys.specs -Wl,-Map="lcd.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 ' ' + +default.size.stdout: $(EXECUTABLES) makefile objects.list $(OPTIONAL_TOOL_DEPS) + arm-none-eabi-size $(EXECUTABLES) + @echo 'Finished building: $@' + @echo ' ' + +lcd.list: $(EXECUTABLES) makefile objects.list $(OPTIONAL_TOOL_DEPS) + arm-none-eabi-objdump -h -S $(EXECUTABLES) > "lcd.list" + @echo 'Finished building: $@' + @echo ' ' + +# Other Targets +clean: + -$(RM) default.size.stdout lcd.elf lcd.list lcd.map + -@echo ' ' + +secondary-outputs: $(SIZE_OUTPUT) $(OBJDUMP_LIST) + +fail-specified-linker-script-missing: + @echo 'Error: Cannot find the specified linker script. Check the linker settings in the build configuration.' + @exit 2 + +warn-no-linker-script-specified: + @echo 'Warning: No linker script specified. Check the linker settings in the build configuration.' + +.PHONY: all clean dependents main-build fail-specified-linker-script-missing warn-no-linker-script-specified + +-include ../makefile.targets diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/objects.list b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/objects.list new file mode 100644 index 0000000..d320643 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/objects.list @@ -0,0 +1,22 @@ +"./Core/Src/gpio.o" +"./Core/Src/lcd.o" +"./Core/Src/main.o" +"./Core/Src/stm32f1xx_hal_msp.o" +"./Core/Src/stm32f1xx_it.o" +"./Core/Src/syscalls.o" +"./Core/Src/sysmem.o" +"./Core/Src/system_stm32f1xx.o" +"./Core/Startup/startup_stm32f103rctx.o" +"./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.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_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" diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/objects.mk b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/objects.mk new file mode 100644 index 0000000..94e86f7 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/objects.mk @@ -0,0 +1,9 @@ +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +USER_OBJS := + +LIBS := + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/sources.mk b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/sources.mk new file mode 100644 index 0000000..0eee391 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Debug/sources.mk @@ -0,0 +1,28 @@ +################################################################################ +# Automatically-generated file. Do not edit! +# Toolchain: GNU Tools for STM32 (12.3.rel1) +################################################################################ + +ELF_SRCS := +OBJ_SRCS := +S_SRCS := +C_SRCS := +S_UPPER_SRCS := +O_SRCS := +CYCLO_FILES := +SIZE_OUTPUT := +OBJDUMP_LIST := +SU_FILES := +EXECUTABLES := +OBJS := +MAP_FILES := +S_DEPS := +S_UPPER_DEPS := +C_DEPS := + +# Every subdirectory with source files must be described here +SUBDIRS := \ +Core/Src \ +Core/Startup \ +Drivers/STM32F1xx_HAL_Driver/Src \ + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xe.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xe.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xe.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xe.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Device/ST/STM32F1xx/License.md b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Device/ST/STM32F1xx/License.md similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Device/ST/STM32F1xx/License.md rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Device/ST/STM32F1xx/License.md diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/cmsis_armcc.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/cmsis_armcc.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/cmsis_armcc.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/cmsis_armcc.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/cmsis_armclang.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/cmsis_armclang.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/cmsis_armclang.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/cmsis_armclang.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/cmsis_compiler.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/cmsis_compiler.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/cmsis_compiler.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/cmsis_compiler.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/cmsis_gcc.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/cmsis_gcc.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/cmsis_gcc.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/cmsis_gcc.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/cmsis_iccarm.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/cmsis_iccarm.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/cmsis_iccarm.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/cmsis_iccarm.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/cmsis_version.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/cmsis_version.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/cmsis_version.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/cmsis_version.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_armv8mbl.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_armv8mbl.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_armv8mbl.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_armv8mbl.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_armv8mml.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_armv8mml.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_armv8mml.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_armv8mml.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm0.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm0.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm0.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm0.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm0plus.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm0plus.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm0plus.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm0plus.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm1.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm1.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm1.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm1.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm23.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm23.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm23.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm23.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm3.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm3.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm3.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm3.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm33.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm33.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm33.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm33.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm4.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm4.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm4.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm4.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm7.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm7.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_cm7.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_cm7.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_sc000.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_sc000.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_sc000.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_sc000.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_sc300.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_sc300.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/core_sc300.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/core_sc300.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/mpu_armv7.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/mpu_armv7.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/mpu_armv7.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/mpu_armv7.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/mpu_armv8.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/mpu_armv8.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/mpu_armv8.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/mpu_armv8.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/tz_context.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/tz_context.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/Include/tz_context.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/Include/tz_context.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/LICENSE.txt b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/LICENSE.txt similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/CMSIS/LICENSE.txt rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/CMSIS/LICENSE.txt diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/License.md b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/License.md similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/License.md rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/License.md diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/STM32F103RCTX_FLASH.ld b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/STM32F103RCTX_FLASH.ld similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/STM32F103RCTX_FLASH.ld rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/STM32F103RCTX_FLASH.ld diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/lcd.cfg b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/lcd.cfg new file mode 100644 index 0000000..f2658fa --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/lcd.cfg @@ -0,0 +1,44 @@ +# This is an genericBoard board with a single STM32F103RCTx chip +# +# Generated by STM32CubeIDE +# Take care that such file, as generated, may be overridden without any early notice. Please have a look to debug launch configuration setup(s) + +source [find interface/stlink-dap.cfg] + + +set WORKAREASIZE 0x8000 + +transport select "dapdirect_swd" + +set CHIPNAME STM32F103RCTx +set BOARDNAME genericBoard + +# Enable debug when in low power modes +set ENABLE_LOW_POWER 1 + +# Stop Watchdog counters when halt +set STOP_WATCHDOG 1 + +# STlink Debug clock frequency +set CLOCK_FREQ 8000 + +# Reset configuration +# use hardware reset, connect under reset +# connect_assert_srst needed if low power mode application running (WFI...) +reset_config srst_only srst_nogate connect_assert_srst +set CONNECT_UNDER_RESET 1 +set CORE_RESET 0 + +# ACCESS PORT NUMBER +set AP_NUM 0 +# GDB PORT +set GDB_PORT 3333 + + + + + +# BCTM CPU variables + +source [find target/stm32f1x.cfg] + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/lcd.ioc b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/lcd.ioc new file mode 100644 index 0000000..814b654 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/lcd.ioc @@ -0,0 +1,130 @@ +#MicroXplorer Configuration settings - do not modify +CAD.formats= +CAD.pinconfig= +CAD.provider= +File.Version=6 +GPIO.groupedBy=Group By Peripherals +KeepUserPlacement=false +Mcu.CPN=STM32F103RCT6 +Mcu.Family=STM32F1 +Mcu.IP0=NVIC +Mcu.IP1=RCC +Mcu.IP2=SYS +Mcu.IPNb=3 +Mcu.Name=STM32F103R(C-D-E)Tx +Mcu.Package=LQFP64 +Mcu.Pin0=PD0-OSC_IN +Mcu.Pin1=PD1-OSC_OUT +Mcu.Pin2=PC5 +Mcu.Pin3=PA8 +Mcu.Pin4=PA13 +Mcu.Pin5=PA14 +Mcu.Pin6=PA15 +Mcu.Pin7=PD2 +Mcu.Pin8=VP_SYS_VS_Systick +Mcu.PinsNb=9 +Mcu.ThirdPartyNb=0 +Mcu.UserConstants= +Mcu.UserName=STM32F103RCTx +MxCube.Version=6.3.0 +MxDb.Version=DB.6.0.30 +NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +NVIC.ForceEnableDMAVector=true +NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4 +NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +NVIC.SysTick_IRQn=true\:15\:0\:false\:false\:true\:false\:true\:false +NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +PA13.Mode=Serial_Wire +PA13.Signal=SYS_JTMS-SWDIO +PA14.Mode=Serial_Wire +PA14.Signal=SYS_JTCK-SWCLK +PA15.GPIOParameters=GPIO_PuPd,GPIO_Label +PA15.GPIO_Label=KEY1 +PA15.GPIO_PuPd=GPIO_PULLUP +PA15.Locked=true +PA15.Signal=GPIO_Input +PA8.GPIOParameters=PinState,GPIO_Label +PA8.GPIO_Label=LED0 +PA8.Locked=true +PA8.PinState=GPIO_PIN_SET +PA8.Signal=GPIO_Output +PC5.GPIOParameters=GPIO_PuPd,GPIO_Label +PC5.GPIO_Label=KEY0 +PC5.GPIO_PuPd=GPIO_PULLUP +PC5.Locked=true +PC5.Signal=GPIO_Input +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 +PD2.GPIOParameters=PinState,GPIO_Label +PD2.GPIO_Label=LED1 +PD2.Locked=true +PD2.PinState=GPIO_PIN_SET +PD2.Signal=GPIO_Output +PinOutPanel.RotationAngle=0 +ProjectManager.AskForMigrate=true +ProjectManager.BackupPrevious=false +ProjectManager.CompilerOptimize=6 +ProjectManager.ComputerToolchain=false +ProjectManager.CoupleFile=true +ProjectManager.CustomerFirmwarePackage= +ProjectManager.DefaultFWLocation=true +ProjectManager.DeletePrevious=true +ProjectManager.DeviceId=STM32F103RCTx +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=lcd.ioc +ProjectManager.ProjectName=lcd +ProjectManager.ProjectStructure= +ProjectManager.RegisterCallBack= +ProjectManager.StackSize=0x400 +ProjectManager.TargetToolchain=STM32CubeIDE +ProjectManager.ToolChainLocation= +ProjectManager.UAScriptAfterPath= +ProjectManager.UAScriptBeforePath= +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.I2S2Freq_Value=72000000 +RCC.I2S3Freq_Value=72000000 +RCC.IPParameters=ADCFreqValue,AHBFreq_Value,APB1CLKDivider,APB1Freq_Value,APB1TimFreq_Value,APB2Freq_Value,APB2TimFreq_Value,FCLKCortexFreq_Value,FamilyName,HCLKFreq_Value,I2S2Freq_Value,I2S3Freq_Value,MCOFreq_Value,PLLCLKFreq_Value,PLLMCOFreq_Value,PLLMUL,PLLSourceVirtual,SDIOFreq_Value,SDIOHCLKDiv2FreqValue,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.SDIOFreq_Value=72000000 +RCC.SDIOHCLKDiv2FreqValue=36000000 +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 +isbadioc=false diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/lcd.launch b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/lcd.launch new file mode 100644 index 0000000..460ab81 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/lcd.launch @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab4/CS301-2024fall-lab4-ARMv7 assembly programming.pdf b/CS301 Embedded System and Microcomputer Principle/Lab/lab4/CS301-2024fall-lab4-ARMv7 assembly programming.pdf new file mode 100644 index 0000000000000000000000000000000000000000..8e0cdc28612e62dd7428f55ba74c9bed5b001562 GIT binary patch literal 1583362 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

      eN6-ciW_0@lW!q(W%$6 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%0AKh!PQmI#3!|8oa!UHUzz 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�y_~^z*WTnknu8j(uM+XDFKGbW@zs(Yn?R~w562x=XJSpl*#|X z=fzI4?H}SJZ-wQTF76A@#|isiw7lJdmX8ww$4spadX}+5{AaTppbH^`vxKC-a6}++2Lr+fA0_g9%|NR0DR=s|Gmp3 zGC~+Uscygm@b&!TI;jTG4j(9YI1?Mvalxt?)K+L_PM3XH+3~b*CS5Qkz34CD#bLu4u>Sd;4m6uUv6WF@cc)!-C#BF9g=-@?n zxcZUO{n2Nzj#P~0JW{5}%BpmGk1U?Rmx$d_9N>hMyKpEFG28LQW_&X=dH-(*f)>4aF4IG!W(c8jpH3J zK11vo?_G_V3j=4lC?7os)6jPXev(C>7V*UuXWj$e#PN-Oro{<45jQWQ+=`EehEk$%%Loy=wh=wo96pRAmu)H+7tn74 zHIxU?H!>N>K8VSsYIx#s6{>@ukxL_9#D-&sl&0SxG#zgRg?7L?VBDy3Pwk*aB+G#+ z)OQHe+ou*voG!;O2*lG=Dqtf(&kv3HRD0tTeLQ zz4f3PJi$y9=C>^+Z5y2ZmltI7;_sXIz z$&f(JGWcrWzlGDzsV8q|uLmXZK{INok?9`AXU_*LL>+Y~>kZ$@ljMGE@?a#1nrrE$ ze-r491se*waE`X)JUX}+;XSU3yqzwYU^ctdt1)8LY!Ou|XL4k*r_l3Fc@?&poiM)) z8mL?CSEn9!Xys4>JORF9^z>NwqCPSh$1iGauE$7OwKR?&7yTxc=zRcu;!!G>q4`L* zj1D$<L7+nlc%S8ZKsHtnA3a%MW>a zqcV`DVMMGz*6F8=X*s^mm9 zT(d|Lf^KcQdk4wS_2KFm?pQI5d!ICvx`wx+07;PGCrpV5$KY$*ql-RG z_n!~&(i^0JcjdmoCxCtz2i>uwXV`FMeO1%ArocC0_UYjD-W{iGg!mH%Ijz{crXR00 z&kgi6BVK#>!`?lHym}1$?DqXWbSO$gm0hF|b8D6}w=zNgt-3d#*U8v+PVWL8|L z5jW}@$UpB?D-M5I$@-LMT*${^%>arEy{fe^9&YxsCq341Iz)jYHv#iIGbg4x?g}Yq z6v55Aldlts;YC3uLcC&l-l&P-B0F2>z+u(nHYUYPG&XI2Y&DOof+#8dUt!kIW zS@@_G^m8($94N^Od8f#S8;m(LzQ^Q0Nwf;3vH7PnB33r7GCnMe&oc0^iq>!B+HAks zFkEApGf_?fWC($0lGCaI!y5e0AL5(oZx)Qea z&tAdbT&m4<_Hxp3(Ih_nzKB#6A_W=Y!hn|1YAxRIOWMjD>qe7mu*GtT^TN_7evHUC z09(&4jb&vmJKT>I&v$haIr7f57sLm7t+sEj*V85^CIV7(VyoXh3C0bR5kHU*)1Vda z<{V6XHzbz(qbkJXpT2eC8@>j%*9u{7fAX8Wqa z>0Im!$dQ|NedYH+%oO0aZmv}24o$2xT$Jq4va)t-3#(-)UPAUITQJfc#F&I^zwiTU zqc>6gF^5u3m>kbr%!83eW$uuT@nB_vs_P3-pbrksEzc~96G~-w=428=tzT9HAT1$E z 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�!!xGFh{vJmR=_!+O6F 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

      eXS+N&Y+1~ zdG+eykQBb5I<*O8xA0aQS>3O-iWs7sdVs$MGl9KvfcZq zcv6PqGkx<8CgZs(gR}2@w~awB;K*4%`zEU#3=lays|*3cwHs$hDmGJRx>`o?;63Lw zFO?x=L~g_qyf9mf5L?L*%cgRAdXzCJw~9_J6l+MbXdd({KCPcUm_&gS0aC72l^psz zQOrGuO?$$L<|7>VnbB zY9&`b({dl2cfQ!ymfttpj2qfwL{b6cQ{?ApZ-mT!3j;bt0TIU7+pj+Lw>?U12n!Iz z7L5v&bnk*oF|&o=RpD9j%%TAvHzuqkyc|8yMrxewoE$8c$!M`2P6oU~EN0Q8j~1K{ zRFtH{vtHgh9_R(>vD7kAodzb*W2EUn?6hBuIq;p$tdkLss8ASingq8;d3caRV-yRo zCF6|81uXb}s*+&HkTommX=6%i(WXI|784Gn7?JQC!w^Xd0aLg!fU+1a`=<(P{Nh04 zH36(a(`q+9-s*Ih2ZcjxL01zDW0p>iKNaI!WQU@!#3dh6ICsBP(%fPcrHL%kh$S|V z*2%BD0Z6I+Yo?FV_*81ex2!wu?e}eo*#hq&d62$uHL*sS0`CMd=E^&NA{+v?aS$n}{9}d;tIMVeA-hj8>$uW7Jt(vZo^V158 z$V-CMF?iR9J7W9p$;8~mMQ~5>i;1)#x0eS`9pGSmdg?H1Quh0qgW}=t%eiMTPQ<}o zJ;j5x*hFcTsKk=bnXOz%oO)kN_8Qr7`+&vR#S@^|=@M&fJEG9!<>`xegrmgL&NJ~t zm6K?lAGh;k>XZYi{73?gDppw(dn{q$mVvddub2LzFf4?uUCes@{G!>j@GC+!BUAm= z4|aHhb4puj>sgQq$sjLHOOzHWZ|*l45MfBeQl86*YUr-@8I@8P@RD%(I8kVPA9CSq(z zF0uw4zMU|p=De6JB;}6HCsWRsKf`wmH_MX zJ5Au_q(=MqNKnmCWXKj^Nkrf%u6au+vgAW^Q++>y2w?-xJZgV7HZl<(A;U5pw()oy2?BBK=0oV|9F3 ztb+tUKA81-2d#UxC*Tm_)bZusX*T)~pA^=&*ois^^VFso2!yvWmQ1RMMp%1V4s=W@ zWj`|%eGs`*Q#{1=k=i2^ar(m39Kgd(zwLLr`z8<)ttjO4w?ZO!T&VU2oYqlJ${fE$ zXU-}=i-eJ348+xYJ2k~op;sYpKes0nql7sY|SiINy4Tuvb3-EwJGNm*j%T}cK=2y>Zt96=11q)})Viv`{;-4wyYLhL*4cc)dw z5TRm!heoA#XHdk}DqIEr<>!KS!3Cw;#xP3T%TSNy=ZFD6D`NrwCL-2sii712m7D<8 zI5#3=raaiuy`YmqJ__>qg;EXKgp139N5N&i!emz=Ls5%S2p|cUA381K6UA}>* zjWJeL;-Qo$%Y_)wYJ%zU(?@vFF$I+>6y{iQB;D3feTAf}*XtWtg`N^$vT*1tT(4Wh zu#Uy4Tq%XG96D5D01`+cznv4@eoW@qzIMo{(ww7#M_SNh*^(6cOx{vrNcb~Xht+Qh zgAtsduLv`sUkJjDGkltzOQvwa9NTYhseB8(&oWF2qa9XAgqIcqp#%slh78=n|(Tc%Z8D`3cNdDe9VzM+YWF_A|!=F~dXR4uHbi zYop)3SaSZn#?9-%h zNAJTO>#SMiCb7w<`LS6$lOooUg#;9p^Qw;+iF30mUMB^nbXUQEl?K3llUINH)iNW_Bg&B~y64kkd;2W_5C$!>7_Nkof9X z|Er6Oc~eye&`qz_)!0mjg>OAmUdL+H{Sfyf`!|C(0Okj-U#}2~)k4ER(Y$)uYdH_` zhPOR07Uc7844TjTX+Dh4Exr;Doi3#tmWZH~$DP$|sSz)>K z5|2thg9s=%E8Ln!voe(P^)+9|#I*_E5)rjH&OJX~-MWw0XDI>5ylkFY%tb?tR+vQ= z__LXZ3pY1M)%K)V(fz;?E*Q$};0UEFTf?ETr43E1hzJ+H$njp6@z8I+j&9%f-;ZrJ zd9}r0!exCh^V%=<*7KF^?K?d_6ctt}UVXny*#Eeclyl&DEqKdy*@Lo`n`dh1d1$%# zAR99NiBoKCeXZ;&5*Cu2RB>2;u9GRc)LitnocO@qib1tGNPuox=chhWCr+%U#j)k- zyFy%_*uCw$yg1LTJJ(0sy&O{`W>Q)3?oeKxn+us>v1md>+IfML?w+l9ORbL3=RW6W ziJvye_v*qDEyA>O_n-Xbt#_pg4(vbIl1FQH@;p5pR@E)Ch?4}seI9cLxt87!xdR!i zS=~kI?c^pp9OP$6GY!0nuE&fQC@BZ@uoWj^JKsrM1`9Hu*^RKd+_Lid%SWOc@s zxcp?>$-gkZ&E44GPM&UT-aie_IF^eaJQ)&r>A~D`v++HMo%4JbTj@X!L@smh!v?+H z4Tx!m{6l zdBeP`>n16NbK;Ljtz!<`UWvF3MkO+I#~>jU(T`1z` zyA!hoDkG|FuF zyk+Jo-hD>QC-O?6*TvR=I0WysQ)&U(YN#93wt$0 zK<3B}n?Z{Ubj=&O-@=a{KcE{gG?tF@WUiUGKshR$Ognx?O%AYl7!uv60$^;spEu%a z@Qeqq*++$xH5U_;i**(wlA9%Z7!qpms8AWP5hS30YKW52JpVevM$mvR%KooEk3z@u z_v!fW&qyI7e;wnA$vmI3B0z1}bGSoV#xT%e&CDub1=vTPcKI2c2YCa0f;#rgYr;K zn(vPiF-S2`2(zB*VsD~M{S?tPrmv7#JlIv+%4Rwuv7Iokw#)w zDayBJLZ4sZ5?^YB1^d6hcqDR$rk2BTFB2(7S$>!?r>Rp9j^S_pwzC@DW&+>6Syvs>&0eX^d?hncsDic05KgP0HV zO3@q&;LytFLMd6`XY3g0k}5{~`x`)SHLy8Nq9s*cw7DVa4Mqb-=9urPqp-Ljwv6BU zmhJcY2~wb5IG=V4PHeW2L(YYD^|kng&dzIv16@5mB1B!#lj2xsIlE3L?PN&x`qcx` z=X!xx6TPm~5eZmfyuLpC^3uoWI%%kb++51bElv`mJTis`MjPULn2-QAt7(6z^^wVU zFWdG~=%Z|RDeDbWq_ue0Ib-l~{kG{H9lG&@sasuH*S&enV=62u4n(~q!^xayi>D2kAAzt0AogKb3?jeRC(+|a2 zu1>ji$0{T>Hit*A&#rYM+W}-&Zr!xE>|{RLmNxNha~ospcEg4+WwM$&?u#+d^Jo#@ z#*w5Qu=qMJ-%r2Ky+Dzl z2Hm)u7j3{VEGt})@uZ5Co2BQ=#>FjM_e!(VA8#W!si6una49$(tra9$;U!vj`W!f+ zZrr@xAjZ+Eo^SYwa_-JGD~Hw)y`9<%su-{gQ_qvYcbu)6#hE%i%uo+3FMPTt^)a48 zl76@SuG#dUq|Cj0iy#(&ETC=bBv7~P!HW9OIjJE2(Ek}r$b}Tpx;DM3uHu)${Op_Z zxes^qp$$?>@^E%QWa6ehA1MYRB%WqSP(QLbm-|c+|@wV*pXu?4YYJb;lgk(ExC)Fv! zUp&L0t`R!n;E^CRFj2+_5K@R1`4@g(HJ-Xof~K~B2zK!1UKDbJR|_IYNR>Jk96bk@}Ypk|Seq;GR%&D*yVo6&eZQK+5^ZeLh1*@fI)W z9M}dRWi7=)8Z*KrCr+w;bqkMc2Hu#)AcKz@wH|n7AQGQF9q$C3eIw^8stUi(Kf?-i z&0t<4X+|u3GRFl6R>1c>A#<Oj)|M!Qc=^M1Yq4_xc=C$agV5B?eo8r9tLu>C1XCRiR+1Uo2|; zv2#`T3zgez@IMC@jLJ59hWs&kRg)e+HBG;ik*y4bY}Y9te@~YN+1hs(vH5Z&SOiQ^ zl)!+lpKL`A*KTYj+lqB>qu3Hoy;xM^UKxI0dzRyYqLw$v<1}9)a-TAZh(4;W+_&y@ zouZ-3eQnke*G2vwyI#T}ksgPU$fs0FA@eHydl?3pa|uBD@SK%CpJzc|GMD>t>}0aX z((4V7ag1T#%CEw(<`{vFc#%;qU5b*`;umY0iR3Vy&e*WwxOqxcR)TkAxxg{j(fMWS z%ZXIQR^{|ML;$QiZ&&z0{^d*$?IlA1+!u^DCjLHiu@AF0mgd+It)3LF+iE} zmRp({u&%8@b~N*S&ZF+nCn3_4QcSRJrl03ecf?D)r01X}QTwET`nXR%Gjww4x<1QZ z`GITG2Cl6j8uVptJN4Lx*M&)?gF5KqaJ!<<`-eTMwKssrOgX_OL>-=bT*+3F`BF!7 z0zl`6Ur`=cSY1TpW+JbbUFIp(nr^+2<;P_>!go2ChD?yxO1fRjg-GV7#N z)VtMjjz>Kl2ywgp?Cq}R?J|MtgNbp?SoR0S(Q}On0k}c1Jh7DLdB2_T;AqG_*5lx# zW2YI**8XTBnfWrlg=;^$v{5jlHzkI3&L_U48qJfj_3;>IL)S2rZc%(fTa6)rgPzmQ z_Hae4@u!NQEqBaSmbE*%{`-<4baG0c$NpQz1SI!T=U=7VOt+cZxsf$I0+Y?zi&d)k zhxK9{k2=(CXL*k}8zk~Kkt`0TCgfd8cR#N-2PSfO=mj<3m{rY52-;qJj!r{cf;u(T z%ScFR(lr0k5t;n@*}fu1NEi}OFyYc6{dG64_j8K30{vzYN1K!B>0sv1&GH94jjNy! zV)pp{^%v|#qNgq?~sA@6=W)dlc)imVT_4@wsIIXA1|Ujhzc^&SP% z-j&UK`hP@rK@5Kyp9_BeUY|n7aBGQ<#3?;yi2=gZKEbx*`3uLan3!GptZxZwFHTyN zw&wehZ$c4Mjwc8f%*!P%m`G(MIuh{+RC?@a$EZ^gM7K`PfCa%j^-*Hfgg=S)uRv$K z02Hn25>b*3WAi3l<1wZ?6tE(}_ePl!QywqFK*aIxeIlXJ`s)r9xCZk6t4Vsoahn3* znyo510N>h(3_aBDKhGVEi=NDt{tG^T)q&1GzQ3T{-_UsCuYvvI_+Q~~6e$E5<9`Ls zG;)HH|A6l1AqibW(i21LI<SjXH#dguEf(LKi`U?yvZT(-a@> zZsEle=dhmEI<7{$ydWF?+?abEi*)h^_JaENV=D3o-?;Y`*1v`5oNT4}^RL$njsCLY zH)`{kD*e@x_`;N7bD2v2?C>SPhRakk1b_>vsvY97G5KR$$8I05Y_3FIIdS4 zd8*2t^0mA!dZ2!Z>AlsEGCDXI%V^nYZ>jPmS~t)|*uuMC7<|qnzT`#@fo?t5+}x~0 zUr_DxwbPZt+}v2TSiN*`8QYn80&HWj|Li`nmexXhLgIb<9JT~6fx*-alz8Zue4R7s zUDR`7ogoR}`8sYUyIO5TSDgpNZO;`k&@kE{0M>$5mcHHB_JIGD7IwO(5LR|&XJ=+c zwqbBKUa%OHBKbU>*kh7C_~@=&X1MQBTjL<`g0{_JfLv5<0mCDu?PO+TQpSvDO93wQ zz`{ve8bu7fgNpr}P>*+%wiz_fkm4MsPAxPvw9BLe-4n%y>CWe4dm4MG(F$Qjqq!fo zr)^7P2a`gJB^d}3Q4COb-r{_ltt^CPUR$^mP+hC8EaAlmd}FT>hix}7*odKfAocG% zicjw0azd=r?Rd!|$L9uE_)vC7xG>$@+Z)$NwX2z3*eQ;U0Ey2)1Qj-D5gaL6qkv`W zHImpuw$AO{$+4Owyz5$qj*N2VYJ3zX$kTjD76#rqri8SKVY(ns0e&%JhKuQl2mZQF)5Cs{!JD3JqPhG2kD zOrZTgBqc$s4Kn@7w+YdvR|7p{C#Ki=kCagqnC* zu<_{sTR>F(cRYlWm`MV!z-O96GvfUh@Frzqw$HGfv@heJH>o`pG|jn86=|^G>}Xs- zN{Z(E5tFhoe}mVr6D_fr77?`qXn*rWAo~H=zY1bRs_-BKCy+G)7{Og;m^TxW0%B!I zKAI?OI+Sj1#sWloNd{>+J~b{79%9t|?-3_|g1$#)8_+CWGO{@_fR)biOPUO?g;RhxwJ82H_V zHXpCz)6QO1@>nb_sR7}_5Ukj|bxR<}O=3rZo#5=B_$^eh-=op%J3AG*mm?YLf2H)l zV1beu`RD{YPJBGX`-%l)`7RDS&U{y5tDv&V87IM!GwL*EeFI;mWnxfs$d6OZ70V{` zYVGvjQ6bh#O4>5z`2Ly#SGvnkxWD z=W>-LSIZGE^MHK)%+lW%|5Wqlj%8a8;cpz^!;dJr_*@?hp`?jKtb#L1Wru2R_3}C3tjxilc6+#XPQi}He6Q%lQ{~@Vw&NEx_0q+ zkId2i8P^0D{_FeUZV@)^-aDoA-}T8eCU#B|<{g7}Sj&;9)R$@)wD6#fRDlZ%c3pUo z)I?k*VQfRT)k)6Pr1Fwxlb!njGmxiq+Zh`gms zlcms<8_^&_{SA?yFDCr^tEoDKhpQomRGnF}TWdV_P(U5YkW{GVK64 zh{pbhaRzjqop@on?O;Dz&g46f6NrrI*9Z#dC4ptBCfW0Pv=LX!A_mA{k72{vAc)g3 zD<|kQR3WIDK{E>l@Z2hiI527elqzObyL?Cnp1nIqmDjn%XL6MSx zbP$2idlwLp-a$f9x=0OGs&u{y=-%7??sLBPy3YCIr6!qKGqdKo%X7~fTv}aKux-K- zj7ixA9~MJz966Rvco6?B2fO0AB6pmoO~}ZD^y|zUl6z*Kxr1%9-`e?3J}7b;1nzCX zW&$RL0p^70s(|V5SX_XeQh1b9;KAf&o@SIgy)f01ml4V+FN2$oLfLm_fHa8d24`ED zxtIilPnDN7G~HbNZSv?eVQRFhP*`~v*IkKG)O{)>mn_H@)Z;u(gc=4`&-d&A7)h67 zz5JTBwyfUJx=xMbH|t%GaMc_<^gWR{@sxZfVFn#ocMnH3SdR%G$|5tmV=TFwmp*;L zwhmm-{<1o0l@N8*?0%)M%+n;cqvV_T_5kl)p^UlfP1ey;H=+*g$0bG;f~jKK9Fpmk z_jn&emQ8dhz^}$L>y4kQ?3E}-jM-IF6n{4X=?KLuu6`Q>%_ct0EYj}r znigvD30mAvPw_TI%F1w8X+qrBegqEZ6SS7dzeG8t6g@LJ3~nwpCoafT!$V~rb|{b2 z3EXzxMfH72KnFw*SZNT!3tBO?wnn{EdBWv-WT)d7e#+Ulz?G<|UyR}M_7lOlyM_^o zvOZCY8HUyorT%rD8GGE9T+%1QXrQhko(Xr|IgI$Etdyd0$t4*wrFl2rMU28AR7Axq zjKn^ZE~n$+$t||r36u^zAxGw>krxR|WqXOn*%RpDj&E{qCs?m4gd&qVGd7A1U5tV| zk}6(D*O-|~K86DPnaXSRt2^wl!+-4VkS{-TpUgpw<)bCJ{v;ZLtA)CNe3S!j$wV1i zs!%-5`wX|>E<@I+h>!gbi9bj@vcMG6^6jd*!O1Z7xt1}(%@t#|;%aR4mq_&kfjcTS zD!xwTXBCDt0Urvy&_*JDR$gAG0)K*HrX!U(OALd2zl6C$MVSuVCX6k~ORxG=VsuA@ z(rD@nz^ngJ=Zddi|+Zrqx3j3jtzK4-|T4A8M=yW)5E?31Zcn+7r?cbAmGRD zO$aL`0#4;M&4jOF5j)jNA0^_O{r1~`bdRxwzxp6=sJ*neKUTp*?{+S(C6i@n1xew% z{6LEar0!7aTc&!ll|T4tv^ks{xw_q^L@j06Hxur3}wU+o3}KWtR|UKtiNiK!R2nb@>d40M9yab{-F{jn)v{&s?Ot zivufszQAK8Q%egvW5a(B!QW}OdAE6@FMKY#!=E!yH$_AblyA<)r*OF2J}_^{Z<0?C zyt?3DAbWm&fqvu*;QG)44cbc_RkDzHee7=dvX%i*>5XjB&)D|2zVK!4Q`p?<$+ZW5 zL5qV-Ye%@~QasZ3(~2zKEt}^D%ct)(78FS2cj)}6UXrsi1Bk*5F6ya4Iz8--eS+2H z2aiDK$ooY8#l6z!L;Vcl%~@m}_^1#zo3>K|onnXp}OF;k5mURC@W@X+=XH zvT0>@_UUsaq{|9bV;_;})BkX+4gAiIQ6GXJ(x^g_>KO!}WWL`=-T1-L`RYohjXIUU z=NRb(DRc^Ktov?2B}d_)L-ot)suys%N8^_o~)5P@YD$R_Ll{W2GdecR{l8$R5*+aRR{GZfVh7{O@zurzCtkvRSiqB{pllc>< z4P##y6zYizGnbkdCzNFx)fQ+3HpY;^cWr!~Ksjk(#@7HUEI_{~Ka8KclM(i4g})e1 zzw%Y^)>r`llp-_ROa7*DB(BwN{CY<0MM>Y`@f+nlwP8pVrZ74vABn;}#psO0JUcUd zyzcq5kOklDujjp3c2{FG0dn2B;euW z$P$r5l}`a>ML`wt!dK#qMEaQ40b>(xUEOsiAK`+40&Kfbt+&ZepZ2k z!CqkUaF+-Cc*biS&1-$M3JuaUnX@d(oEcQH8PhIy(&4|0@*k!Z*G6bZ0emAXZ{7ZY ztp5+RZZOA*l8Oy7Vm{N0023oT!+;c(n#4;u?{MUDU2tGu_GR~Us0|f#0Ej-k876xp zs#;_iq-ZhXYcBuLee4xkryv_sgh>y{>rf{+>+ReKBq>ksYbvsjmf_qNI()9pDXCCEVGZbgK$Tq=)~ODTJZ0p!liw^aNRt=3+2n1s$d@Fcn)3q9$i*>sXxqILYf3};FN0xYtUjXz)=7}jo1d&4 zz?2Yu3gnYdf`uJ7`Eo<=YGsqr5cQhEGpl%c}_#>3|u`>ibrrtp~;USzs*!FxT=pxPp? zS@P)X=ess^M6wQ%{$(w~>*67;_NI~xDxK8;q~|6^vW$g# zVh)Oc)OUhi-nPbwNkSX{>-U8vY`r&AgE9YZeWB=}{#j#WR*&L(*5KG(95j%I;*++M zvd*yR>4^AdD8~IaEF-v9_Xc(x#l5L&s;t%98+bO8pIe$nCQ?qS3kri4sGd9)92t$H zl?6vB&KNhXG+&Jb+Yom&Zo4L%Ls0#4w)pVjlcmbU(XsxVBfa|`6$Ya7qs2R@-AKI3 z)K+4S0Z&+!O(RYXmQj(9n;jrpra<$JE#eL-xiqh=UX*g$IIOMUlXVS85+w1HW`YE`PzyOc{%R=+}7ah@bMh=Fz%g*|*@W zc?`~07`ppUOeR7RH`TT&_3D~C0s`NpX%=dA7%EYGtn*m_V^G8X=l8p^18OSne`JS< zn<|Z$8ZLZ_6YeT=^Is-LI)A5R?IBLP3epX|fQkhis=tOgP6A?p=W1R57}t{b`_8{A)YbLDaYIz3>I4dX0Q2`g*)&{Iyx zeEZTrE7cJ_%)jRP94)K-7;eKt)DMluB=il(?9##e{ezBI!9@$>R!A@*Huch8;4;Ie25`Dgv*SDpX$AM^p zX(|6j84cg5Vv3Z-j*B~9zH}6~MLLQJU>`>4_e-hsFQAxvSroDBQ$udwjS)-fkkDt{ zwNm`_%@HGzwbSG}Oh~Qm zK-P2p+t}0*qS;xrQOUw!hKS1Tco(KBUv6X9f+~*l=bn2)tYvj%EoJ*;7i1H<7$K@O z#XQPVJ(GUl>dV}qnS46F-~d0&A(%2h<;Tr7N~Ey`U<0MLuN!xh!llEU1VH({6c4T! z_yv?Lt1)|yzJ64=e00Mz_2plpH^mg^9oJ>F4U5R_F{I~L)4*nF5oqqz$mP%Fe#!#< zjeZ)dkE6SKo-|6?qk{9gQ z&U*JXK=0mZaSM767aFN*89kcP+hVS#nDU63AOOuab%kOD%?i;MBM4|Qo-<&+$+9Bn zB{U4;GO_69Eo5euno@^|)NPpO65`inxQq*$SC)p~0tb|J-FIWHRNZ)fm9>YKfS8R& zfjBDoMKgI|$Nps16HBy!3ivyS26X%r=!cG#Z4}e`Z==}wtc{Kvt2g8(D0f!FYA&GK z5d~Q&T5oHMs;gaP(P2djR%pVuv%k>E0?1_!XRYsM{ckk&&zif6fN@pb#D{9fxA~Xd zy!ZkS_EQd!VF0L$Ld~bXI_c}1b+_5UFkNreJ_QyZ*V3ak0rl+6>-95t?_s#VeZol? zfRu{C-(sV~N%%CWj)J_kSn=D+bWCD6KBcWu4!h+Um-XJ6x8OCy!?l5_ zVj8mFxT&f3E*8~S?!9ulg52F>U0^^sP^*UEb19cO zGg69|X0awQc6=wpL?7}xSYnjV=(9ok+zYS1t9NC+rCDs*tL-$f&OaGwOY#JxKx2#^8P_7VX7=~ZpyN&Wgz00 zPwy&O#q3RQS22mdna~mBm^HYz-`C07RCX?hSqWw%txrlzI)-}(p`+Q>y!ThMvM2R9 z+pn;60DaG-nxEFA&v_!bxTsCiESN`jKdrr~wB0*g*1HMn@sd<*@g_mJrHlRYMePFb zh4XU)ey5v=5@?luu2PG{p1&WP`_k2T0G?pkt5JB~r}^98Ml1XjUfT{6B10|m z_dxLa_*aW=iUj-%oqwaE5`3O@-+XTOCD}h)c~c}FjOXI^Tx9lKL`_Yxzm3)mUqw`W zEY3O#kJxhNu?h-Tu{-x~(Fs5=rWXqaSg*{4MmO)>f@Z|0B#u+Dv7hprt4_L;xr31r5wHsWIVk@wuyr((zqRIAkD%TAJE4MaP-)Gcy@4lB zY;!82;-7GM=+I2|gn@bl6q?-%3=3#Dqg@GX`E~f7Hs%a=ZQ!8O5jO7T_Wd^cM~;|;tPCyPX&M-5q+WtDKbw%<*0Ka}3{OtokR00Z9y~kBmL5^9%$~HnP zR!>F+5ILks8vKj|R(VyW;d^`m*k)V()+H$Q5Y2cAw!YL(#%S?4oTsgVKp~v}>1e+` zc0U_+)#}2R9z|wo@4Z<5*D$W^mT}})Yr(IzDyvx41Rw@#j4c@b0d8EEY6i&P;Dfrh z39PdVagPvMYE9$$uv)AQIV!gbpzyp3_(PO=luBS|N8;&xY8h1lD=<6u^))$k&|eiG zF`GGf`2yY**DKjQ;1wlVe%XR0GEQys&xZ@TvU^;jcoVSDAE36D@HHXcz5=_w(-H6# zwQ!in#Lr~7Yt8x#V3|#9Ug@Iu_hi5N;t+lRL}(8I85Y2CBKn#2m_HycOS}FcHs6Tn zn84*kn52bBh*-m^3n3oYD26SXTQ^?ZZL<>8vAgDpjDxe5Dq5>w>mDyyL$Bp5E#<_= zy(@@+w=fM^aoTa(xucbQyf*NJV6)JG9@e8?rJ(OR1~^J^1Y^p8)3Kl{JerKMu~q5A zL}Zw9<1qi8qY+XyJ0BnRpzH4aOm}*`+mE z6A*|D1Ai(uxLL&~W3I@xZyx3-1{Cxng^{8B2o{WPwwDuH`9(>Xdfhc>uk#uoowPI7 z2B%-T<&(~%^hzM)P`GH1l*d9fs#W;jkD>~25+Z?a-UF+=G~l~7h=>4QsG6C2wWeDe zK5cs|!HBh$7nL0d42?TwBlbYxM#`c$A!>IxdEojr&QO=_$o|#lomp#mbVxwVGY?Q> zu{C}`>x_C*xXB}rYZ>v`NttnpqSY%(Enn|sn@P5`C*i>v?;Cq0*r}84_eE+5j%E`S zhRI;VP9QS3`Jca!DtyAV^)p}ss0r=RZ~@Dp605kEprldSp0aG56sG)a9K%>aXAu7Y zEn2NjFu-X^Gl|B-jCgQYez(N%eb#-jXBi7$KH`7~2bF3qOM=RtNP~zxkOi=KJxLoa}OZVY4h`?z!H=LU99k-GrFKV}viW+-2j zVRdR(-QvAinLsnG3SNa6#0d3qBQGxw>ZNOr@tB0j;d;Pk!^Veu6kcToqqHla2y!18 zbH)$%4)G&ut)VknhwmA^V!Zn8;LQdS@oX{!{bVjoAG$BfuLnF3Aw`WOm1N?AY+jFR zUVxcT=d+f6_DSqzI9c0jnEE(RR=?fZvr}ONX7P2>VIq`lY2f2}{sA~eGV|*MHD}YQ zf&@9T_-d;B6fr5vZl~}$hQuUkg^|*MwQbo4=@LRFe7FewrS~;LX$bf#NBJGPjsDHP zX{>yjbZo|Ac2_IXnjmCvJp88bQ+HX39RF`J!^_?)w_V2asbU&lZS|eV1jEqq((t+y z8T|Gy=*5?(h_$38#7gEVg56dgoZd$uF?yw{6nNC)Mg0z3tlf z<69-GAvmbnbql3fSqcdlOv~Bi#JdPH1wYs$4JTvaQm_OGt(>+YH8D9H3pcii zKV@Obw;h7-A2!(HAZt_kP|u8f%TNQ@C@+^plv)9f|9j6_Y$SoLy8g4?!krt-27_dw z>gB&KI%N_fkOBu8_3k>LIJ2;-N{LX~^#zmeA4=(zT1v(~*iU~QC%3hgt>kMJLOpI! zzt8HJtrf-VBmNbLU1)3zo$m~T&K8*8uI48!C^Leul8tWEw(!{vyVk2%6Y$YlR&<)4 zp9gXpm?QAy#hJd11`~slB4zMluc9}WEr84gBQI*61g?JO;&M@g@&P{0&Fjs;1+K_x`nkV1X$n-*0n7+ZiP>PecDpoEXF=~P7S=~c%w?^3H=W$zP41f)wuwX1ix82hzz4ts#Edp=M zEnYFmJTy37>_7O%|90+uh90+s7LZT@me&)}0%F%1<3gwxg3ntxJDYFe2lwC065I;@ z6xCx*ay4xo7o6TPzObb5sLzEJ$_H*WzF%sL!j-p-i7jPTEV??B-MQ=MlL%{5|R%@~*0X}r$`WE%X zui1Gs8_MT*2{!-G=q|KW)FI_6c3DT8uR&y*8F}OsM}@VLdrH_SG?TW16v>89CdSIi z@XTSm*gmPrx+4DggQb8x#cfl~LH!3?x5}}5zP>IAu3T}*SYt4-Y%GQ}$2aZFvS{2e zca2@SQeKISnPt&7QFrR(rb*!?SCm*I32<^foR@d(OL8lnTw;WWulad;DYU1Ku*YmH z+X6FCub&33;^&mwU0^yK?4mFrOjD?eu)%@NUsQ1WFbdUT69g(&t0Js`Ri51y962$C zpfq&Es=gqS@!9=TA8eNFCO#}$EA6JHfZp9yb6dF)4`iMfl}l$GuV(Pz&%v%FUAV0} zbs|Omh7hNC=3A0^k8x2i*qhw*u*90)OW_v=KaTD& zGx^L$Q3mznFU4cDigO~E0!OaFrRBapavGF}4#pXfQ{Hl=l88SloE1MqsP@Efh1O*O z3tQvkLp#UJ6?|8qTjU}SQaT3mJo7E%>X}vqC1@$pk41Ku$}6fSZ#Up!Ol{bSnI#aroG z_M*ac$eT1XFUD{#Z=3R6<7YhNa72(;k{^eC_(l-aW=(b@P1S`UHL3xXF$a{%3VICQ#DeYDnQ9WE02GZo1JDez z7lxyQj3@;wq$EntU_~^m4eozvT z-)9ilDnBX8dYqP*#Z_HmRMRat?x4`n*uxo}zTR_KpU0#nq;XtyYpRzJ#2`N0_{jc8 zvpl2MoYfHGS4I9Vy-KJ{1fLIjH$PcF;LHjw#aR~S94Lu0WH)U9kQQphqtK-mh<^JL zq2z20yyuT#bynGIt>+VL94W{R4Ap(3)ja!@cAiRK*QO%CNyg)FH@nJs$Y#W) z^#W{jxt`*LO%W?S9rk;mq9#b06}5Ln!w%BY@slNgW9*kx=<2^AcGidbcC~6b7YZS0=A>LaS+wIlGkAajlX%D3{6r2^MOePyWAKWA#HhR}@;Dp|Z3IA*yOuc$}~43rm|jd^2op0NF5 zcv9xb>1HfgdL|(NW9$-ZEB;PCr@6I2gP&?={B<2=6EhoyEK|H3*a>39G#2jg`&Z$=riv70MJi)1Uc@t+~@WxT7k zC?avsI$nPHNQZ60JyM8e6(11_`Hkh#n(7Nlwz#_O3gF-7himDwvX? zdk4P;d+2I%TU(=gS0>r59TSm|{v0MzEhYo!r`Z`=9i8@85@(2sHaPZUQD@G8072`rl~nc&JB4tA$Orj_2AHsQW0A@M*&ThsZtZwpT4(Qo<~`k1Em z6gn1pn|iOw)pAVqLP0&^i-a%V5|YAQ6r=SPrCr?TwbIr z`_>02gY*hoQEhvJK!Uvij#-~8b$q;Mrpd^C@H(nB^+qB&kbe3l?0o?(3wl7oDX!C>Y}VYd`- z@S0kadH{dSXE%jo+QzqFLg<*bkJ1~1BL2~SW$8)^YU@&nmdZE952BYK`ho$Fnc{k0 z>W=rjpVwazdp~nF6C{WjVv`t^!>E+rM(v(FO09K9*WQBk&cTl|fLowN7Z@CHOK)=# z(0*ZmYd_607L3jWVA5=K(2qwULF7_A3_x(>1c=Dam!|G31lsQ_^h;t$ailter_&hX zV4;H=vkLM7PL@9{fS2baKiXAZ=A29wjo00&A2Fr718cbU+8599P71Z-K4Q)YC zL#{LbBK;?XISC)VqC~(@+_KvJRZtBMC{T3wY1HV?Ug0~Ob}(ymdU(bSUlgirsr~5K z0Lc9UYJ|nLlhmhj=qo+%3IZ@8wpzWvoXEKU%=&m2qJPR#?xEHmM_+h~5V_^lJ|YAB zkF!#UQ%;2`NH^PSaMc4`p87MNPK~64@u0j@sQP!Wmj@ zYlgn_Ub8=mOIH_}T}cBrc45<55=Jv;}GqG3?4%%RZ+ILire`idpeVx;gdBR z#w}T{#R!CYrRA@&0=yL{_pBz5M_J*~oj&T}8r!}gsLYx*KzMWAO>AMJ#|J6x*UBZ+ z{<0hX0wX+RoV{G+O)7FKQpfJhl5qIlFsJR6E8!hFIqK=ZC8KEA zZ$;{qoFvQ6wF3<7ZfS~HuFfyX4rrbxAp0Swd>Qak)qKY_vCxV4 zd7+YJzcdjXA!rV0A7-d4Goe3r6&B0}2kD6TLk}Jht6^l{zf_qNa6e(t{9H=@uVKst z*+T=$KeKMN{=}G|kTPLF31d9phyN08JYi=a0rjm?(3{R`W+0_rWLBef{i^>;6u1dA zVKbz6+%YZ8OSS1pY##GvEO_S}Z7csq+oX%AziM#GmhW(8kVW(r&M$Y+(`O%$=34X}y&QC_ z=ErMIxsJdc*0K!LN0vnC#7!t@A}fP!TP9$;>Js7VQPKwdm{kP*Q`hmzudq)E9>+H>g- zl@QqV(>CdyxRb;4TCdN?Ml+k_@4)5N09U^aI{pxU)lL#|#WsD{R90Kymre7F8Ue#t zZDPSI{?1^l*1qPXAo}_WJ%9$iwM}wT%5zy95-b$% zEe|vSw?lLPee!LXpfbWl{fjj0dX#3d&U%6&Vgzx)d6mQj>o+&Ys9i;>-Qr1IVsk&e zc^xBK1`#v41{b{hmdPYx9GLjv%%t_xh+ZkCy!v_i%d=S&#{YD?0E-htZ}}vuX-Kat z?&BOUe1F=R1y$`Zl>HQ-7sRSK^21e3o0ZL?Kwrde<=#FMUU%XU8tQ&9%jSbjwJAy4 zEXRG*(Xk;;hKE{t{lM9s6?0HO$E>Iq=9Ny3IO5@^JKr0}(b_eD4+xY_wIa$tO6Onu z9~JYeMl_neRc5~JgV7&#u1ws?`;hxmZaYfL5_JsS)>(ij@r%raoR2ya4;j$OqY5&` zp&Pidv2ttRIp?GO*~y9d*2|-GM{WdyxC`1{mYg8~qPA(cFLgR&I+jnOH`<#6V;$(4fl;?I=mn zL;#Fa(M&M!&q9`@eJhC~m%+WfCwWU=C>$3RY8n4Pc}OJP=1JFIi~)0FYmuOsJ`VU8 z3mkk-q>3iXAW6ph;mtn5-C*5Kh7%?8FGIedzR2~Ia^bLkJWYLhLU>u|3vI+|2sSD_ zS9U}2DjTpCjDB?46Uo0E@H4nHg3oVvSe_=4PMCkkm4XV#ef^PkO*h&0_565-x`DaW z?E8D{LaNIoX3JE4b3NXoS_BlHk~a}x4$vy+#~~zj#TV}0o}{|s36?4gSG!~Pxz9Q$ zAO;PqrbqUV+7;QW|F$nge_i)-iGu)FPAu4ie){`%p7C0eYQn5}37_pGCblgvK<%t~ zzV#4N!YraOwc}34R$sn{{2ed5$;<{x;)NV?@Upn;e8Ih&V>ARvx-T6b&!cJ>nBPWc z{KMHlJ1$z#1iF4p`ZO}-q%igcw!(>8RiJcP0M3l>3qDM##f{PePM_1Wx8K@tpLRmxdtlE%T%=||DbkD}hLatetcGM+D$>!w zod4MZ!PEyzP|rtai#H`k9dV#zG=5X>_-%T?;>IwL*W`kQ430{}F6m1R3m>Jf;*`e^91QJ3e#dTM~p!zoogWPFJWshy(|PaubwZ^_63Fb%9jxAL#J#O>MRH>S&LxBPJ?`8%MQM!m(c7d9g(vszx%9*0Z%Ib9{Y>=F{puf|ZUPUq_|pmio}7ey&g=Zs$o|ELDhQA*rO6=P3y_w7ec>0Y+r_vKg6)6)_}6FW zJ%j(^d;jJC|2n___0b=#fnF@At9JPoahPL%!#z=$S|1}A;34DFs$T@P^w}zKFl~c% z0*tc$V;DCH(38VsQIf>eeaQ*|PNmh~ICVxWoIO@uwp!8qRbQ5L(Zf80bzRE$C?LtfgPN&*X$JJ`Ce^K(+UVAB zo)}}{xoCW3WlnF$XhDtRGU|Kc4E^(5*~$!v`|`ojxU+jwZ_+?-ww4U4<(y*;u4j~C zrsxyExc%Ki$%Ozn@`2sQfjegESMi{2ip*agTRG_8U~-J_ckWaMM|80$Ul%qz#N*7@?; z;A`U|=)|Y1&@a=XL{RYp)|RnH$QRn#UYaP35%?O*_DLUOG^)lf zKR9pgsTTvSy^x9Ud|h5fQ+d3 zNIQk>S(MQrVFt$fkpolH@5MM%7PC}z9|`jZc7T}ZqdIB6(HC*(6NSa|PO_?fjEHj| zffrIbhAKxg1_(qBKvSGw^mG&o4m!VOgoX6T8jIO8KySKAL$r=creEu?%T`NBYfS*o zMP=}LV;VykV0WQDC8Iv(EC&XB&`b`Lr?dvwM7IRH`du0+HyRfi7llV0WQeDaBm`9u zVHbtRKVl&z>uwR_fw=CY2$9Jow8_}WHxb}m(1e$pa~RXfTFX*J9&yNMNv~?#&CHy^0A~p+U4$_{mWcT|1!w_OhExV6dut; zm~r%FQ;!FJnqY>we;0tEIo!61H2cXu0Q&uS?7zC_80g5PK&q}EU(^#EoS(3MkVas>{F86ekRCUDtJwVWCG1SvG8&Z9k<^CNzuH+F<>9qIOP9(KmIoYi0brj=&)!#pW z11PLsjAEK&&aSq)T8WN{EOr8D^^L338`QT5|6qFgMi_7Cm+qkemc=CBWy~KEvv7Jh z_i=i%S9-NJbY9$Hk`otF3>2yD@M!L2QSWmaJ87;J>bE^(sq&FjO726{Xv|F;pl|=r zxxf8T;$TE?HFRBwx?uP;Zrz34#arKAPfy2|VYWt>(BG)a6dPuKa-^mF)shG~V`+1Z zos6hTR;tnyBlpfH^|{<*q(OR|)(-5=w2m^-ft6LC9u_7gXwWYlRgHxwfKyI}h4%zu z;(H5vGvQWNOv4F2%l-PhG3!Upgv}>l_{fuLIfFXk@l<`M;LP^Wud8gylgW=kezwuaA?Gxh78dE;ch9?YO+u zdbiivljL*x%H;D8o@?e?Y6C~;njXF8uO3W^2|oKRxlDsrc6X#XJQv12JO~a$m+IdL zdaUW>Ga&XVYY#%H1Lpd4kCcy{7;zyX<3IzKm7IN0^RzME$|?dlJD*wYH4-s6ryujG;$btX|MH; zUgGIU%bd9N;HjGa;W5extI6sz2?0pdceY7`TiwU!aDFv`&U?93X~uAMw|4HP|G-w% zsfT0H$j@c)VZUuZ==c&qrdR-~#KMwfj3J%>tQ>$f+shO~cKGq2G<__5*WGaKJDuRf zMxXS~leVg7<%muw(~)uER^eh(Wo_%K)WTeoJQLZ6d)R1Wd8U>A$8f*84dJ7r8!U>c z47o#dKQFENzV8Q;5_c^Lq*sf86yI-a133PAw1BtjelKXy-hQ8ahk-1%6cUdFi|N$0 zXMnlAi>L(yLA7o*{qm|#`lLW7DD)0BNVoZq_{SeJ4G)R4bD~~&y!3q|IgrP5b3ptxukTDhcIJ%4Nf1hsg@v*%IXH7xOaX5VmiaEJf+rMd3 zSVc?L>6&-&;odj|Sk+6@Ny(dPVm#H5%0W}D)JGM+psis@$(6D#9)Wu)c)g3T+r$CsDHKB(E<6<_q(IO$LGyJJ(+ z_~gg~CTANlEa${26C`rc>t}=ecFUoRhFG7W27n3MsDru>Pl!;pI~;BEN?){cxLYrv zTX*)TMSqzGc9fWiAyGGUfROqPkO}HM;8aM}Zc+ig_ zB6Kor<2_g~hgjGZGp5mo?Dv}Pz=#1-=}dH6e=hBa^AV-SpU%dNuqV8==6E@ye z278v2N7Jrv2+;7Gf%N6Rlc!iA<(kz`#NC~aAx^U<;F;1gZFb;EKt{8G?S}bsV@Gk# zNrxd_AX51DckAp-+i-BQ^wiTdTw;K5z8jB-+Ls~PI%3w5kz^??K`50ck)oUq{H2`G zrT2L2JvJWbrJ|gwV=gB7Fep<(Zxz4joWLhQiG6C0g8LQR!yPMnnB;x){Tw`UE^1+k z{BS7Tarr3;s{ceSEh#&1BbQ%2OJrY;8!Q=R7?js`#TWVI$a8M-IBNSIF#&pUmu`M? z%O~KyfzT1dG%CP$k6B1cjYCryc5_hi6n{E7n%SGCV>CGqA05!M{3giz(Zt~UMK2R1 z0>KR=AqunXk5o0;q&_2^1vg+yrGcJ0|th2?53|NS(bvT=}fvn zDr380Si5b9&7CRD#iBgN^yEx{6=sDvDLjH0Mc)^_-5GpQFe^S{$YSzM5!Z$LM61`W ziH&d?EC&YwkL3U`!w>e+cVvrP-grM|%SGO&h02&d^G=`;In@GuS+iC)QYs`Mpq@0F zr9-3a^b;ORRNoqGfDgh*L-p zWFzkFh^mF?w*`KOpZhr{&-Rx>7~-G6ZS&u~J6uB@PcX*8Z&qB*X}cyPQXSXwD}ZvY zfC0Sp%Lx<`Nap560Cq{0~V2*D3c|?EMupFWH1VKz7 zvxK(3AiWd{=!BDoaX-mc@^cz~e$Cbg>z{F%TI@DN>krq&o4~d_N}h8qy_y@_j^Exi zl!yn5koeqsa=`H81msFBd0D^!Ca$SM1ZTySuN}U{c(P_6JIlmO!RDV-6=Mj zo&c{AI33jFN6>`fB+qqPyGyXcz&&FS^5L84O;X4h{`q)9P1|AbbKXY^Sw+F6Y9yKE@)^~CldA#zq_6q5&A;2u} z7UH>@#590&hb|siiS2iyh%y=xs4B=WwZ}iA1hkeO#&Vg%8L5Toh72L@jl2}AKYV&< zXpvliBm2)B5~TppV;01ud$!BuuK7N;@&}2od@IIl$Au~%Cno$UTr~`&Y0q=RqA!WI zaMFgnBS)ASL^{FT&>+48P2Moq07l}vM;W9n_f)Umz49-%6x;)CD*I=&IMg1AF;f3K zcPt9D6Z(_wnoDt`fn3+$Gbm8?uU53S3*6SnZR<#xtPg=gI}+czGkI|1DWj6t4)U?6 z#|nIk*L82O++Dsr8zB+@Fx-s@Ai}rxbG2ISF8&W+at;4A9`;1oTK*swT{#7TD=kzkNsDcL;;s2L<)ujQ@+24C#X4feaT_j`tM(RmmUP{ zOWw+@tPoKskHfg}+_fbp_+x%;7hsm|>c72sA`F~jJck8R)Y8Jz;K+4&1}itci;$5e zYxCv#+kT+i2yI*V?(q|I$8z^2kFDOVs4wfQB+o=}VHqb1jC%^9B6Ic<@ex>Z@&mwN zDqmm@rNs={#V;jPs&r68%Xk?%Q~MqKB%o|o?U7&a&wZrr-R=p+O@ ze>|4aOFR8_&nLZAj+yiL?f~oqc~!B~&xUmOH%CAAJNthGJw1sy#DW3q8!cW2}h|496lKz&99 zAn*z{f|;UHm6}u$kWrLsLmZe7_|vXUU%1p=+;h()M?y>37JSoyYc01ypAXt`RQ433Cm!m)d&xEp6j)RUD=X2MGE5`^9`^ZLX zcE0$meB55s+r~;x_Bh!lwHyq4X%%`TvwH1*SgL=%o5DOMfN)Z9_E5xc`2WF4>Wm{z z>a8>oQ-8y#k$>tyezAJ_h6pJ=h4CaPiF?Ux_Q^w#Vm`fR$S~p^QGbgO@gPbSGL#iJ zDzM=DW5nwb&`gh);Kl1R$ypvO1sZVOCKryskt0~tKW?dhDjSOOHdVCh@od+x85n(e zzw6uDZhBN-9FyAxq)h}c2TxK@4n|tm@zbDvUh8}Nt_iCRoA0k|zM_>m=#kbg7x>kV zt!X?9y78j!Cg5r6_}5(>ZNa50Wm2rVT!9Ct;zWMtZk)d%D3P**6fv#h*M}?FDL$R) zDS)cVJ1I-)S2MI^8#v7Sf09i!U=jhy#jz-$i!ar5ECrh>hz07A)a+4|%?@4s#d2G(~1N zOIe7B!`Z7*Y{Ul(pVi7hi9!OoX|J8)8>*Yc=Sn0*z{ZJBYpyGr8t|twtRw``F6e*I zWRqW}*Ij{O!`xqf^M=+^7UXHkuq`iVsG>v^4(%sfrVYOji^(rv?WVl`qT3vK$7bs? zkPdzFJBzxdF@?DV0AzDdcLmZ|S%UdSQ!d{az5tuY63`RuUea=5R{?PeKlV>~toBYC zP9_!HeV=?eboB1*X9WsG1k5qhB1wr2k-9C%U0Y2)tl^&`qQ&u3L#y!#7E16pGIZ;E zok;eP{=oIeTB%(DIM_OUtJ8eH){U6KX z5qAJYVv?0uHSIZ)Dnc=?*9{t{E_yINQ&b{0`-5d9$su6nwW~pyQhETC92Z_8yJqdb z4J;b?J7kMt4U>1~UU2RQI3>%6CqB)$v3=~7{*bxAXRqUOx=dfY5astGIdp5AnQU%^EVcbddPC>}QWe);vcHGsK*Dzte1s1W<}3-HFR4mx_ZoM)j0!e|37T z@ihux0X$oX6QKn5toI+1URL9MRd#!i`5HYryZXOi^{F(ilJGiPqr3$eLW_a}K}8i8 zB1(2wDv0}Hr980ygChc+YX>}FuJ?Eb+5|hxPATWUxDbo^8pm%Y;)s=zaF^g7M4%=P5?JyJc<{Fq_;B}<{0oozm8_Vtf~U)HUay~BKyWJHEUaX;>c1@p zyi_5|YY{T4d%@7BW}}nOINJGR9gVvIJDe)lX%kO8_p3;r!qjmI03BD=WoUur8io%X zA7UO(Ho-wInd34%ItVQ)>Ve-@}Zghw~ePOOz%}9Cw*vP-S+Bi%H|)P-(?! zi7Cn@Xob!pPUb3=8m?Hp+!S-acA6yQJ(lECl0{)`?xtlMz^!MD~Iw2U*s+Qw6G zq6T6PDs0vcwq`%z7L`taW}`4+RP4GxlD%|Y$i^R^lLX+$?!NfUDh+I}w~9MVc60lZ zr^O3(9Zl-C<>g!NFH!z`So|Zzm=`;hD}6Gz-?4+ZvHW{KaIc9wLtK9(F=A`{+{?>+ z-GiRfPzV1`ERqxVJLcdsumhUaruVCFy$7Th@`Wd#grvL%MWaAjuu=(PQ;U1i&p>eN zAKC>;p^Kg61U}sd$@tJ#mfnvs4B+aj_dOYskk{`m>4>Zc@wW=Nm>JDnPC%8U!5$~c z9?=*QVgBl^a&?A_~AS_9V@?!?~-N7aL02oq**X+XkJZ>;5=x=_cx zi#__jA=(pk(XMWs> z(t_Io~uck`BHA1kD({8*ieXzgY5;&`^RhMQy`oI4RGvJO(#g6}?d+CJ2uq|a_(w%socD6QUi zzT5Zb7IRxiMyZ^M$@cbhW4nixil;jkf%Co_S!=gk1ozhq3mE5E>OF_`0su|_@cjq# z!GZ!V&VPOIBn7|O{i^-$u5xo$Rj*N7d%p*>J-WVe;W{K%&*v_yvokAs)cxx`?1L)> zXYh|oiXS4=Er#B)Oni+*cf{X+v*n!P#)#u?(t3S-l)#LjcbqiVYn0?f(QKuFzn2Q8&Krc`0s!$ZS>!%x2_ z4_oo{7Zh-YI@|iQdrAd_1)x{x#%$c~tz45xjck15Z?xc{Cj9yi)glk)b=%3>kgAJs z-8v?EvzF1ZT1^1IZCXN{URk9JPWk?P74N_8YRzmOEiw2Q{iS7?*s51)x@MiO5dF#3 z5@5A&3(WOFyPK(rmrZ({Oe$IOkSIlQ~k|C^sYO~*k2Ami;n3F`Nqf>nT zejq2Qm6%G8q~j4lbsY7&9QsgqPY@_Vc(=lKiT7)q5hiSWQ@<|m{?jq* zefqW5MVg}J7AGB&;jKw=la$^d-si){uE_^&|6h%dj%VM(S=pp6@(Qq3J^wr|eI>G; zn|7>Lzb3JYJ2z-fhW;=qRD|^+d!f)Ei`}F=gZLowJN$Dn7BEq1yo=$Ebj04TT>=v& zTL{FE$b8vQky&pb9p0Q`h%JEfASlWOy1KHG-lWEtkP=&IjhJ(IJX|1xNnCPb49suO zk_J>BSSGA-{~`=`WGrpjro#8J4E=^120ct7B_x%+G#A|bD`Az(fsbvX`llEsKSz4jkmvEiXv zUv|Nf<^v+E$fmU>>i$;o=mJr=l%E#`s#W@|3tJQimf*xIh68cH&>WNBT@0ofBQUse{{D?`Ya`vW}l`8 zm#u-YjXtoJ{ZeIufs)((_#rE}+0-~bGp#Z}Q}xj}=vud>Tq3w%iAhGI`>mU5aAeVK z?FX5qag{=*{^iJlVWyQK_NWwA$w1IUz|(OoJNmZyC zLK=)hd&b|#UIfo7>lAY@?SM%5<(lZIOA1Ca~W~?!{%=U zy`=SIl_`IG-_O18kEf#|TQ2pjzt!*Xr)H}j*gj>$r39ufc42JZ(XmXxhcD_^x&`Jnq z`rl}MnU>&h^E*rJGjqQ=ICG)s#13?&Xq(G4->l`7=1_r$O=LMw?&&m~wXhWV1|UXI_B1v6PAAjEykR%C#^ci!flZZ1XI0Wsk;D$0&~V z{8k$iT8$|7t-K_4ypF(y4k%^f*6JdFyJAFgT=pc{5M+aN1OGg#v_7UF;HxSsEM3J< z<;;jH%m=!iz`N6c4LYDpOpIr$+W3JcgUnKlWaCy$4sIvf-xxuS(=sx`f-W!0si<4V zu@<$DR04(B5{7@f0*PDTSQ;>ard;|>-zv`?Q+JZtND+QbwINq2!p8?m4Ybo;O|OLw zW<%mQUY9>3^dN0RY`A;)ieoWaGVvGpq9#Y2CEde~mZO8GBfqzz&P?ET(yN^~7Nw#< zU&PY|o%eF6iaDAbDK0Plv2Jh~=tyMU8L>XJ{+LM7Zkw`DId~1w130GA{YPelz}$dZ zPA#I4h(RkFMYqVFf&}H5XAhZw*|7JV{fZ-F)u?AGMikVFJhh!4hg=z9Q<$3{G0OdB z^(%;MzVrob=>|iESLx?3uYi%pQT9goM2zRKFvEZKTtO`&xq0-l8CH8@KprQ1Bh-1* zu)XrGjxhF{>yU{dM||AY$Kyl{oEZ_Oxi>OUDe(azwUmXtI|MPW>6ihPkc9!sG#;1D zBSgG+*kc0GtO4H)1gjVg-z9Y`0!VFB@Zddkfc^?*kCty3DIxyK3 zt@nhXa35HBeMpNP+*|fF7T|KF)YU^4B7qNt9c>W)NDD)8hWQm{3Mw#NxG3t1*ZdCo z0_vjn91biLvI*`5fV%Db7&Tv3)H0NnGFELcWk}D za<87J$68qXZ|?W!2}?{BI}UZ=x~bb* z-(Jm7T@iqvBl#lEJ?_sQd*D)_G(a72X%-GxL+OH%!;r12(c>;ipW^*`G*&`jgU7pH zY0qI&$p10H0&6*o-_8$K+!kRn9OH1|O=BHHUOW_Zr{^*+UNQ z!sdh&U3w@rTx<`Av^=)K98V9AZ@x$A&Yav@S{Dm^I2UqD^UvuVAL~pe5nunreY6$% zd3U5#+}qjoOPCTq)azA67X^sZP$Tz{Y{p(m?*hYtFQ(~^lqJqBqA!^?%XcE`6AP+Pfd??A|E zb9;LRS|ZP0>mG|Y*kkje)@)n5`Kles*zL-_`LpPX)At#qoqw;F4|D9qI#wG%4-!9h z=}reZ>BA3CKPbR;6cabQ*hfEyy@-8yK5T^}x*U0AjuYQCWv%3WPlO2j7)wNsxosB@ zy(9I@+5QCukxdZ5PfL?rfWDGBB>`t_{#i45b4v)WnV|-OjNS1hyj>nsc{?@DHty+tzykMBw`R&a`IVD-yZ5?fcTwGrH*~XE`(syHYjltoEw=H|20Sx1e@A%KO zfQrYjoNH}m-plQWN61UG9ni~^knc;X%c-i!Z1u%)Q#!^M-~@9g8nD!IaAC80QG0)^ zdj?Yp6o7361RR-2PDJ)GN;;9}#XGE%4!?rge#pIR;=;*H{sq7FdcsIENz^qdN-eE`&IFD&i%W46x;o&$k{`0 zer579=L)G!6LGQYHP>N|01GrG-jf+o~mf4%gBT=e6faDSrv zSh+?(fN=!4Vn!jZYM~IkYD1cW4jq(YZrR+Q9PxQMAwXPK{nV4W7v3L=4%`2_+jfkM zHs)2zF#2*(?qKCbh-?bEA(kkXovE1q&&`#uWUi=qH0?nkGNO2Yw@vZuda4JW`Bks0 z&BU4T+uOk1K+;1^kO(*qQ!O$2>NBUD;45(X9Wf>piR)OtYQR@cPfD3YMB3z* z9as<7Xr-JcE_k;3bxZuSVge{elYvCBnnWEFfTQ6IMc^|&%Wk^~YDl8%abPf;#w5xB z%Be*C0@f{FB2M)^_+4>{f{3sOsvYcx^n$P#Hl>fUXV_kQk6e$)2!MUgcZT`}|(tJ+pv zj_fFpsYk-^L!)*(-_8b&74pDA z0e_4V)4z^#^o>bv+NuC`99>W1AWBzE18MZ7`)0&&eDhMyvoGWA?_*SuVZJ*355Zra z*5yqnF4}Ib#*bf}0)|g!6YQfTbLPMRfX$C7e+H4f1<3{fbxwmC=VH|mAB`F}+@`Tv z?JytY`t~=EOsFsecR67I0#Qy;s9v7Tbmh}Mj($84xv=~GZMc6pnE4YV?NZGZ6@#)p z0kkZ1UDim78$#ZF9FGONuqcW-XNnYBVg7P>8=b~QA2Yt)6OXf6&31&TlI#=1ZP;U; zYsJ=3h>M29MAB8@tHOE5E;O)tG^dJd)ny`#^4-ea51-SD9e~+CK-zZ+A!l)PEkn>9 zu$hmcc^AXD_lieS1%MK-5rmDfJtC1>U}U4Ol_Ko#k%zg*z7@cO$O*Wo&_ zF~AOX`>MJ+qwzQpnbuy{N6_-!k#9XSrcCkp%Q}Efh2c`CG{IuPimj?)149B>gQPgr zEyiVSB`&-fRCIbxN1{+dN&+pU_z9hgQRDsWAI^mZ6Zn27gqtNP^a-LoyU%*tJr5C83*Nz{3KH zOQ!i>u%3pTmH*;wv2m?}v6S3c&`EEGOS$8BkI z^>9Z(0I%);aEy?^E>S}S2&0Y3A#3I!<-MC1#n{8qMFhsPN!82JpOIB->L{0`@wst7 z;cpZ5DF+;a*L>OOzIf_>^XF#j0r--^(O z=z|!HMUtof@A?1FIU^>(fOqw;ER;CpWe>Zo|P}&EeBV(`LydRQXI8d?FFBgp4DrtW*IKnA02pH_TDL@ z!49Vk-)?BIM)ktX{3`<`CDQA1_!Ql*O?Vjn=B#SC*^N*gdpT~3+<_Ho8BLOd21drU#d^GIbX3baw_H5T`H~zdW$La@VYi*M5!Q2f<~Zw z=6H=Gc!Pf&70{;{!K5V)zK8Lubg^#hAYS)GCzw?`0)}K_JQc*QDTHZ)Y`*42K_({Cs z2%;{O`l~8d$NoA6I}0w9%fSK)XTvEO^A4|+td^d!KZVbdjX@Ft_S-+v{*pv#Bl&|$ zjvmp5u2s*}%#z07R2D{6{(q98+%fCxak#I+vlmXVtGGz6f)iJz2=asaI~=gYbQYr5J;2Ou!qol6U$B4%cMEh#qa45!z@lwexM0;BC&X33D zUkz#iC5uXXDePVp-R_WT)I2h=BayC95whL~yCe8WX$5sh$BUOG+cCw6 zn-L@fD%z};ekW@j)2)g%$~1Oyx^*gdI$4})JxPl!e$d)m-Ls8FL~?&>YC7H;%neV4 z-#N5Gvsyl=9(C|5{Y4y(6fIf0o+jI z4*h3R{Riucz8U*HjV*Le_p5#<7qKF{`7XOxiv{z;CeLUQ4zQ~gJzLOuI=H^mUv}{B zWNWT^KnmQLOd-%Zs$AC16hMg!%}p4r0)eZaX3HG{8tQGYFfj!eDW-Gk`&S=v?5IE@ zT0WNU0woI^ysf{q4y@TmN7?L}E-}54+V=OR(U;!FS4fH-)w6noSM7#Vj%ozHpK(UYFI=r-7vfWD?;5D_H`(9zl`ehdkRaW z*862d4_B=-jF41;JDCq7L`roa#k=Q1G~Nw=O_buBQx5uh{k$JN$grRcni_6T3;aG~w=)I>7cK3R0qEKFWB%jB4JLJzFOpS(rGenosd=wb z)+F}Y%de>awsb0(F#TC0>J8u1i~31|V)$;|?)uqi#GT4Mr@f`-F@I#>$)5hs+yYQ_ zzvsgLAYmB*>6j3G7+cwUtydu4HhVigGAFQiJw1In+n|gBi(RyB-m6d9L(6FZ>+!q* z&b0n-y8sE9O*jiax`Pi+Uemz$f%worew)=Qk8d06S{QlTb+f+N# z;&eG6U{kk-Iao^9O7*1WKyH3P8U%V>^>^AP5AMH04;mj_bKDn6X2%|xGC+R5w-1e% zX29YM{%BNH=}yk??w2AJ`0BAqQ0lwz)_3`jpc3)x)D zYQBHKs=pkPD8Jd0{dp<*Go^e~BtS^ylC5&g%%S(E${rg~I5g{BY`0zIW1Z9XWaW%R zwa@tO(bCrNk{g9x<=}9O_)E<{ff9J=e-eoYK+R``=vo+J?w#N1lWnj_jf02(4>18$ z7<;&j+A}X1#VzSP7`B(+u961j#>f91tE5 zgGT<_dr^Ao3;|ic;DJa3Q1YQbD)#TGc{0F(5}8=S0zV$W{I3N}?B5kLcDkE^^D4Qa z(Z5Tr#r=sU{SMFE9){^M+6?+W4sepF{uw{UTAb2hVZ0h-8oy2@#|nz&j3pXD@oKs3)TCwEG%Y+`|L$7y?>DKx-{cKJ04d5A<~Amh4xakJ zrR*R9UUm=yP3KEEiD&-LQ&EG5bf`-|0P;k8;GlgGn*^~5S_Gz znS;3no05gSm8&&~m!J3dRsVW0o|%nWh7JqtxPGxoPmYD1G;cX(XDOVZRj}7~)1}G0 z?-qIi^c(fi7p{t_4G(vQ^b8-9S&7*x)2{nxw@Gtsg~t7mtgM#XBQr#Q+z6cC5*&-5 zzf=R|(|mcM9{G-2QWPaPmc9l(`0!%PQ)md`-$07hexS0RG7~xO!#n7sYWaFll1M-HZBmMzDvT-glMod`0qxiC47dP4Q$2YuRSc5MYG5$(z{Zi$uU4^ zQ2tn%kOQX^!&VFvl~seE7E!4xoeFH-Hsq{?Z;bFRbE}qK->*)lZ^x)DJ>74l1=-4& z_I%bMp~tm}SF@45D2uN#ks2JTn1=PnaUhin0o zv1|5+7s_9}k6(nyn=~Bb9Mq+kC+`iV>;VX8d+gV^49`0&Qllv!(F>YQ90eAp>@=Q{ zX@77XKwUuSkQQQ!7+fC~J}mjAP2%Qeusg)oHJ@_}(XBY8_&L4rMC9?BQEzT9c#cVJ z!{d#Hc*5;+$posxBLJt9uQ>KJHc#5N{+(aZ29uJ^aI{`WMx#H%jr+USlFFd~Tx}`F zn#yK)1nMU{SFyF?K5D+AK1%)aho;?gM4yt)$rG$bty(2fJPy3{OEsUxt7IPQMZ&?8 z@UzlAOi=b6hO+;Ss<9OF+mB+e{2=AYENx4#T<5c5URzzdn)4Gnk2VS*Yh`u&Mj1KSQUfA>GZ{q3zepGUQVN4+ zxndXfaQhNU21~*5aMN&qocj=NgY5{a#Zk{h1SfGP9~l`h-Yxq0_$Z8}z1cVorS~suQhA@;zgY#GspbS? zj4nppMF@fR2+}l0=#Peq+jQ(OtkJgYkY5yK9W~$CBgjb-Qlm?R3fUqybHD|DSUu|Y zI@|j3YHgH0Z5K;|EJV)5MxVS__$ik)hgO!w&95Gzpy?f^nNx)o$fdPMc zaq)1sz5K&X7=3;>*nRcauU`w?|E=4C-`!>zh^3shg@lA`qko^F$u=GN{{88=7pqn$ zDpJv)JTpC=n4J9Z!Vn>nHl*nJ-Cuhj#~sS`d&c#6|65moQy8GVh>aS;U!B-IRBVfW zMrgp5nUV4Hw$*?wc5mM4jjg%)#(Lk^slNiAQg~}pskqTSZ}zHtfG%yypHBOW3knKs z=hcKy2is3eS+}0s^$4H);J&m*5KyJI(^#R|p2hb6>qk1}&Zvn0JwI`D!e`I5F9c99vb1ySTU;oF2=w7%lQ{54RC92M-h)9fs)ojB(j#dtKci{j&{NaNzdgi03aypoD zc1_90@ke^&&@&{}5e^y7;AY%Z?ZG$Vka7ZTTpl>Ph=-SyP2~<4xHH zxA{znaa)?3U!$z&-VDpw-p2oqiikV6334!JeFm;gv*u_MQ~m+}v`oS=p;s^L)0Z;aYqFo#Vc>O0W*mCI@jVADy< zx~it0UY;Yldg;41Hv;TlO7a(9t_g{e6J8=CZdE~BRb8^|UCHdt`|tvhQT!-(p~#ys z#R);n5mT#Xqno2AXxYXzB9C0d*nEqzeWkfaX4>#$(>F-7%;4CBsfEaWvh%3;hy(3m9E$1%^b`vi=8BP7d&5mhS6%`;kJt*ffs7N zfj5hII44pXWw7fI-fCZ)*RP&WEM_XQcP#$Xy&deQ`%EftBo4#RXQIzxZj*LRM39&L zB{V)e@z+4ms7-SG8&$FH2!2~W6=k92?P45&@`8AiyS!ccB%;*cHYPv%Y-?*2q%y}EC zSZKno*S>hKx(y!k4Gg^Pt=KE)kp#FotWm-xJBbvHxz!Ia{DNo)2^zp5w{}lT@OLtC zdfS;YNVxRACCvG+gSj9?Rn&+w;;PpdaD6Ofs)h4ehLjF|c!y#Ov&ropI>{mJh87_~ zOg|{rDPzm)USJL9-i(K`TF@5GU^}dK`Q4uHyfx=|lB4~#q)j5zEf*w!smtoK(B)?EjuPs}Zq z;d;k6W56Xc`*bZw~$18TAdPlV$2l+b0W}`i^CT@Lr3 z1Dc+li(=)lu6%zFKRaD2nQuFm#L0-;iY|}tayFELkNP|$Mdld6b`nT5X1G({c#v}~ z7TjTT=q)wf((@0Iz&RDg)uP%AJ3~h(w?ESs(L(N-L0$N$s9@cc+Sz0%A+JX; z%4u6$VpXhs?7O{IX_gQ=1Z7dO!VZz|pD$@e9dd6oXfHdKf;KpT9jTj=lTmUQ7>LG8 zFbYzB;nw>l7Sv`u&DUIk4g0(yJqK>TVkjh>vdJNAr3;(R2h6?ruAX!_W5G%~ItHhV ze%AQiY-GkzK?6OBfXO}nah#I^O6stss`tX=5T;5Q|AA#!o9GJXrV^yp1&k`D2xAu! z;&h{-W-=chd3zdF*`*q6mOia%e69NWpeRjIKi2T5DaY0%X3HgOQTnv0rWF1d&l@Gl zpC{4|O2bJ}QK1WDB{qwD)?wi3smFd68gT)G_V@9QlCR$0bR`DIPc6OGZVy3L*AsOL zPq4EffpEWISY&@|tHVTX)!T(N{37rTHEyH@bc;F^ttnF|NmI~3h-tv1BJ!I$gPPff z>8tlbAZiKOD)rk3|FOO7I&Fp>>x?(6kDQ{bRU5OF{@9*{WG38J`jHfL%oCrYyyLsb zQCjac*`m$xSnB3+Xo&_<;M3<-k>-DKzwi=9!Am;wyZ56#Fb>r_j!S?|K_5S-F5(wZ zs<2X*lC=Xfz-`UtG&N4L@5c6MU$K4YVqELKk6#dp3ET4CNmv1?I`2DF-t%U9L|N1( zo*Gt>%8GZe=na%(xX_sxop3>{j4tU{*fNP33Y_W(t}H~Qo6Zcn%*pt~jzYW~SB%WIEx7nb z#fP5xd_}rC1Si-eQPPstZKZym;xk5zl2&KBKebwpzEtaOC%NmFD9%OLX87f?N56C? zDS}}94CEt{R)l~(%}_S<@^omZ6Gcq(-*lOsqBLRcw8V2bc5%RzXyW1lU7*!~WSDi$ zh-ebq%>^gUY{asAQ7e;*OWLD|?dKBP;abohvx<_M$B>mavT#ANAg>++xVi{m^}L^Z&w_>+lh#(25xZGw zcnV%lp)`t>xpMjFvfO=gYl{v^Z_jp^_hfIZrody^!5fX!bd8ZATz6kGUp787effJlS*BPn6j=+)y~TaYlX>BZeZEG{X2TP{oy9>k zNYNBwZeGOvnVAp!NnWtqAf=V09NcyunqF?MT`uSOe6}~-HgVLV_?@^0FLc>`qUM8v ztd`$v?%Z!-DI03rrItQZB?AMR&eWy;!%b0{XMA0Z9AG$abDAeYWo3X{RxfE-c8r=V zW4nO@KG&?IjMOKF!GR5yDQ_bA1SUsC`H?bu4ma*!HcNwa$`J$a((k)~0;IEK17m+tNCz??HQ8{D;p-x8{`f zlN(HJ!C~$>UL?J%_IXLOne%~X{w0k;+%Np!g0cu+S_w{|yt-{+dw5+aZ-+-DKVw=` z%6%_?N#Dq2&k>TmAWAT(rcg0OSDZ4fFJ>$!F{^+qo5^1%*2g%EJO^=CPOndnzE;9z1+HbOt^bl zQ=hH-0!S8ShlV_WS2tzG6r)L**T&jdTasXJo+({-jD75zY+8RczIL9~i)b@z zd5BwoQi&~5rW*pM;w%T({bj8ErYBi!>K7i8R zw8XW2bqOhqB*1+uuxn^8C~INoyo<tZH#3tb(D|u%{&6!}2DXz+9-jB^v`^NdVt)H^)(01gDY}1ZU zH2+QR7y*Y z2T3jCVg4NN;_}?I({!m8hTLcBpzRUp7;CQ`F!en-Y$i$yvYcD(U5*Qn zKgYMNu?y|IyZK7kb|6+QF{i~|Vl$Nm%6oeaN6^uA^hvemu%%*68fTf*Eb>&ABGjCQ zK6gn-ao!z28h)exD-$EEeoeJXKk9zBafZgB*2K)-cjzH=%HaCs&CWS8{rh?lb-|;% z)pU8#G8lVt$`MP!SV~}VaobLC7rQgNM9BZSa)D}1!crpDSX>Q5y5bq4V(;huJ1ZX?BItx{n@E5JfFx)xxcUspM2<1sr}88bkx3s|W) z-Fc~~aeOk=GJZNud=<`3A1*ZKD3FcBY|Zk$B<`A6`FPBQt9srvJ~BA)HBLyQeyHfO zSu3UXUSxt?^z@FrQ^oe%O>Dt3#h1=E7(}Iz-lPhX)+lKr2~V{+6}$2f)A>-bGS*i` zd5F4=Jp}zf5q%4gTL!z#4W8MwU|)9Fea9hcz4KN++K3;^>t4-D;jC-^dB>lQE1K*4 z*LGs<=6o>G+fdnGZDQoHa)>^Y`jFejBGyy|gj%@yD9g4u7yLw!#=LE*)Fwv?!bV5^ zCaLpk`+4*Dv|7r@^MxQUa}C)sB{~7lRr3vST)DEjrWfj+$Li%sc|Zo*erEJH?OQ>Z z0VF1DDT;EtKzB@6DQGExKPbwebHMKijwp>7ScJ;i4}!z(lZFRAAK#==5Cl+BJP~$? zT#9LBMMWu3fyEp=5b&=d@=-Tt4r|qzF9hjzsWwm5k8hhv5a{i@`gg{3&e+;9SEBj` zIL_+B5TvrIe3(vd+ zek5c=`OS)|PQWFUw#}1Xh_mkD#{-`4XrMwoq3!B@PG>S0+83PS&4hKO^=L&;oG8qW zZLl@<^UL_?n#*gO|KGN{v%L2Z3f^{9(8Q=1`mn{cR z;xafke7T1OBIV=mu;k+6%L!VK3_;Wy@C^uO1My1(bH6;~EzCy;u;mMc=Yt-Xyv?2~ z4&6{A(QF!f#5|U~rZOu)lx1UyiwC#5`Nw{H{Jbp`n}h35yQugrO!|j&g#bs}+;q>p zU5IM-J)&}u*_*cH!HKOwe)1fefc2j5*F)Dl{ zNA!#B4P>U)(&KVn&AA8h1v@yq#Ao?w@_+Td5&P@E1vShr1_rviO(}5#IP24rTtI@X z!u)9o+)&EOg!oVNWTKo%o!CVCR&dog^3rQM6bjN&vBrA|@}nVRz0&b9`MY8nxGL&D z;Zvh%%D+$-=;P2LyYD;YO;Ypuc`~1qq&NuHMX^3hnF+^CWJb6pP3HBl#4(4;e6Y5} zK6aeKa^x)-_!AFHMFOOzBa*nVdcpb{lcPVZ>h)s;Se|$~PHPA}0v{;Kef>?9>Sw%E z4?u%$lHIwoEVGR}6*)U;HzUmL%LF)6U@%2Bl`xvQ0~d$L$%2-XclVm?Rmrs}ot$)} zA8Y^dxW%pV^Z$nwz`Vq*4Y*OFIHyqUgRqhWB?&1#R_b|fC+1^}+j?crnc|iSKJr?F zO!qZ0CL{uL!86NMD!nfn;ZM?OiTm#qI?S+MmAhg-)PV33>B&8D9rh>vul<)IE_lXy zy~Me>P(1l}k@z#-Y$SSYY8Z~d0~%dHPBiFD9pHOugBGB$x`p2~2#rWs^7iF#oLrmdlR!RU)y0p)7k_L<*mDD>&jHxi$N!j@BdPOC|*i#&c+e-F($-|2^||AaS0-|x18gw z1Bf1*J67I(>TCK3`Kl|seK%pQFd|ixNNF-+#V9u9I-K@&dTlk+4T`}WPj5Yb;u|e7 zSTs|utn7p-U^#_UPJ+f{_GarW?AQT4RJ&V9X)I2eu9wJ8~zZ5=zFxbLZj zV2TG_XQ}6ck?7SA-?O8Xc$%z{Y2w3CBbrOQ=#((DnnT9tLl^Asg=(+^sdl`GIXRd5 z?!^2#h`bb&K1W5}irW168Tdg5KWo(#-zDe|D0Xh*Zx;Jl8R;30ek#B>$hf-!+kk@f_~Ja1V>k+ zxyzpY)wkAxp5B7I-MF!%?gkw$b8@_%1}H|Riq2|VGzye#K|kyvQfe(uQMp-JX%&Ca-hZI%DhM)@Wg#H8oT(I$NZ^9sb<> zc)sSS09D8*-v0f-e(%IKV_nMOg&G%vZ{@*xr$6xIOr*m%J zfRUoH2g&DM{af5_r$_&7JR(Gx3U z78^2J;Co~3aJJ}i?Kgq8NY_tb(<-ubM5Syyc$;1!RvZ_lMEvp1S%r0@j@;Il#N{i| zD`|IcyfC9`z9gD7j)~9l@>cpCDjCaO^4rObpaLwpdtdE}_!apB`{ELZe7hA_5_W=2 zWrA}};r*&cf1yc0Qq#L~ssgA@&E6N%HKZkxrE~eJvZf!Gr@iYHkSlD_GKK3GnbL8$ zk(EAboR2INx|XfT+sO~UxvFkpM&#u5FgN!Omt$+h@5r5!+d<7D-DHf9Z?relpbd?O zS9PzRWZf-1Mb2@=MW&lkLtcl}RSt@6x!E!0=0GK6?b*4bKoYVPF?lnncsoJ)hxA6@ zvr&b&X|kOQVI2E@-DNH89LhJ9OC8wI#Sa2MAh)^2>w!z}vv;`DKl{F~d=11~E@W!< zXZs8wy2+f_eZ2{>_rQUtvM5YeThx!87Z$&mT&1Qh%oRgU_X&AJ?i9=pKEq|&XzW^( zzr(jG#AvLWcRZbh$H>?ZSA4^WZ*HDF1n!8@x9ve2%giJkymZ?&JsbwRDp{2G#g>wK z))l;lik9`tgG^esFpZ4$+A5oNP}8d<>YujE%^Mb5O*)51)DuTUNpU9MuIWw?7)&*~ z97!b?Vc~>gkz5)q{-pil_@0@T5vf%&+(T>A{ z(fYn@vJn|4%p5WStS0kt-1;sfw5X*fKQ|(rt5Z(%aKbLf5WZs+RwqyM-l=8LZ#R5l zQ2E3%7kVlvokOiLr|7>d_#w=niow)VVoMvTCPKq{RM7}Or zZH()VQ~iZ*1seBT+%hF4DBgTP9SOz-tdu zXYo#%o8yJ>b*wO2nM3WQI%^0@TGf4cH%jHWh%bSlpq1|HIAUFXb~H|Gb7*Q9Jr&H4 ztnaHnO8hMGmS{a2b)Os>f%{~0D~92 z%2-0fs8`hf0JsrEDoZWgcwo61P5zbe`ZHm)EImCvPktH#zQ(ArBs++@HB6`%y3m7O z|5$W@Pjs_V>i(z$;2LSnJKD4d@%D}{cD_|rO8KU^3Zp%<%dYe?~mEaZO zh`QlOAO3_h#3@YDwdQ-{O4TisLQNe@$(AgmrmmvwP<~*=Yu3waXpuNrMs`dABU4kB z_~JE>rQvBM3sIUeDLFZvoyHuESsGk?JgTwqsh}}y*^Mc`nKriBsH3~PyQQUU0j-`@ zZS|F1%|q|EAvZdw*rzj0Ox=8Hu&cVD_S(CkwIXAD$W4H;oJP0#D_7!iI1>Md74PytFawyU91A3g@(%Ycg?k;HeyM}Bt43(W7)u=L6y?%&en6jtRI+l4*L!Zc8P zkL+rM-XvRSVSlAE0Y-jllqQoA@wjI0>Yqo0#OZvIV4IOSEAQq(Mg=KErClu!G#b4&c zcKc;CL+gXgY>!qFvS3to(~{9RG5!~kF*t8X)_kL;cxS{7-{;;cvwA-Aa(yl_KWYQB z-r;(d3rlnN1F8UxH?D#pv#iL!L+%bM9fMw3zMjHdgll>$N35@XUx)42oUi+!ck#)o zC%vh-xT9s6(2E?6%6!bV99Cpo7wo=1Q?@wDY>n;yWbl}Kzy0fH(3N+#aI0U#$YsnN z6}4P|iO;uk&7v8l1cShQF;fY!myngm$ zjP031G!1@zwneHZgfj7oh>RjIaWXhQJ^EFl`JQgb18I45BFE^(|B(ug@=jv(ARYd@ z9|3;;YhVnmka*=7Xr%W1SOCo?Q;)`-Z}s>0x3D_O$sy?|k%XeR^xGkiS>oPo7~W_S zoPB6|M-Duz$jpS1VvfO8ozq9_+|1c(W2~^=4km2rS#l~u1BaAIO(;=JY;3^QvWEe| z^)Orai~m=uxzTo(Kjr5`+&kxkwO5F=gxEe(RyC=JpjAkr|zfOIJ-D4{gc4Ihu2N_rB+RID8Qt_TKBh_gd>(*R>XVPgM<0PhTx1%7(W3T-9?L@d`(S`W&fi zB7*3i8`MqIzrt;W{CiIw*H?=DbaEM|wzl@_>I&t4{j6m7YsYY7OusPT^$mWr-WQx^ zL`9>X^DS6%nHU^77@_Fac6L4+!5B5lsHx>1DW@1&GdGUe4ijT9I zZ>88*FTZ^Le4#cPfI}U*a=12_3nYY){;#igv+tzXI+;49h@CC1^;Fz^=)2!&LdZfv zaAm)I`CP8&?I@P)`9F4n1 z4Hp4v`6Y6l8~AxUvff_M;pXhhTYH2X>+gU{!o}sT-$@ig?3y>10g1T0184X< zyTT*vQ%?hh{9|KaA}Cx8FBAEX$+iAdu)kw2M%aJ8*FT!F|F+P0AOy8u-)^k7HpC~u z)CVit*}|8Ws!qEOI&|*50|94$7257;V*em5qPnZZTT_ab=Z3X2eDRw9nVw8LF_y7o zYT>3fE@0m%Do(F*>r2py0Q{mU!nJ3feN8xNiyZ~kSBp2b3b|BAyM;Mhpm38dz#qv8 zj0??FM>%I^%Uh<8{j$%ti#!o)HI&?ac_HHbf`-ad3C8di`g3ZF|p&f?MU+ zxq#{!I<}@09rAEO z<3Rbk*(>5;u4C}!tKJplFWmT!v}Nwf>N8)r)4Nyl^`>(3ZwppvAU>c2o1VHo-v%*A zaz{is8}oxKf4I&+@0fQXhjwY%hj;;aJi@Y9ukWq*$mly(I&!f0`?wr$?f>*651s)y-Q0>oYBbd z_%kwbk@^;MJ9y+(v7nM27V+%m{e{+m_Eegr8lyx6gHGax#o`fL-jKs=E|i1=2wo`P z*e6^u{lqLvHb{u=RPC91K3nHoDRiAxyj{>}#B@d_!4 zL`yC^b5iQp*XG9G`0@~0C3D{eZ{)bQ(;oY!B#FXqH;V=vMzL13|>FYVx>8882;`nLY z-zrN%$%H)xpHs7st6p6)Jl@~?>dJkn*zdTf1-?k}inK7&CyZ#{e>^-Y+*-bjd90<@ z%J|91eWx$9c$+dZ8h&(YEky`oFY3nX=3Gzm!7%b@M$*YRm#O2?)XGJQ%9@0-V zojVjBw%`Z|^g0q78=VzCPPx8u;8wPMfDu)`OOIRpBMe6f`{T^Z=PN^exTEZ=jsnl5 znRWZtrXr*7o{qb#wFgvny!(*UwPbdIj^cX;{GB9nsonFHuA836lszr4x^Cxuw;O)F z*z1bSl|6bRwpHU2J4R4HOZ)m zQ1U-Oe!4PS`9!sPx3w6dLDBvJRme@`Vg?Uw8RwIqtEGHmwQYv8PctVhY{Dr8$=Y)v=ge<(c*=u z=2rakM?w_O1qN{Hc>KSAc6zP2#ZlHzXo1R5M^2t7CjkI!05y*2EV z2sJaqdzOkAxC18H~zjew`oR>sN_Hd`vu@_3c%K$WrD_9!|l_(^LUf^dd*HQ`x8^H1d<+HsJ^>uNzF z3KioQ3u57JRMuL-vI=^{pCOvD{_9J3eWf3A-{gdv!5eZ7{x#xB^bX3+1Cw+y}bF9^4#kT?c&+PD}{XrLLE5CtXC!zU*iGabQg4WB;zg@=S`hPbBA? zT^7*esz2MB-+lT9(a9*_Pxv_FJ(#sG^sCX%i1zL-B-JAg2X98mMS?(|pp7@SWJqEZ zk?s)NDoxX0JKXs)3)cUXU1u=J`LyX%7)J)usrHFv9!e+>wA3VMdr7?_OTh3G=p?Xbgbk3nB(syk}-#9$lQffEF&wXc# zig)oEH065wf_|F9M#x<%TAXV;C{A!F6<^N0ID3$NJrnr@$-5W%qAe2ik~~lEw}<6z zgIOnbgP8WQpj&EFyK*cLUEBLHIiWa-C&QI@8*?{DBem*Zd&s|G)EEwKAB3Cbd8ILU z=deJC798|4k=9rOCtI|I?~ORi-+t?d2^3`|y|B$ja9qCYVaJ;N@EAvhgA5hb*Mffh zVccUjh((qc)|Kks3HEl#IEB74e0jgGqHv?bQ;$_9u_U# z!Wb^^b$1M^FEVt8{5ae~+OHu$;y%i&+&a^v1+y-`=(gkiOuZ^(@b{-q;o`$l#^0to zwDVJ&;jfK^`GN&6-Cxd*croLjoXILgjg7sUi|`7lhG#Vy5OsF!2UZWxVLmIy$v8P1 zn1Z>H;1MLe=sFJ9=m_Vpv4cCC#PTPn&3L%TS7Ih{3}zaK_rl;hZ_X=&px)Vx0t)Y1 zBdr-B_0kWYg=xFs5SE|Oywv{00D07ff$BTL8|wvOd~bUcgRRMD?C+N-uVAf3$Q#~c zSbS!O$o+3J2tEq^sGvrA@N56-AD?_2LZ*6TEv3Nx+2+4Fl6a z92i*?mOK+m$73%8s#zAdFr|e6<(ePlu}Jn)PNQ(>tO-Q*rFDH-t0&oOrwN0zC$yl2 zlKFVkLG||C7fV2Wk>F$(DioGJ-`~LvCE6L5X2cXwVVCUL@g+6%n2|9HKE@J!E|aS` zEe>PKBa!>Fh`9bs(J~9{^a;F&=PaJ&^9Oszoj)#G*fvys=yT?N(uqb4%(WEQl8$Jl zVf0qmw4elG)0LGBDX2%L59f8klwW@R39cF-J_%PGO0romoGHkmI`gch$2FXBaZ@cN zvV(s~_jylC^tH$Y|D1i00YaAEa}UD{uhS}UtPV*Pm4$|u6BFWU`I$QNAa#N@=Kd22 z+ym~y>D3I;1F4D!nEDX@J!PA&0vq3ttc8&7od`@thzi@1OX$<+;P(%iOH|y#a0wEM zobHP;7l`%;WrM}AOMu-ok{Fb=W$3fqcF|}0K~gr0S#_~1&PVY@km!*g!z3vuz86Y~ zf|St=vJf7^t-Mecq<(m09EShqd5O0TP>(_Y*I?j*5ciOkEIxIP9!?6`ns5kszE?;U zW-0*+MMFJ6&Zp44e{fj2^JcPb(-0_Xy9s`-Kv4^f4nRsflr%MWt~~w}$HK6Ks()(c zhDWfD@PFpQa~k+J!C1FHu?yn>)%(aV49BPy=&SG2e@pqdiVaza_y6@jo90;@f_#%C zsDFP6j%oo8hhO~XVVmX*i%{S<8Y~-HT3UcPZr52aGVA~-=-qwSeY}4g4e#qCIJxQX z@3)@CxI;e_3!1!H)T%u#R6;F<)zq3N@%M|ipDa- z($LV*?(Xi<#%PI`;GMUZk0+pz$YyhfJ8z3|?sV|Jwsqf`5m%P)ytg)W#+rKW}ys=L?HC5omeLyqu%MDNuUY`SjQcyJKIPqj5`kZQ_LLpLpoqp9x1(Y zQOv}-be*b;3+<7a{VYf%8JB*COUj))`xp~!U(3ogcm8Y;Ed)gvtLLF#Bkf5Myh$+f zBNJq2rgn08ICe`21z1(-BL?4*Kfj9l7J;@%E7V)#xPr%=y-1z=tmb2aF6d`qVN$$`TY_*INqA9L3DfKp84e< z#9X)a%NNk@L`kYzzb%kg6(e+jpxmL8f}%PQq?pZAJBP)nMK3WsOviG`76}TM6OUO7 zTqtNN0Z*b>cb>5Bu{8*4#QTlJWj~M!uEN32kYnhkf+3`$MZdE6&6Z73~A$3X2u|0^0VDJ8D(giup`r? z{q0V#CQ+-(%`8J*w!V%ZzloiwNR--DsV}be=1(}REb_K0xe|zFS2}BXgcpT;ONq9U z=qn}l44S{r!vNWsGDh^ht@x>_WnN-uhr8DQS|*&a{9Dck2^;e}!1ljQ@q0>cVKm$E zD^DguP@wjZetV+s^x)>qubEF|GQQp6Er z_vRexTkz{>_Ihoo>=!7=XjVI&=KQE0c=+tE`oo!Xaq_VO6!@ZLG_o=7#$flH#@3wX zJ$Wy(6ZWNYJ#Q%V@`$Fjn*FBk-Xi_0L3)Uv(o1O)LGb>NHVIkAWxI2ca8e<%%BtRz z`78>RDpGkd6x(xyePrAw#6*T#`z5dP2Yv185(`@1Gb$=zIGKbbYVB~|rmV2!qd!9I z$4z0uhfiI@*d6@y*OGEEjQs) zC0~*dde*KIEN2#i_~N|H$~rx{j^i)W`1-vlSD%J)1<-#xwMS8^2fAccZz@-BdS}jV z+BBy;eQvPryxkbse?nAcQ9cqVAYmUGl|J)7h;)}}8W5x_?DBzCVXY6G0a zjr~k|j;W_0I@xNS;+?_lGL!XdYf>H4U?tMvJXWxd(Z-Vd)P_#zqI~SSSzXFQvsXRB zjuEcCX^GQUHAl~WoQXItryvY3&fdIYk{pYh8XLLkp$yNBOcNJ5Y_thPb}q)18|Ln6 zo>{N&Zo^HI4Hz3>1Tep@mJWg{WK|>B_jvhBvS6ikKa}-8|a$ zxK=K{4w61u;>#6H+Oeelx=&M;N+#_z0YPk2o3%^l^;AG z>H8qWOez(U{*fojW4!_c-%lE$k=%5G-eZ;`3b-53G0c`mcFj8*xP$6OY7F|?b6tO( zB!9oW#M7T5@~aAHTDlt^f`M=LZbGK1L$PR~GP7wLc-`;8BM)MD4ry0g$NZ-GNn{L% z;J4FsjOY+AGKbC0`94WT!U7q06*NZM?hCw}(4OhA%+$`7o9bU~gg7!bA+nRSGsx|y zOxG5{qKR0hi(a)BwkpR%_=KXp9t_r~(05XMpA-@IdF>XLdSo-MoF6^uNxRUMY3@}< z^e$tcO>MS>7~tZ5zy3Km>_UE*az~vF;VPamc6!jbrjKGEDn1q>o^Iz(7XRJh{E)xUyt!<`_i{Lt`?;F`l{ej3&)oc~eM?H>|h!=PM|B`^tMvSUOZW-v=XW zl8&jAd4Z=1oeX-X%`Eq9D>8f^tOHd&IV8{d9z%Hj^XP^jxk)ET8_~sibFtcoq1HfQ z3U7b?tQwn#5N+TSA1|K}Fgp8WX7hDeE|bTOQYqeYDpf$^NXv<5?KS)d&)ZLsz2IMv zF3RbYF-I<;cM^VVF*$r?*YFC6Dz&_V6sELQ=9(*dp+r4Lkv02+II^3H&YbB01 z7vpFvD=WC?{X#PD-9$V-14VT~vM~kmwmxVZ#;@~c)v)(9h`jHVniDcY1hL)t&_^M3 zSaVY2h-JIZ48z;ntTG6p%9Sj~{}l&M*0(w>&l-(yP8W8yK2RX z+dOG3&EI_4IE)>CyIRl42z9V|cXRQ!4>YyFvQCZ-xl1vd`BFb#VH~gUB*HlI{LVew ztmNaOJ9UrVJRjKj@jwrq=*toU_h7PJP6E`~dH0`HQVl87Sjt;(Do@ge)FKPWmiMDW z(?&gv8IGalsgBbhXf-p0PSV{nKIX`*!FcvJit4WyV^r=y9)G~pWP+lvKuH598MRm! zgV9B|BsUhOarvMg{4=b3Pj(%YnaWU7+ zgE+kQN4-~tq`g~aWC|a93YlinQFNaD@j7A=$|MSXxqeVJau;H63*S$CR)hxA9ru~G z!02l>SpIz2Y4f0e)j7GR@=~6ec9V~od_no3{*2ANzr(fLz zLU!Gkw+r2ut2OG3^u4z0TV&%^`)TLcoQkhDWkn1HYUx+4argI@{J#XM@u-2}ANt~N+eM*BF>x+7 z*=JFc&)#H0630$|@K0Cw-$ZsUE=R;@+r0_k7mTfb{cXW;_PFktsj(w@{;K5aCQ8xP zLNc){8vG{e{3KrFyl4($ck@HiDP0M9k#Ti%&9TmW6EKr#!r()O0})Su%eRQCs|p69 zJ3p%H2pX6m_-)t2Q^v$}lmsijQgTBmjtzdlkV{ZaY>-)SU`eDoK*YNQomY4;7Mv%t z{*E!laqQBhfj>|OQ|_f8$H?IiQB-kXJRxIz>Rz!bM^9MwWiIAHHum2A3z*0q&k7=i1Sdke`#RyD9u*@%mH;i4{xe)|Z1czpptF?-Ykn z8)5!x(L@fKpsLE#;l7wo*@I5-@vHS+bxHm7toluX>%+WE?Rvd?PZxSENNhPxsoJo0}VN zq94<$3TcW75`KPN<>@GsVc&kR(q?8ZD=H{%?^bkRR?9Q>z#&Uu&xRV*Lqdk_j!i5y zLjEf2_>_A`No?$qn6?fJ=__XC3W=eHezK~klWTjr4l&3=DysnGM1E#ku`E=oB8_3; zjbqh#=iHzf?DBlU(ID$Vhtb~Npvu(buH!u0n~m2OoyL4a)ltdh+m=v+BmUan+9^dL zHBp^k?`68Di#L|;lP8ObPfbq+ry-g<0?Wda3yu@1BnPX%8pkgzAAQd4a7(BpfO#Tf zp9y%gf}YA*3cBJ(H%_053cH#ZC8gG%eOf_?ifLSwX0^x5KrJg$D;4WI$GdkE2S=Jc zjo=oLvb=76D|D@|d619X2bqx)(kx36XCwL7(xpb<>DNw^it5hUl7HU9^Mm~PDrC9& zi+KaB_2_HGFW9}SjQ!YTLg*Lv=k$B?)?4LXIT$yltQi-Ms8H?9oK;wk$7%<`Q z`r?Jf#luxY13cVE^2Pgo5JUK9)2_30-Z>Apxa%+X+rq(iHG9y$dQ$>SVy*sVsK-w* z7MlT(6kk|m^Wv=B-Hq8@&1*5*Sf+8tot)X!w{^K}HNd5t^5ezfA^aWSSLa87@5RxP z4&Qu!c4bJ97S(EkpNTE7=bLOgjy-n-zuA6wrN#ZKJHWwe zt3SHoe8HJ4x?WdDqq78F2ALU-i4c#={U6*9q?R3oyQ0#)j>m_Fh~0kU%b7dyj|ia= zLx&V+)Kmw+%jLBWeOOI~vvjbJ$PC{+M%j<_xm?)X-29m=2uK9yBhT&DelO#};;k0~ z)yeIqo}I0vL*97YT%AZVb-gMPwD!`-Orn$CMG%}f<4el+rpafcV_-;L9jZ@Xp zz5{G$kw$^OyH9*2w6eTB<8?CqBc3}lA|e8TxQ~xt|Jdp4@}WrX=nGGqV9cu%plj_* z_xOYPEx@RjieRFWGfm$xNztnQ#9j_Z``gour3K`U|IhCe1PT9YHX85fd&6t+Zu_n= zSrAQ0s7iFqXoR7=Jdo+IizoO&!l zH!Op90x$JZ{#>?hob^`Q$cbo)Yx{XT?2D(%r%$!y3MFUP2Kn4?w%_0gPsI-yY8GQt zZ0w>yWGIZ_3%GXxDQ7aiLmKlEN`xYf$J@&@1%|tr#f7{M zT;hFKrz78E7Rg6#Ce98OGS5ywTXI14NJ`%8*S{RS&a~^nS*aP7qp<6}hr2}@0^C4j zQz{7~IP5M0Av-afIfo8f6Sm6&rM*PnTsH7d#zz7L@Aq#nefHMN|JddRboh0KFPxd7?1Ur<|1uG%9<5@ zsiCPnU-tbJ2_w@c*0c2jmO+Q$-u1T2wRMD zv2b%c_cPKfNP-xP6K3nCRD0ye{ME_k+IN?bb55#2-Gr^3DcdV1@%Q8zjrJFj9JO;j zvs2aLuE?pZY@eR$b!io=L6P|aOUte6E6!Yr(?HHc0xU`zaCOy}2^u6TxrKXa%zMw9 zul)6rg2geLGwx}Dwybg=&1xPERZ+FqJxyM$QrI7TVR_N%F+Z&Dc+y-j&9VIB5o|wg z%cecxGwO>*!}wh9(TXAqPMbt8I1yH-(yR$MqBSqlEZ}N}7xJd|O`uJF9}=c;TV7dLM`Egt0umId zC_{`G8wZ|vZJ=a|Vxhe$e7^JQScygQm*KZV{KL9-EL+BrP3nXS+p)SplZH6C3fn4- zE5WVQ%VW7$^3bF;rlWe5?j!!T! zQ@!*Ihsh@X6_#P}yk|+Vs>jO^XDe{PmXchq_US>)#>oDTf0YTE9ehs>JZ}EI5_rko z#lBX})#|u)@Cf?Dah)K;3s8s;N9GRsRgY!k4NF>`zjt4@=O}~cSSX#bSQBa)2n4!9{x%WtAx{HkLpu&b*X@C3~1y$WKW#QYS z$q{K}su{;2+cH^L{uL6K5ZxT;{c#1)52GA=#M7P{H|88ynM;84tRd6Jit)qD=p!hV zRqIrN@VgBcKb`P5p4%KYn&+gbFHnx}{)*wGH|U@=lEluqCey=)&QNdsN>*-wEs1h= z_m0=U46UC{XIa2`=56N^HDUW=(kp4q#esB|StU8X*5l&xA|1>bec&_LB#tB=dOlk^bcpl0Ab*r26<->QHzCgl|;Q4mc(71IGVfGpmd;@8^!OrR-$bHD_m?+=a(J9ex zFBdTF%6WHoXtkeU;6^;b=C{8=+B-Dx_YB8I0X>sAj;7JFvLQjG5Lc4q2&R~6VY=YM{@ ztKxY{+OcyrT!-pW_dTD)HiP65R4)x%#V%`9G}ZIKx_#k!0cIIv*Q?Lh((h-J!vi*1 zKF_5bajjzUL0!gucx~b#UY5dw1Lt=-CO;Nlf2v(I(nC0(9{D2GJRB84onp@XiBUp( zly)z+sO}*+X750n7okw9p&lnsT*>lQSpMdS3r(@}U`bjj({nH_g*ft&@OH^@7?5T}7Q3kknB+v9b-niiG-w0f*!J zdyW#`yhWBW#p^sHbE6ngc}eeuwhl$^Gr_a<8s_NX?q>}h`+)B%+QM68tOvZ(h&$=? zxl|%Z5)K>#bjJl;!yvjTN zP>Or%Hy$<2^u=6J@X<$ zz@A@`s1xMwDdAi*+$7vKY@#~3k~#shICCQl5*dAM*q>iduymru2K}br^)Pe_W^!23 zX3Dvkx?MD}N9%?f+h}9&!-U*ZY|8W(=3BWkPOM62TalXwI4Ry@ zUU1L8!v#_~-R5DNujyNu!daqYL7V7v&nN7%$}h3CzO9^$J;a=An;Iw`VRxdIA#zud zoEh@&Bv06+Hd#1Q=5)wWaq6Y;oZ`OVkcdfeK zN_fKPmS@$u1I_I<+8YpkOg&grXpyU|-us*P1isQ)M#+rajkX|cU#_g8x%&czI;trr zQ#RgidQ>>7j%t^K#GL*Cq_aEx%ECS?@{UEQYbf&!152gL^Oc4n)BwSAlGww5Qy)7< zV}|oEi{6Kc`a6PlSqJBRv-&7jjrlV`;!g(>f6^9VE)6pg3hTCdTMe?jq{kDlElGre z4@maAYAFx^MP;4BPs96t`6JJehX=+V{ zn-imQ6lh=~P_llLMhB5A5Dlkuc2hH61G?~VcW9K+kw5YQ`IkJZkkWd&W*{2jw^b?Q zeIC9zrhMj-7#Uc;@1rwe9UIX9Qct4^>M$bGYTN^Q?DP9Hg)PIz^ zK&We}EUuoX$=nk$E`9g0dE zU!>76lpkKsT&%XHafSqWa-Hj6$Ump=KMw6pHMCG-&@&9F?$b`2XR7ed2i`nYqpVI^ z@Xczp@N9U5)Z;~Ir*`D$0elbWF4HJeQR!E|Q}=!*?XSqRpj0#Wdv*>s8QFbCGP47s zIp!vtUBi3)=Y|TVMDu%xr^Dstwr|oW@(i1V%?JK*v zzr5^1wCz1ElANDgk20y6%~2X(%qGDWeqya`IUYSV@C4hLHe<9044e_R?|JPB zA68eiS55A>R!y3wjL4@09#sKK^x4Ty-4G}%tI(i;{7jjCupG`mcn2cB5}xwA%h&~Q zMFxe9y_p}1@9ycb#SXl{XvXzYh|&C5F-v*gJobIR@T1`Dhz5=7&k*NR=TKyYS+(od zPA^xCW;$Ci(!X-^$){Rv|Gd0R-+`O;p8^fA-l-0-psjwrHx+X6VyE6vFVfX(8C~Z? zctnI{k>6ZkT{d|51OCiqBoVWBdfdrnd$RgOK3YC6aQlvV2~~VTrR;f~KiwZW4 z=py(Xm#lQuC-v_l4!grI0a;YF=n?SbGJ|~E9xoJtqFrs-l>rnD*k>}$j7^#s)+^5Q z_`1`YsKe2~2GD@UJ%0T<_G*9VcF)Fw^eWV35uX0Lfg#wc?z+=?m8CUq*K2fA^Y#d;!9RD!2bkRQxd3nMZrp`D zKX;UnGi`(^Q{Nuh4Eq!1Y|G&s%;9GCXFI@!Pj`*~T=>wH0Q2yqz66hk2M8uQ!2!y< z2>(ZAk0`nesLWTNV^5CzNcMS1|EJq#YT{Fk26r8wk?8T>Mcn6) z;c;-rdU8}a-|mAEZyvU29W zV}-SO#yd0RK8&rKO}1`@8XpHudyDi%2jwZ?sP~Q$oOZ+P%e2i5DJOQjhol+VNXtl} zQ1b1%gxJV=4AxAl4C0MlD;fxdPe)z!FW-i5Rv{DW-ha@Uk5s)M8Xd_SEltuYtRMQg z6fGJJu(JWiNq^ts;jkHZVbX_UcD0920WojCH>t-^CGfOwQdQH0{#RDZTB$+CHp05~ zzJWrp`YjdiUk2wsiwn0gDV=bc%N6`t}qxpaSIUC&;OAoQU!R8`{hF%yvcH|;1M3l34gCVW$@0<22DSDXZ1XuEaAFLRw z742E4)U8GZ2($$ZUotDcdI-)ntuIRqltlkbn>6Jak}@E+ic_-dgwYa)x|O5C^ky zmbE!Uf?PxAy*N_wYTuYHFyx79>B;HYNe#;IiI#8ngNy(uIwxKy!F8oCU;Ly=d1g1eC(5R7oaLZc4O)tykQHV!c*9ktR7#xBpUJD1 z&^o#l?)2)_0j3Kx;dVkL?>AmTKgw(leElrCS2TJD=)!btTg|Ve^(O<6O;qqtMDr64 zYts73KBUydte}SohM+HMs}^-S;2^tNpcm3_MvWKnMwv4pkOwd+R7u5wfUA2ujCVkP zHuE_s@%`g1lAyX8uaIj{UI(Ysr&vtCbUzzn?o?0gr-)KMW!z_v)jFP2ur4e;b|zud zYAF0D5e@$z)yBgx;|v`HAZh4_@*P|Q5V<$o!x=H&fg@V6{wivJW|2`pOxcxuIu$29 zY+O?&(=4kz%vmS7eqoC`4H@g;&4m4Rzll1~a<%LSp`uSB%`ojFH-u9_y(WlNtP%{F zu6l0|#LZDCGEBXGV{){V^hWV{g@s{n_Gao^1wie3mc{)Q9rrdf#mZQpeqO%t^e6ZB zm%&~>6f{H-=Mu^X%QAc1t2+HARMQ&z7)O@b?cUkxw>atM1Pjm_gG^W0<4?JFquUl} zi#H!W$_md;+YQQPwGazq93}u$uaiRC{4u}1eZ7C@bt6e9Mp>%}tl#A%OC0QPFK#-& z3a;OKbe#GqNA4Ry9(f(s7f0F*+5^8GoXwj^NIF{fCIOFi-|tc|I^TxsoH-_I!M$|uFTD32^!mVh4zLCoUPkyHvI|`s1lfq2JanYC>5H#ae$yoma@jY zo(e!uHU^FJ?J5O|7fgYPiisDoZ621@h(z&vV$0XBwPQ8ydFmgQWl%5D_e?&F{VCsX z7IzXXAZ$jPJ{8=DXM-)orbrhda5hjyXfNK+1U8AGB42P|5*N$vvhH?k1wf?*Hg20X z9X;kqS0s{)XeGGv<{bIeFQo|>?T-R&1LXAtYo05&4~hOrd8Om3rV(d;17Q~Q-?%#< zpRB7$WoaQRSuIu@K^GU!f(5zjsBO7vUM&A6#2LuXK%z%40n$fb{yj**>_rc?A9E0z zX7Ybv?D)KicjH3Je6|_U35^2#jyg6JyTt9m9ueQrOg{nJ9^*(jU`TzA0O(;uhty|M zg#Lq)Nc{&k1fTT(K~{L%iT~uoX{AQp5k{k1fc5G5+ebGC#hwywwB3Q2_J*U~CbGVK zOhCF0z4a|$Qh%3hJOc{{>RI!*NLm6Qdu|XyT9>F3 z-fu`WunEvb=4;L?d;#A@3?adJ`Zuk5R=tGJU-t6ZHoo`YSYb1;>Wwa4b`}oM>b?WH z`;!6Tzt*A+u^NADHchUYXhP+^WeS%?x3ZL@ujTFsN*IKspqhT2E}un#Wq-?3G9x5x zn>AjZqo7Y7(2{|DTaTVK37*SxKU*7y>B0JeJ4eIA2Sf$*@9{uk(ae#rN%v=!zX6rx z#kxlyZk`E_ zTGi1du6HETbJ=e{aYM05Vt$b5$&i0{MV9=(L1-X%bnsj#zKmJBfHkOOH`If*D)SWX z@}6e}y;HV=L3noZqFoeyx<~O^TKl~|i#GIePf4|L^J)jG4@v#gGz~6o_Z6YvRnKpt z@=w10i=9g!gnhX%LU%jsoDUw_A&6WOo!^6LLr% zODk2W^D&ziNIT>+Cs*q@Lsl2$YcO(vT21CF?cU{I)0TaaL_|i7O!7Ml{DAxeM8+3V zgp=XBlQCIhC6Sk(K9oPUQJa&l?dC@iznf^Psas`{3v|=MHS01Y)0`KFYw|%}Hb>um z##LOp+7JBg@C=CcT}ExY-C?-khw~Y>VyEYCQW*Wg!5Jp6WX!o3mpw?4!z_$R zMjFxpvMAi?=Ty|{`fwa7V>r_z;)Bo-I-#^=Z2Glg#L%j+k|s?EDL|;pXhae3F9#1@ zIi>hZqd*{K4p>=kR;#DiHYZ;iZ|b5qD#X164DMH=@c>;QbfA`=f;~~4ya^<^Z~6TX zVD8GUco6um>KC*VrQRY{CumL2zFTnmnUiu7H-Jm@qB%9^AIj}gCY(c(Rsp!wjBJN# zpFR&j&il!zimI_kO2rM@I7_@fRtm{6wOG<*G+n%uw6mY*;%;|!S}L=p z*ta-a5xm5EU_%GvbxyNzKD2^4qc{0`PVI*)_HOPzZlZo9hdC!-G~> zBYTJEfox@2VCcauxVn>N2-O5s6Wl`}YWsLzQ9wmHqxO?b*4N%+~};3?PmnNUmfYJgnG2r2nDbL&~&04Xvt7F>HCz)47;bMFHXHH&vQaat<{31gQxf zVu`Ds-$;1)^nNek<;QvWqm_qwDNc0i3O;&b6iooCo{7mE)|kf>QEM~a_cm9jmQ)T% zC$n*|X<`JV@0H5qH9-1O)OvB4 zP5JL|%fbf+z}B4T{{-6y&ysdmO1^MKz;DxL7RipzZ_vEaORIbDn(lb88P}4A<38*q z-vrw%iW%>nE9{~oVf%&Un^McW8@x{GAGR&JFrRk$=#_Fq2MmCVHg`xP+;6S@HZN;f ze(NPEFU(x)ddwUA8`KIg@N8#Y#bP+QmdO^0LLE(~C3U|q^(j7cPgmn1^gOl>`nWJv zV&D@iS}lTL_z;}XN5i+2S;?VajsG1L8V58}{vEaL)8Nv<>M`QzDtK7=0{;SBN6C@t zN&HJ&t)Ed93QaJmu0G}X9=+D~DjV;>fpi29Z|oqT*LR);>WzpQbQv)J4|P@#FkiUGkwJWDw+D(;9Z#D<8Qj)cw$ z*K7b`q>U>+J)IeV&McoQgCd0Sr-(`w5)6wy}41M$m=>8N43P4M6N6gcBoirVsXucjM zCg|`aDYoBpyFHXr(=?0UnZb@>JUR$E?|W!30H|TWrbmJE`hiUX&V`l%;H!bjqRIN{ zbt-<5O0=8xepUeGR{HHa2Jb{|fYfAooueUFZ!b zj<<`u&t09XU)I;^R*rmf@?L=vYQR#_Z5Uz=P=BD-s9vl9nF!4tVN|tZf7Wrj+Qw~? zpYmw=t=<91^I=%w59}B#Z4F?Pd?HC#$9{@>D;Q*vJ_sz$!{TPEm5o8f#x#kdrAi`y3SzW^1>F3Xd7Vgby5@(4hB zJFb8Q-X7t9kRGo+Y?a+zwTzgeNwFCgai=p!Cfc8H>!)H7T4DyXwnx3W;=Af6dBw67EiqwkDPzn zfGMz+ALu#yW z{6KcfI$=z*yLDz=Jm|pJxv@!7VJKTrP#B79p8hS?w{TR1#7W1#;)j}O!B3n*W_P+Fr$M*oNu?hq?f$Q~mJj^*HZP|9~Y^q7p^shH45_Qi45Cc8wLy<(IZ zG1*2=Q~ySZw|RgWUYMg-q^&Wg26~xx%GsMgoH*gE{i7B=@4L-nN>N>GsN*Bqdr#@? zB4Dk#>LlwPmYA0DrW2hQ9MXf=!ifOY0hX-xk%ZD@p_)X+sSsl>r00kh^$!&W7&vbX zufz2)DIQtthjOQvMQCw>3XfU>J0e(%BtC7085b(RGaR1`lS8ZX+fB3BFMpb5RjYzb zi1I9$X^JtGE>_@xx(2WS3!>}b=I7=@I>aJ~t#h1O_w{H+0Ay~D2mGlG@F!++ zLb+1+d<_*0hVb^sM&o9dFtCF796rrtY+H$r8t&J*r`E>sZr~ZiHBYGTa8=TueJIz# zV4dLl_IXKmiFcr0HDOmSURP3sOg%`CqF*v4mwRdaW1gwfiDbMU=8<1%)>KD>Vb~*= zKTYI5Gl5l~u3rF`r&}AQ!wm4VS14-_Q#R-2ETiM?%w_nY? zm^=^(v{T_@gI#^F2DK>m(w{^7>r!o-tSnbKG|ZUH7ppbWGv0psE$*H<-*j2eyZ5R4 zndF@Q^5S2sEa?Er{fE@b`E^Netpu#KFFcxJuAmmG^qSpMEU!#(9qCD1v-0@WP_{HV zH&2mml*MBk5v<}{Ser?gb>qnc41>haCkqlP3M6=o^(i*NvQ-T^ZyJjJ4N60DAP?uS zmz;KTa?%u$)>@d5#9X|aprf79vmkxX|ItsmEOgYt-F$!8DT6`jZcO?nubTr*wG2?d z|Ikcg7gFF2b(ZT2<7u7prVKr1%6&-t{}5rhTI>Fe;(qnnypSz@{K4Utqc^~K)y?S! zr%UrhYrBsDNnY5UR`(|*F63{2huGDY;Z_ax)p`QLLe;!wsB(xyy~?;(};RoJTl|P%P7kwIJ5C@t6Kp;rrv);CUKLjA8Z11 zkqN^by&IZ-zzD|Q&7>7nOaB+;1*G4}*p?0w-rjK~{W4b#&cDW@RUyxBdH6rqmw-ay zjHV31@qfmbxEgEzD+AnDHU|BRjk@ar>aHK

      7`ai2{gU~# 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≈&YVE9bpalitsPU~9 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∨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�obV&PZol)G&58UdRL*ARrfgVJG? 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%0DIf4POtL4u_D$~6!)C|vn+Omq8RHhe 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

      Rbb`K3%n(oy!j34QQ7|& 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 Q`SO|G>+`ZS`k&taH>^@zasU7T literal 0 HcmV?d00001 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/.cproject b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.cproject similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/.cproject rename to CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.cproject diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/.mxproject b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.mxproject similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/.mxproject rename to CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.mxproject diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/.project b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.project similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/.project rename to CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.project diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/.settings/language.settings.xml b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.settings/language.settings.xml similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/.settings/language.settings.xml rename to CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.settings/language.settings.xml diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.settings/org.eclipse.core.resources.prefs b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/.settings/stm32cubeide.project.prefs b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.settings/stm32cubeide.project.prefs similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/.settings/stm32cubeide.project.prefs rename to CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/.settings/stm32cubeide.project.prefs diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/gpio.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/gpio.h new file mode 100644 index 0000000..75080c3 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/gpio.h @@ -0,0 +1,49 @@ +/** + ****************************************************************************** + * @file gpio.h + * @brief This file contains all the function prototypes for + * the gpio.c file + ****************************************************************************** + * @attention + * + *

      © Copyright (c) 2024 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 __GPIO_H__ +#define __GPIO_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "main.h" + +/* USER CODE BEGIN Includes */ + +/* USER CODE END Includes */ + +/* USER CODE BEGIN Private defines */ + +/* USER CODE END Private defines */ + +void MX_GPIO_Init(void); + +/* USER CODE BEGIN Prototypes */ + +/* USER CODE END Prototypes */ + +#ifdef __cplusplus +} +#endif +#endif /*__ GPIO_H__ */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/main.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/main.h new file mode 100644 index 0000000..a29cc56 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/main.h @@ -0,0 +1,79 @@ +/* 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) 2024 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 -----------------------------------------------------------*/ +#define KEY0_Pin GPIO_PIN_5 +#define KEY0_GPIO_Port GPIOC +#define LED0_Pin GPIO_PIN_8 +#define LED0_GPIO_Port GPIOA +#define KEY1_Pin GPIO_PIN_15 +#define KEY1_GPIO_Port GPIOA +#define LED1_Pin GPIO_PIN_2 +#define LED1_GPIO_Port GPIOD +/* USER CODE BEGIN Private defines */ + +/* USER CODE END Private defines */ + +#ifdef __cplusplus +} +#endif + +#endif /* __MAIN_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Inc/stm32f1xx_hal_conf.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/stm32f1xx_hal_conf.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Inc/stm32f1xx_hal_conf.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/stm32f1xx_hal_conf.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/stm32f1xx_it.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/stm32f1xx_it.h new file mode 100644 index 0000000..d011a0b --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/stm32f1xx_it.h @@ -0,0 +1,69 @@ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file stm32f1xx_it.h + * @brief This file contains the headers of the interrupt handlers. + ****************************************************************************** + * @attention + * + *

      © Copyright (c) 2024 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); +/* USER CODE BEGIN EFP */ + +/* USER CODE END EFP */ + +#ifdef __cplusplus +} +#endif + +#endif /* __STM32F1xx_IT_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Inc/usart.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/usart.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Inc/usart.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Inc/usart.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/gpio.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/gpio.c new file mode 100644 index 0000000..cc93dc1 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/gpio.c @@ -0,0 +1,89 @@ +/** + ****************************************************************************** + * @file gpio.c + * @brief This file provides code for the configuration + * of all used GPIO pins. + ****************************************************************************** + * @attention + * + *

      © Copyright (c) 2024 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 "gpio.h" + +/* USER CODE BEGIN 0 */ + +/* USER CODE END 0 */ + +/*----------------------------------------------------------------------------*/ +/* Configure GPIO */ +/*----------------------------------------------------------------------------*/ +/* USER CODE BEGIN 1 */ + +/* USER CODE END 1 */ + +/** Configure pins as + * Analog + * Input + * Output + * EVENT_OUT + * EXTI +*/ +void MX_GPIO_Init(void) +{ + + GPIO_InitTypeDef GPIO_InitStruct = {0}; + + /* GPIO Ports Clock Enable */ + __HAL_RCC_GPIOD_CLK_ENABLE(); + __HAL_RCC_GPIOC_CLK_ENABLE(); + __HAL_RCC_GPIOA_CLK_ENABLE(); + + /*Configure GPIO pin Output Level */ + HAL_GPIO_WritePin(LED0_GPIO_Port, LED0_Pin, GPIO_PIN_SET); + + /*Configure GPIO pin Output Level */ + HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET); + + /*Configure GPIO pin : PtPin */ + GPIO_InitStruct.Pin = KEY0_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_INPUT; + GPIO_InitStruct.Pull = GPIO_PULLUP; + HAL_GPIO_Init(KEY0_GPIO_Port, &GPIO_InitStruct); + + /*Configure GPIO pin : PtPin */ + GPIO_InitStruct.Pin = LED0_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + HAL_GPIO_Init(LED0_GPIO_Port, &GPIO_InitStruct); + + /*Configure GPIO pin : PtPin */ + GPIO_InitStruct.Pin = KEY1_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_INPUT; + GPIO_InitStruct.Pull = GPIO_PULLUP; + HAL_GPIO_Init(KEY1_GPIO_Port, &GPIO_InitStruct); + + /*Configure GPIO pin : PtPin */ + GPIO_InitStruct.Pin = LED1_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + HAL_GPIO_Init(LED1_GPIO_Port, &GPIO_InitStruct); + +} + +/* USER CODE BEGIN 2 */ + +/* USER CODE END 2 */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/main.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/main.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/main.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/main.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/stm32f1xx_hal_msp.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/stm32f1xx_hal_msp.c new file mode 100644 index 0000000..3a7d52b --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/stm32f1xx_hal_msp.c @@ -0,0 +1,88 @@ +/* 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) 2024 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 */ +} + +/* USER CODE BEGIN 1 */ + +/* USER CODE END 1 */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/stm32f1xx_it.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/stm32f1xx_it.c new file mode 100644 index 0000000..dce5873 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/stm32f1xx_it.c @@ -0,0 +1,205 @@ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file stm32f1xx_it.c + * @brief Interrupt Service Routines. + ****************************************************************************** + * @attention + * + *

      © Copyright (c) 2024 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 --------------------------------------------------------*/ + +/* 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 */ +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/syscalls.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/syscalls.c new file mode 100644 index 0000000..f3462a0 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/syscalls.c @@ -0,0 +1,176 @@ +/** + ****************************************************************************** + * @file syscalls.c + * @author Auto-generated by STM32CubeIDE + * @brief STM32CubeIDE Minimal System calls file + * + * For more information about which c-functions + * need which of these lowlevel functions + * please consult the Newlib libc-manual + ****************************************************************************** + * @attention + * + * Copyright (c) 2020-2024 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. + * + ****************************************************************************** + */ + +/* Includes */ +#include +#include +#include +#include +#include +#include +#include +#include + + +/* Variables */ +extern int __io_putchar(int ch) __attribute__((weak)); +extern int __io_getchar(void) __attribute__((weak)); + + +char *__env[1] = { 0 }; +char **environ = __env; + + +/* Functions */ +void initialise_monitor_handles() +{ +} + +int _getpid(void) +{ + return 1; +} + +int _kill(int pid, int sig) +{ + (void)pid; + (void)sig; + errno = EINVAL; + return -1; +} + +void _exit (int status) +{ + _kill(status, -1); + while (1) {} /* Make sure we hang here */ +} + +__attribute__((weak)) int _read(int file, char *ptr, int len) +{ + (void)file; + int DataIdx; + + for (DataIdx = 0; DataIdx < len; DataIdx++) + { + *ptr++ = __io_getchar(); + } + + return len; +} + +__attribute__((weak)) int _write(int file, char *ptr, int len) +{ + (void)file; + int DataIdx; + + for (DataIdx = 0; DataIdx < len; DataIdx++) + { + __io_putchar(*ptr++); + } + return len; +} + +int _close(int file) +{ + (void)file; + return -1; +} + + +int _fstat(int file, struct stat *st) +{ + (void)file; + st->st_mode = S_IFCHR; + return 0; +} + +int _isatty(int file) +{ + (void)file; + return 1; +} + +int _lseek(int file, int ptr, int dir) +{ + (void)file; + (void)ptr; + (void)dir; + return 0; +} + +int _open(char *path, int flags, ...) +{ + (void)path; + (void)flags; + /* Pretend like we always fail */ + return -1; +} + +int _wait(int *status) +{ + (void)status; + errno = ECHILD; + return -1; +} + +int _unlink(char *name) +{ + (void)name; + errno = ENOENT; + return -1; +} + +int _times(struct tms *buf) +{ + (void)buf; + return -1; +} + +int _stat(char *file, struct stat *st) +{ + (void)file; + st->st_mode = S_IFCHR; + return 0; +} + +int _link(char *old, char *new) +{ + (void)old; + (void)new; + errno = EMLINK; + return -1; +} + +int _fork(void) +{ + errno = EAGAIN; + return -1; +} + +int _execve(char *name, char **argv, char **env) +{ + (void)name; + (void)argv; + (void)env; + errno = ENOMEM; + return -1; +} diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/sysmem.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/sysmem.c new file mode 100644 index 0000000..6122419 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/sysmem.c @@ -0,0 +1,79 @@ +/** + ****************************************************************************** + * @file sysmem.c + * @author Generated by STM32CubeIDE + * @brief STM32CubeIDE System Memory calls file + * + * For more information about which C functions + * need which of these lowlevel functions + * please consult the newlib libc manual + ****************************************************************************** + * @attention + * + * Copyright (c) 2024 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. + * + ****************************************************************************** + */ + +/* Includes */ +#include +#include + +/** + * Pointer to the current high watermark of the heap usage + */ +static uint8_t *__sbrk_heap_end = NULL; + +/** + * @brief _sbrk() allocates memory to the newlib heap and is used by malloc + * and others from the C library + * + * @verbatim + * ############################################################################ + * # .data # .bss # newlib heap # MSP stack # + * # # # # Reserved by _Min_Stack_Size # + * ############################################################################ + * ^-- RAM start ^-- _end _estack, RAM end --^ + * @endverbatim + * + * This implementation starts allocating at the '_end' linker symbol + * The '_Min_Stack_Size' linker symbol reserves a memory for the MSP stack + * The implementation considers '_estack' linker symbol to be RAM end + * NOTE: If the MSP stack, at any point during execution, grows larger than the + * reserved size, please increase the '_Min_Stack_Size'. + * + * @param incr Memory size + * @return Pointer to allocated memory + */ +void *_sbrk(ptrdiff_t incr) +{ + extern uint8_t _end; /* Symbol defined in the linker script */ + extern uint8_t _estack; /* Symbol defined in the linker script */ + extern uint32_t _Min_Stack_Size; /* Symbol defined in the linker script */ + const uint32_t stack_limit = (uint32_t)&_estack - (uint32_t)&_Min_Stack_Size; + const uint8_t *max_heap = (uint8_t *)stack_limit; + uint8_t *prev_heap_end; + + /* Initialize heap end at first call */ + if (NULL == __sbrk_heap_end) + { + __sbrk_heap_end = &_end; + } + + /* Protect heap from growing into the reserved MSP stack */ + if (__sbrk_heap_end + incr > max_heap) + { + errno = ENOMEM; + return (void *)-1; + } + + prev_heap_end = __sbrk_heap_end; + __sbrk_heap_end += incr; + + return (void *)prev_heap_end; +} diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/system_stm32f1xx.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/system_stm32f1xx.c new file mode 100644 index 0000000..052bec6 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/system_stm32f1xx.c @@ -0,0 +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****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/usart.c b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/usart.c similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Src/usart.c rename to CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Src/usart.c diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Startup/startup_stm32f103rctx.s b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Startup/startup_stm32f103rctx.s new file mode 100644 index 0000000..fb28afc --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Core/Startup/startup_stm32f103rctx.s @@ -0,0 +1,471 @@ +/** + *************** (C) COPYRIGHT 2017 STMicroelectronics ************************ + * @file startup_stm32f103xe.s + * @author MCD Application Team + * @brief STM32F103xE 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 + * - Configure external SRAM mounted on STM3210E-EVAL board + * to be used as data memory (optional, to be enabled by user) + * - 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, 0xF1E0F85F +/** + * @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 TIM8_BRK_IRQHandler + .word TIM8_UP_IRQHandler + .word TIM8_TRG_COM_IRQHandler + .word TIM8_CC_IRQHandler + .word ADC3_IRQHandler + .word FSMC_IRQHandler + .word SDIO_IRQHandler + .word TIM5_IRQHandler + .word SPI3_IRQHandler + .word UART4_IRQHandler + .word UART5_IRQHandler + .word TIM6_IRQHandler + .word TIM7_IRQHandler + .word DMA2_Channel1_IRQHandler + .word DMA2_Channel2_IRQHandler + .word DMA2_Channel3_IRQHandler + .word DMA2_Channel4_5_IRQHandler + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word BootRAM /* @0x1E0. This is for boot in RAM mode for + STM32F10x High 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 + + .weak TIM8_BRK_IRQHandler + .thumb_set TIM8_BRK_IRQHandler,Default_Handler + + .weak TIM8_UP_IRQHandler + .thumb_set TIM8_UP_IRQHandler,Default_Handler + + .weak TIM8_TRG_COM_IRQHandler + .thumb_set TIM8_TRG_COM_IRQHandler,Default_Handler + + .weak TIM8_CC_IRQHandler + .thumb_set TIM8_CC_IRQHandler,Default_Handler + + .weak ADC3_IRQHandler + .thumb_set ADC3_IRQHandler,Default_Handler + + .weak FSMC_IRQHandler + .thumb_set FSMC_IRQHandler,Default_Handler + + .weak SDIO_IRQHandler + .thumb_set SDIO_IRQHandler,Default_Handler + + .weak TIM5_IRQHandler + .thumb_set TIM5_IRQHandler,Default_Handler + + .weak SPI3_IRQHandler + .thumb_set SPI3_IRQHandler,Default_Handler + + .weak UART4_IRQHandler + .thumb_set UART4_IRQHandler,Default_Handler + + .weak UART5_IRQHandler + .thumb_set UART5_IRQHandler,Default_Handler + + .weak TIM6_IRQHandler + .thumb_set TIM6_IRQHandler,Default_Handler + + .weak TIM7_IRQHandler + .thumb_set TIM7_IRQHandler,Default_Handler + + .weak DMA2_Channel1_IRQHandler + .thumb_set DMA2_Channel1_IRQHandler,Default_Handler + + .weak DMA2_Channel2_IRQHandler + .thumb_set DMA2_Channel2_IRQHandler,Default_Handler + + .weak DMA2_Channel3_IRQHandler + .thumb_set DMA2_Channel3_IRQHandler,Default_Handler + + .weak DMA2_Channel4_5_IRQHandler + .thumb_set DMA2_Channel4_5_IRQHandler,Default_Handler + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xe.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xe.h new file mode 100644 index 0000000..cb5e86f --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab5/uart/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xe.h @@ -0,0 +1,11769 @@ +/** + ****************************************************************************** + * @file stm32f103xe.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 stm32f103xe + * @{ + */ + +#ifndef __STM32F103xE_H +#define __STM32F103xE_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 */ + TIM8_BRK_IRQn = 43, /*!< TIM8 Break Interrupt */ + TIM8_UP_IRQn = 44, /*!< TIM8 Update Interrupt */ + TIM8_TRG_COM_IRQn = 45, /*!< TIM8 Trigger and Commutation Interrupt */ + TIM8_CC_IRQn = 46, /*!< TIM8 Capture Compare Interrupt */ + ADC3_IRQn = 47, /*!< ADC3 global Interrupt */ + FSMC_IRQn = 48, /*!< FSMC global Interrupt */ + SDIO_IRQn = 49, /*!< SDIO global Interrupt */ + TIM5_IRQn = 50, /*!< TIM5 global Interrupt */ + SPI3_IRQn = 51, /*!< SPI3 global Interrupt */ + UART4_IRQn = 52, /*!< UART4 global Interrupt */ + UART5_IRQn = 53, /*!< UART5 global Interrupt */ + TIM6_IRQn = 54, /*!< TIM6 global Interrupt */ + TIM7_IRQn = 55, /*!< TIM7 global Interrupt */ + DMA2_Channel1_IRQn = 56, /*!< DMA2 Channel 1 global Interrupt */ + DMA2_Channel2_IRQn = 57, /*!< DMA2 Channel 2 global Interrupt */ + DMA2_Channel3_IRQn = 58, /*!< DMA2 Channel 3 global Interrupt */ + DMA2_Channel4_5_IRQn = 59, /*!< DMA2 Channel 4 and Channel 5 global 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; + uint32_t RESERVED13[2]; + __IO uint32_t DR11; + __IO uint32_t DR12; + __IO uint32_t DR13; + __IO uint32_t DR14; + __IO uint32_t DR15; + __IO uint32_t DR16; + __IO uint32_t DR17; + __IO uint32_t DR18; + __IO uint32_t DR19; + __IO uint32_t DR20; + __IO uint32_t DR21; + __IO uint32_t DR22; + __IO uint32_t DR23; + __IO uint32_t DR24; + __IO uint32_t DR25; + __IO uint32_t DR26; + __IO uint32_t DR27; + __IO uint32_t DR28; + __IO uint32_t DR29; + __IO uint32_t DR30; + __IO uint32_t DR31; + __IO uint32_t DR32; + __IO uint32_t DR33; + __IO uint32_t DR34; + __IO uint32_t DR35; + __IO uint32_t DR36; + __IO uint32_t DR37; + __IO uint32_t DR38; + __IO uint32_t DR39; + __IO uint32_t DR40; + __IO uint32_t DR41; + __IO uint32_t DR42; +} 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 Digital to Analog Converter + */ + +typedef struct +{ + __IO uint32_t CR; + __IO uint32_t SWTRIGR; + __IO uint32_t DHR12R1; + __IO uint32_t DHR12L1; + __IO uint32_t DHR8R1; + __IO uint32_t DHR12R2; + __IO uint32_t DHR12L2; + __IO uint32_t DHR8R2; + __IO uint32_t DHR12RD; + __IO uint32_t DHR12LD; + __IO uint32_t DHR8RD; + __IO uint32_t DOR1; + __IO uint32_t DOR2; +} DAC_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 Flexible Static Memory Controller + */ + +typedef struct +{ + __IO uint32_t BTCR[8]; +} FSMC_Bank1_TypeDef; + +/** + * @brief Flexible Static Memory Controller Bank1E + */ + +typedef struct +{ + __IO uint32_t BWTR[7]; +} FSMC_Bank1E_TypeDef; + +/** + * @brief Flexible Static Memory Controller Bank2 + */ + +typedef struct +{ + __IO uint32_t PCR2; /*!< NAND Flash control register 2, Address offset: 0x60 */ + __IO uint32_t SR2; /*!< NAND Flash FIFO status and interrupt register 2, Address offset: 0x64 */ + __IO uint32_t PMEM2; /*!< NAND Flash Common memory space timing register 2, Address offset: 0x68 */ + __IO uint32_t PATT2; /*!< NAND Flash Attribute memory space timing register 2, Address offset: 0x6C */ + uint32_t RESERVED0; /*!< Reserved, 0x70 */ + __IO uint32_t ECCR2; /*!< NAND Flash ECC result registers 2, Address offset: 0x74 */ + uint32_t RESERVED1; /*!< Reserved, 0x78 */ + uint32_t RESERVED2; /*!< Reserved, 0x7C */ + __IO uint32_t PCR3; /*!< NAND Flash control register 3, Address offset: 0x80 */ + __IO uint32_t SR3; /*!< NAND Flash FIFO status and interrupt register 3, Address offset: 0x84 */ + __IO uint32_t PMEM3; /*!< NAND Flash Common memory space timing register 3, Address offset: 0x88 */ + __IO uint32_t PATT3; /*!< NAND Flash Attribute memory space timing register 3, Address offset: 0x8C */ + uint32_t RESERVED3; /*!< Reserved, 0x90 */ + __IO uint32_t ECCR3; /*!< NAND Flash ECC result registers 3, Address offset: 0x94 */ +} FSMC_Bank2_3_TypeDef; + +/** + * @brief Flexible Static Memory Controller Bank4 + */ + +typedef struct +{ + __IO uint32_t PCR4; + __IO uint32_t SR4; + __IO uint32_t PMEM4; + __IO uint32_t PATT4; + __IO uint32_t PIO4; +} FSMC_Bank4_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 SD host Interface + */ + +typedef struct +{ + __IO uint32_t POWER; + __IO uint32_t CLKCR; + __IO uint32_t ARG; + __IO uint32_t CMD; + __I uint32_t RESPCMD; + __I uint32_t RESP1; + __I uint32_t RESP2; + __I uint32_t RESP3; + __I uint32_t RESP4; + __IO uint32_t DTIMER; + __IO uint32_t DLEN; + __IO uint32_t DCTRL; + __I uint32_t DCOUNT; + __I uint32_t STA; + __IO uint32_t ICR; + __IO uint32_t MASK; + uint32_t RESERVED0[2]; + __I uint32_t FIFOCNT; + uint32_t RESERVED1[13]; + __IO uint32_t FIFO; +} SDIO_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; + __IO uint32_t I2SPR; +} 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 0x0807FFFFUL /*!< 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 */ + +#define FSMC_BASE 0x60000000UL /*!< FSMC base address */ +#define FSMC_R_BASE 0xA0000000UL /*!< FSMC registers base address */ + +/*!< 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 TIM5_BASE (APB1PERIPH_BASE + 0x00000C00UL) +#define TIM6_BASE (APB1PERIPH_BASE + 0x00001000UL) +#define TIM7_BASE (APB1PERIPH_BASE + 0x00001400UL) +#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 SPI3_BASE (APB1PERIPH_BASE + 0x00003C00UL) +#define USART2_BASE (APB1PERIPH_BASE + 0x00004400UL) +#define USART3_BASE (APB1PERIPH_BASE + 0x00004800UL) +#define UART4_BASE (APB1PERIPH_BASE + 0x00004C00UL) +#define UART5_BASE (APB1PERIPH_BASE + 0x00005000UL) +#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 DAC_BASE (APB1PERIPH_BASE + 0x00007400UL) +#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 GPIOF_BASE (APB2PERIPH_BASE + 0x00001C00UL) +#define GPIOG_BASE (APB2PERIPH_BASE + 0x00002000UL) +#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 TIM8_BASE (APB2PERIPH_BASE + 0x00003400UL) +#define USART1_BASE (APB2PERIPH_BASE + 0x00003800UL) +#define ADC3_BASE (APB2PERIPH_BASE + 0x00003C00UL) + +#define SDIO_BASE (PERIPH_BASE + 0x00018000UL) + +#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 DMA2_BASE (AHBPERIPH_BASE + 0x00000400UL) +#define DMA2_Channel1_BASE (AHBPERIPH_BASE + 0x00000408UL) +#define DMA2_Channel2_BASE (AHBPERIPH_BASE + 0x0000041CUL) +#define DMA2_Channel3_BASE (AHBPERIPH_BASE + 0x00000430UL) +#define DMA2_Channel4_BASE (AHBPERIPH_BASE + 0x00000444UL) +#define DMA2_Channel5_BASE (AHBPERIPH_BASE + 0x00000458UL) +#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 FSMC_BANK1 (FSMC_BASE) /*!< FSMC Bank1 base address */ +#define FSMC_BANK1_1 (FSMC_BANK1) /*!< FSMC Bank1_1 base address */ +#define FSMC_BANK1_2 (FSMC_BANK1 + 0x04000000UL) /*!< FSMC Bank1_2 base address */ +#define FSMC_BANK1_3 (FSMC_BANK1 + 0x08000000UL) /*!< FSMC Bank1_3 base address */ +#define FSMC_BANK1_4 (FSMC_BANK1 + 0x0C000000UL) /*!< FSMC Bank1_4 base address */ + +#define FSMC_BANK2 (FSMC_BASE + 0x10000000UL) /*!< FSMC Bank2 base address */ +#define FSMC_BANK3 (FSMC_BASE + 0x20000000UL) /*!< FSMC Bank3 base address */ +#define FSMC_BANK4 (FSMC_BASE + 0x30000000UL) /*!< FSMC Bank4 base address */ + +#define FSMC_BANK1_R_BASE (FSMC_R_BASE + 0x00000000UL) /*!< FSMC Bank1 registers base address */ +#define FSMC_BANK1E_R_BASE (FSMC_R_BASE + 0x00000104UL) /*!< FSMC Bank1E registers base address */ +#define FSMC_BANK2_3_R_BASE (FSMC_R_BASE + 0x00000060UL) /*!< FSMC Bank2/Bank3 registers base address */ +#define FSMC_BANK4_R_BASE (FSMC_R_BASE + 0x000000A0UL) /*!< FSMC Bank4 registers 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 TIM5 ((TIM_TypeDef *)TIM5_BASE) +#define TIM6 ((TIM_TypeDef *)TIM6_BASE) +#define TIM7 ((TIM_TypeDef *)TIM7_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 SPI3 ((SPI_TypeDef *)SPI3_BASE) +#define USART2 ((USART_TypeDef *)USART2_BASE) +#define USART3 ((USART_TypeDef *)USART3_BASE) +#define UART4 ((USART_TypeDef *)UART4_BASE) +#define UART5 ((USART_TypeDef *)UART5_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 DAC1 ((DAC_TypeDef *)DAC_BASE) +#define DAC ((DAC_TypeDef *)DAC_BASE) /* Kept for legacy purpose */ +#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 GPIOF ((GPIO_TypeDef *)GPIOF_BASE) +#define GPIOG ((GPIO_TypeDef *)GPIOG_BASE) +#define ADC1 ((ADC_TypeDef *)ADC1_BASE) +#define ADC2 ((ADC_TypeDef *)ADC2_BASE) +#define ADC3 ((ADC_TypeDef *)ADC3_BASE) +#define ADC12_COMMON ((ADC_Common_TypeDef *)ADC1_BASE) +#define TIM1 ((TIM_TypeDef *)TIM1_BASE) +#define SPI1 ((SPI_TypeDef *)SPI1_BASE) +#define TIM8 ((TIM_TypeDef *)TIM8_BASE) +#define USART1 ((USART_TypeDef *)USART1_BASE) +#define SDIO ((SDIO_TypeDef *)SDIO_BASE) +#define DMA1 ((DMA_TypeDef *)DMA1_BASE) +#define DMA2 ((DMA_TypeDef *)DMA2_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 DMA2_Channel1 ((DMA_Channel_TypeDef *)DMA2_Channel1_BASE) +#define DMA2_Channel2 ((DMA_Channel_TypeDef *)DMA2_Channel2_BASE) +#define DMA2_Channel3 ((DMA_Channel_TypeDef *)DMA2_Channel3_BASE) +#define DMA2_Channel4 ((DMA_Channel_TypeDef *)DMA2_Channel4_BASE) +#define DMA2_Channel5 ((DMA_Channel_TypeDef *)DMA2_Channel5_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 FSMC_Bank1 ((FSMC_Bank1_TypeDef *)FSMC_BANK1_R_BASE) +#define FSMC_Bank1E ((FSMC_Bank1E_TypeDef *)FSMC_BANK1E_R_BASE) +#define FSMC_Bank2_3 ((FSMC_Bank2_3_TypeDef *)FSMC_BANK2_3_R_BASE) +#define FSMC_Bank4 ((FSMC_Bank4_TypeDef *)FSMC_BANK4_R_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 */ + +/******************* Bit definition for BKP_DR11 register *******************/ +#define BKP_DR11_D_Pos (0U) +#define BKP_DR11_D_Msk (0xFFFFUL << BKP_DR11_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR11_D BKP_DR11_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR12 register *******************/ +#define BKP_DR12_D_Pos (0U) +#define BKP_DR12_D_Msk (0xFFFFUL << BKP_DR12_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR12_D BKP_DR12_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR13 register *******************/ +#define BKP_DR13_D_Pos (0U) +#define BKP_DR13_D_Msk (0xFFFFUL << BKP_DR13_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR13_D BKP_DR13_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR14 register *******************/ +#define BKP_DR14_D_Pos (0U) +#define BKP_DR14_D_Msk (0xFFFFUL << BKP_DR14_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR14_D BKP_DR14_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR15 register *******************/ +#define BKP_DR15_D_Pos (0U) +#define BKP_DR15_D_Msk (0xFFFFUL << BKP_DR15_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR15_D BKP_DR15_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR16 register *******************/ +#define BKP_DR16_D_Pos (0U) +#define BKP_DR16_D_Msk (0xFFFFUL << BKP_DR16_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR16_D BKP_DR16_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR17 register *******************/ +#define BKP_DR17_D_Pos (0U) +#define BKP_DR17_D_Msk (0xFFFFUL << BKP_DR17_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR17_D BKP_DR17_D_Msk /*!< Backup data */ + +/****************** Bit definition for BKP_DR18 register ********************/ +#define BKP_DR18_D_Pos (0U) +#define BKP_DR18_D_Msk (0xFFFFUL << BKP_DR18_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR18_D BKP_DR18_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR19 register *******************/ +#define BKP_DR19_D_Pos (0U) +#define BKP_DR19_D_Msk (0xFFFFUL << BKP_DR19_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR19_D BKP_DR19_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR20 register *******************/ +#define BKP_DR20_D_Pos (0U) +#define BKP_DR20_D_Msk (0xFFFFUL << BKP_DR20_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR20_D BKP_DR20_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR21 register *******************/ +#define BKP_DR21_D_Pos (0U) +#define BKP_DR21_D_Msk (0xFFFFUL << BKP_DR21_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR21_D BKP_DR21_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR22 register *******************/ +#define BKP_DR22_D_Pos (0U) +#define BKP_DR22_D_Msk (0xFFFFUL << BKP_DR22_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR22_D BKP_DR22_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR23 register *******************/ +#define BKP_DR23_D_Pos (0U) +#define BKP_DR23_D_Msk (0xFFFFUL << BKP_DR23_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR23_D BKP_DR23_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR24 register *******************/ +#define BKP_DR24_D_Pos (0U) +#define BKP_DR24_D_Msk (0xFFFFUL << BKP_DR24_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR24_D BKP_DR24_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR25 register *******************/ +#define BKP_DR25_D_Pos (0U) +#define BKP_DR25_D_Msk (0xFFFFUL << BKP_DR25_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR25_D BKP_DR25_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR26 register *******************/ +#define BKP_DR26_D_Pos (0U) +#define BKP_DR26_D_Msk (0xFFFFUL << BKP_DR26_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR26_D BKP_DR26_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR27 register *******************/ +#define BKP_DR27_D_Pos (0U) +#define BKP_DR27_D_Msk (0xFFFFUL << BKP_DR27_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR27_D BKP_DR27_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR28 register *******************/ +#define BKP_DR28_D_Pos (0U) +#define BKP_DR28_D_Msk (0xFFFFUL << BKP_DR28_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR28_D BKP_DR28_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR29 register *******************/ +#define BKP_DR29_D_Pos (0U) +#define BKP_DR29_D_Msk (0xFFFFUL << BKP_DR29_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR29_D BKP_DR29_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR30 register *******************/ +#define BKP_DR30_D_Pos (0U) +#define BKP_DR30_D_Msk (0xFFFFUL << BKP_DR30_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR30_D BKP_DR30_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR31 register *******************/ +#define BKP_DR31_D_Pos (0U) +#define BKP_DR31_D_Msk (0xFFFFUL << BKP_DR31_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR31_D BKP_DR31_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR32 register *******************/ +#define BKP_DR32_D_Pos (0U) +#define BKP_DR32_D_Msk (0xFFFFUL << BKP_DR32_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR32_D BKP_DR32_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR33 register *******************/ +#define BKP_DR33_D_Pos (0U) +#define BKP_DR33_D_Msk (0xFFFFUL << BKP_DR33_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR33_D BKP_DR33_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR34 register *******************/ +#define BKP_DR34_D_Pos (0U) +#define BKP_DR34_D_Msk (0xFFFFUL << BKP_DR34_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR34_D BKP_DR34_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR35 register *******************/ +#define BKP_DR35_D_Pos (0U) +#define BKP_DR35_D_Msk (0xFFFFUL << BKP_DR35_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR35_D BKP_DR35_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR36 register *******************/ +#define BKP_DR36_D_Pos (0U) +#define BKP_DR36_D_Msk (0xFFFFUL << BKP_DR36_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR36_D BKP_DR36_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR37 register *******************/ +#define BKP_DR37_D_Pos (0U) +#define BKP_DR37_D_Msk (0xFFFFUL << BKP_DR37_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR37_D BKP_DR37_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR38 register *******************/ +#define BKP_DR38_D_Pos (0U) +#define BKP_DR38_D_Msk (0xFFFFUL << BKP_DR38_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR38_D BKP_DR38_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR39 register *******************/ +#define BKP_DR39_D_Pos (0U) +#define BKP_DR39_D_Msk (0xFFFFUL << BKP_DR39_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR39_D BKP_DR39_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR40 register *******************/ +#define BKP_DR40_D_Pos (0U) +#define BKP_DR40_D_Msk (0xFFFFUL << BKP_DR40_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR40_D BKP_DR40_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR41 register *******************/ +#define BKP_DR41_D_Pos (0U) +#define BKP_DR41_D_Msk (0xFFFFUL << BKP_DR41_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR41_D BKP_DR41_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR42 register *******************/ +#define BKP_DR42_D_Pos (0U) +#define BKP_DR42_D_Msk (0xFFFFUL << BKP_DR42_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR42_D BKP_DR42_D_Msk /*!< Backup data */ + +#define RTC_BKP_NUMBER 42 + +/****************** 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 */ + +#define RCC_APB2RSTR_IOPFRST_Pos (7U) +#define RCC_APB2RSTR_IOPFRST_Msk (0x1UL << RCC_APB2RSTR_IOPFRST_Pos) /*!< 0x00000080 */ +#define RCC_APB2RSTR_IOPFRST RCC_APB2RSTR_IOPFRST_Msk /*!< I/O port F reset */ +#define RCC_APB2RSTR_IOPGRST_Pos (8U) +#define RCC_APB2RSTR_IOPGRST_Msk (0x1UL << RCC_APB2RSTR_IOPGRST_Pos) /*!< 0x00000100 */ +#define RCC_APB2RSTR_IOPGRST RCC_APB2RSTR_IOPGRST_Msk /*!< I/O port G reset */ +#define RCC_APB2RSTR_TIM8RST_Pos (13U) +#define RCC_APB2RSTR_TIM8RST_Msk (0x1UL << RCC_APB2RSTR_TIM8RST_Pos) /*!< 0x00002000 */ +#define RCC_APB2RSTR_TIM8RST RCC_APB2RSTR_TIM8RST_Msk /*!< TIM8 Timer reset */ +#define RCC_APB2RSTR_ADC3RST_Pos (15U) +#define RCC_APB2RSTR_ADC3RST_Msk (0x1UL << RCC_APB2RSTR_ADC3RST_Pos) /*!< 0x00008000 */ +#define RCC_APB2RSTR_ADC3RST RCC_APB2RSTR_ADC3RST_Msk /*!< ADC3 interface 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 */ + +#define RCC_APB1RSTR_TIM5RST_Pos (3U) +#define RCC_APB1RSTR_TIM5RST_Msk (0x1UL << RCC_APB1RSTR_TIM5RST_Pos) /*!< 0x00000008 */ +#define RCC_APB1RSTR_TIM5RST RCC_APB1RSTR_TIM5RST_Msk /*!< Timer 5 reset */ +#define RCC_APB1RSTR_TIM6RST_Pos (4U) +#define RCC_APB1RSTR_TIM6RST_Msk (0x1UL << RCC_APB1RSTR_TIM6RST_Pos) /*!< 0x00000010 */ +#define RCC_APB1RSTR_TIM6RST RCC_APB1RSTR_TIM6RST_Msk /*!< Timer 6 reset */ +#define RCC_APB1RSTR_TIM7RST_Pos (5U) +#define RCC_APB1RSTR_TIM7RST_Msk (0x1UL << RCC_APB1RSTR_TIM7RST_Pos) /*!< 0x00000020 */ +#define RCC_APB1RSTR_TIM7RST RCC_APB1RSTR_TIM7RST_Msk /*!< Timer 7 reset */ +#define RCC_APB1RSTR_SPI3RST_Pos (15U) +#define RCC_APB1RSTR_SPI3RST_Msk (0x1UL << RCC_APB1RSTR_SPI3RST_Pos) /*!< 0x00008000 */ +#define RCC_APB1RSTR_SPI3RST RCC_APB1RSTR_SPI3RST_Msk /*!< SPI 3 reset */ +#define RCC_APB1RSTR_UART4RST_Pos (19U) +#define RCC_APB1RSTR_UART4RST_Msk (0x1UL << RCC_APB1RSTR_UART4RST_Pos) /*!< 0x00080000 */ +#define RCC_APB1RSTR_UART4RST RCC_APB1RSTR_UART4RST_Msk /*!< UART 4 reset */ +#define RCC_APB1RSTR_UART5RST_Pos (20U) +#define RCC_APB1RSTR_UART5RST_Msk (0x1UL << RCC_APB1RSTR_UART5RST_Pos) /*!< 0x00100000 */ +#define RCC_APB1RSTR_UART5RST RCC_APB1RSTR_UART5RST_Msk /*!< UART 5 reset */ + + + + +#define RCC_APB1RSTR_DACRST_Pos (29U) +#define RCC_APB1RSTR_DACRST_Msk (0x1UL << RCC_APB1RSTR_DACRST_Pos) /*!< 0x20000000 */ +#define RCC_APB1RSTR_DACRST RCC_APB1RSTR_DACRST_Msk /*!< DAC interface 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 */ + +#define RCC_AHBENR_DMA2EN_Pos (1U) +#define RCC_AHBENR_DMA2EN_Msk (0x1UL << RCC_AHBENR_DMA2EN_Pos) /*!< 0x00000002 */ +#define RCC_AHBENR_DMA2EN RCC_AHBENR_DMA2EN_Msk /*!< DMA2 clock enable */ + +#define RCC_AHBENR_FSMCEN_Pos (8U) +#define RCC_AHBENR_FSMCEN_Msk (0x1UL << RCC_AHBENR_FSMCEN_Pos) /*!< 0x00000100 */ +#define RCC_AHBENR_FSMCEN RCC_AHBENR_FSMCEN_Msk /*!< FSMC clock enable */ +#define RCC_AHBENR_SDIOEN_Pos (10U) +#define RCC_AHBENR_SDIOEN_Msk (0x1UL << RCC_AHBENR_SDIOEN_Pos) /*!< 0x00000400 */ +#define RCC_AHBENR_SDIOEN RCC_AHBENR_SDIOEN_Msk /*!< SDIO 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 */ + +#define RCC_APB2ENR_IOPFEN_Pos (7U) +#define RCC_APB2ENR_IOPFEN_Msk (0x1UL << RCC_APB2ENR_IOPFEN_Pos) /*!< 0x00000080 */ +#define RCC_APB2ENR_IOPFEN RCC_APB2ENR_IOPFEN_Msk /*!< I/O port F clock enable */ +#define RCC_APB2ENR_IOPGEN_Pos (8U) +#define RCC_APB2ENR_IOPGEN_Msk (0x1UL << RCC_APB2ENR_IOPGEN_Pos) /*!< 0x00000100 */ +#define RCC_APB2ENR_IOPGEN RCC_APB2ENR_IOPGEN_Msk /*!< I/O port G clock enable */ +#define RCC_APB2ENR_TIM8EN_Pos (13U) +#define RCC_APB2ENR_TIM8EN_Msk (0x1UL << RCC_APB2ENR_TIM8EN_Pos) /*!< 0x00002000 */ +#define RCC_APB2ENR_TIM8EN RCC_APB2ENR_TIM8EN_Msk /*!< TIM8 Timer clock enable */ +#define RCC_APB2ENR_ADC3EN_Pos (15U) +#define RCC_APB2ENR_ADC3EN_Msk (0x1UL << RCC_APB2ENR_ADC3EN_Pos) /*!< 0x00008000 */ +#define RCC_APB2ENR_ADC3EN RCC_APB2ENR_ADC3EN_Msk /*!< DMA1 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 */ + +#define RCC_APB1ENR_TIM5EN_Pos (3U) +#define RCC_APB1ENR_TIM5EN_Msk (0x1UL << RCC_APB1ENR_TIM5EN_Pos) /*!< 0x00000008 */ +#define RCC_APB1ENR_TIM5EN RCC_APB1ENR_TIM5EN_Msk /*!< Timer 5 clock enable */ +#define RCC_APB1ENR_TIM6EN_Pos (4U) +#define RCC_APB1ENR_TIM6EN_Msk (0x1UL << RCC_APB1ENR_TIM6EN_Pos) /*!< 0x00000010 */ +#define RCC_APB1ENR_TIM6EN RCC_APB1ENR_TIM6EN_Msk /*!< Timer 6 clock enable */ +#define RCC_APB1ENR_TIM7EN_Pos (5U) +#define RCC_APB1ENR_TIM7EN_Msk (0x1UL << RCC_APB1ENR_TIM7EN_Pos) /*!< 0x00000020 */ +#define RCC_APB1ENR_TIM7EN RCC_APB1ENR_TIM7EN_Msk /*!< Timer 7 clock enable */ +#define RCC_APB1ENR_SPI3EN_Pos (15U) +#define RCC_APB1ENR_SPI3EN_Msk (0x1UL << RCC_APB1ENR_SPI3EN_Pos) /*!< 0x00008000 */ +#define RCC_APB1ENR_SPI3EN RCC_APB1ENR_SPI3EN_Msk /*!< SPI 3 clock enable */ +#define RCC_APB1ENR_UART4EN_Pos (19U) +#define RCC_APB1ENR_UART4EN_Msk (0x1UL << RCC_APB1ENR_UART4EN_Pos) /*!< 0x00080000 */ +#define RCC_APB1ENR_UART4EN RCC_APB1ENR_UART4EN_Msk /*!< UART 4 clock enable */ +#define RCC_APB1ENR_UART5EN_Pos (20U) +#define RCC_APB1ENR_UART5EN_Msk (0x1UL << RCC_APB1ENR_UART5EN_Pos) /*!< 0x00100000 */ +#define RCC_APB1ENR_UART5EN RCC_APB1ENR_UART5EN_Msk /*!< UART 5 clock enable */ + + + + +#define RCC_APB1ENR_DACEN_Pos (29U) +#define RCC_APB1ENR_DACEN_Msk (0x1UL << RCC_APB1ENR_DACEN_Pos) /*!< 0x20000000 */ +#define RCC_APB1ENR_DACEN RCC_APB1ENR_DACEN_Msk /*!< DAC interface 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 */ +#define AFIO_MAPR_TIM5CH4_IREMAP_Pos (16U) +#define AFIO_MAPR_TIM5CH4_IREMAP_Msk (0x1UL << AFIO_MAPR_TIM5CH4_IREMAP_Pos) /*!< 0x00010000 */ +#define AFIO_MAPR_TIM5CH4_IREMAP AFIO_MAPR_TIM5CH4_IREMAP_Msk /*!< TIM5 Channel4 Internal Remap */ +#define AFIO_MAPR_ADC1_ETRGINJ_REMAP_Pos (17U) +#define AFIO_MAPR_ADC1_ETRGINJ_REMAP_Msk (0x1UL << AFIO_MAPR_ADC1_ETRGINJ_REMAP_Pos) /*!< 0x00020000 */ +#define AFIO_MAPR_ADC1_ETRGINJ_REMAP AFIO_MAPR_ADC1_ETRGINJ_REMAP_Msk /*!< ADC 1 External Trigger Injected Conversion remapping */ +#define AFIO_MAPR_ADC1_ETRGREG_REMAP_Pos (18U) +#define AFIO_MAPR_ADC1_ETRGREG_REMAP_Msk (0x1UL << AFIO_MAPR_ADC1_ETRGREG_REMAP_Pos) /*!< 0x00040000 */ +#define AFIO_MAPR_ADC1_ETRGREG_REMAP AFIO_MAPR_ADC1_ETRGREG_REMAP_Msk /*!< ADC 1 External Trigger Regular Conversion remapping */ +#define AFIO_MAPR_ADC2_ETRGINJ_REMAP_Pos (19U) +#define AFIO_MAPR_ADC2_ETRGINJ_REMAP_Msk (0x1UL << AFIO_MAPR_ADC2_ETRGINJ_REMAP_Pos) /*!< 0x00080000 */ +#define AFIO_MAPR_ADC2_ETRGINJ_REMAP AFIO_MAPR_ADC2_ETRGINJ_REMAP_Msk /*!< ADC 2 External Trigger Injected Conversion remapping */ +#define AFIO_MAPR_ADC2_ETRGREG_REMAP_Pos (20U) +#define AFIO_MAPR_ADC2_ETRGREG_REMAP_Msk (0x1UL << AFIO_MAPR_ADC2_ETRGREG_REMAP_Pos) /*!< 0x00100000 */ +#define AFIO_MAPR_ADC2_ETRGREG_REMAP AFIO_MAPR_ADC2_ETRGREG_REMAP_Msk /*!< ADC 2 External Trigger Regular Conversion remapping */ + +/*!< 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 ******************/ + + +#define AFIO_MAPR2_FSMC_NADV_REMAP_Pos (10U) +#define AFIO_MAPR2_FSMC_NADV_REMAP_Msk (0x1UL << AFIO_MAPR2_FSMC_NADV_REMAP_Pos) /*!< 0x00000400 */ +#define AFIO_MAPR2_FSMC_NADV_REMAP AFIO_MAPR2_FSMC_NADV_REMAP_Msk /*!< FSMC NADV remapping */ + +/******************************************************************************/ +/* */ +/* 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 */ +/******************************************************************************/ +/* */ +/* Digital to Analog Converter */ +/* */ +/******************************************************************************/ + +/******************** Bit definition for DAC_CR register ********************/ +#define DAC_CR_EN1_Pos (0U) +#define DAC_CR_EN1_Msk (0x1UL << DAC_CR_EN1_Pos) /*!< 0x00000001 */ +#define DAC_CR_EN1 DAC_CR_EN1_Msk /*!< DAC channel1 enable */ +#define DAC_CR_BOFF1_Pos (1U) +#define DAC_CR_BOFF1_Msk (0x1UL << DAC_CR_BOFF1_Pos) /*!< 0x00000002 */ +#define DAC_CR_BOFF1 DAC_CR_BOFF1_Msk /*!< DAC channel1 output buffer disable */ +#define DAC_CR_TEN1_Pos (2U) +#define DAC_CR_TEN1_Msk (0x1UL << DAC_CR_TEN1_Pos) /*!< 0x00000004 */ +#define DAC_CR_TEN1 DAC_CR_TEN1_Msk /*!< DAC channel1 Trigger enable */ + +#define DAC_CR_TSEL1_Pos (3U) +#define DAC_CR_TSEL1_Msk (0x7UL << DAC_CR_TSEL1_Pos) /*!< 0x00000038 */ +#define DAC_CR_TSEL1 DAC_CR_TSEL1_Msk /*!< TSEL1[2:0] (DAC channel1 Trigger selection) */ +#define DAC_CR_TSEL1_0 (0x1UL << DAC_CR_TSEL1_Pos) /*!< 0x00000008 */ +#define DAC_CR_TSEL1_1 (0x2UL << DAC_CR_TSEL1_Pos) /*!< 0x00000010 */ +#define DAC_CR_TSEL1_2 (0x4UL << DAC_CR_TSEL1_Pos) /*!< 0x00000020 */ + +#define DAC_CR_WAVE1_Pos (6U) +#define DAC_CR_WAVE1_Msk (0x3UL << DAC_CR_WAVE1_Pos) /*!< 0x000000C0 */ +#define DAC_CR_WAVE1 DAC_CR_WAVE1_Msk /*!< WAVE1[1:0] (DAC channel1 noise/triangle wave generation enable) */ +#define DAC_CR_WAVE1_0 (0x1UL << DAC_CR_WAVE1_Pos) /*!< 0x00000040 */ +#define DAC_CR_WAVE1_1 (0x2UL << DAC_CR_WAVE1_Pos) /*!< 0x00000080 */ + +#define DAC_CR_MAMP1_Pos (8U) +#define DAC_CR_MAMP1_Msk (0xFUL << DAC_CR_MAMP1_Pos) /*!< 0x00000F00 */ +#define DAC_CR_MAMP1 DAC_CR_MAMP1_Msk /*!< MAMP1[3:0] (DAC channel1 Mask/Amplitude selector) */ +#define DAC_CR_MAMP1_0 (0x1UL << DAC_CR_MAMP1_Pos) /*!< 0x00000100 */ +#define DAC_CR_MAMP1_1 (0x2UL << DAC_CR_MAMP1_Pos) /*!< 0x00000200 */ +#define DAC_CR_MAMP1_2 (0x4UL << DAC_CR_MAMP1_Pos) /*!< 0x00000400 */ +#define DAC_CR_MAMP1_3 (0x8UL << DAC_CR_MAMP1_Pos) /*!< 0x00000800 */ + +#define DAC_CR_DMAEN1_Pos (12U) +#define DAC_CR_DMAEN1_Msk (0x1UL << DAC_CR_DMAEN1_Pos) /*!< 0x00001000 */ +#define DAC_CR_DMAEN1 DAC_CR_DMAEN1_Msk /*!< DAC channel1 DMA enable */ +#define DAC_CR_EN2_Pos (16U) +#define DAC_CR_EN2_Msk (0x1UL << DAC_CR_EN2_Pos) /*!< 0x00010000 */ +#define DAC_CR_EN2 DAC_CR_EN2_Msk /*!< DAC channel2 enable */ +#define DAC_CR_BOFF2_Pos (17U) +#define DAC_CR_BOFF2_Msk (0x1UL << DAC_CR_BOFF2_Pos) /*!< 0x00020000 */ +#define DAC_CR_BOFF2 DAC_CR_BOFF2_Msk /*!< DAC channel2 output buffer disable */ +#define DAC_CR_TEN2_Pos (18U) +#define DAC_CR_TEN2_Msk (0x1UL << DAC_CR_TEN2_Pos) /*!< 0x00040000 */ +#define DAC_CR_TEN2 DAC_CR_TEN2_Msk /*!< DAC channel2 Trigger enable */ + +#define DAC_CR_TSEL2_Pos (19U) +#define DAC_CR_TSEL2_Msk (0x7UL << DAC_CR_TSEL2_Pos) /*!< 0x00380000 */ +#define DAC_CR_TSEL2 DAC_CR_TSEL2_Msk /*!< TSEL2[2:0] (DAC channel2 Trigger selection) */ +#define DAC_CR_TSEL2_0 (0x1UL << DAC_CR_TSEL2_Pos) /*!< 0x00080000 */ +#define DAC_CR_TSEL2_1 (0x2UL << DAC_CR_TSEL2_Pos) /*!< 0x00100000 */ +#define DAC_CR_TSEL2_2 (0x4UL << DAC_CR_TSEL2_Pos) /*!< 0x00200000 */ + +#define DAC_CR_WAVE2_Pos (22U) +#define DAC_CR_WAVE2_Msk (0x3UL << DAC_CR_WAVE2_Pos) /*!< 0x00C00000 */ +#define DAC_CR_WAVE2 DAC_CR_WAVE2_Msk /*!< WAVE2[1:0] (DAC channel2 noise/triangle wave generation enable) */ +#define DAC_CR_WAVE2_0 (0x1UL << DAC_CR_WAVE2_Pos) /*!< 0x00400000 */ +#define DAC_CR_WAVE2_1 (0x2UL << DAC_CR_WAVE2_Pos) /*!< 0x00800000 */ + +#define DAC_CR_MAMP2_Pos (24U) +#define DAC_CR_MAMP2_Msk (0xFUL << DAC_CR_MAMP2_Pos) /*!< 0x0F000000 */ +#define DAC_CR_MAMP2 DAC_CR_MAMP2_Msk /*!< MAMP2[3:0] (DAC channel2 Mask/Amplitude selector) */ +#define DAC_CR_MAMP2_0 (0x1UL << DAC_CR_MAMP2_Pos) /*!< 0x01000000 */ +#define DAC_CR_MAMP2_1 (0x2UL << DAC_CR_MAMP2_Pos) /*!< 0x02000000 */ +#define DAC_CR_MAMP2_2 (0x4UL << DAC_CR_MAMP2_Pos) /*!< 0x04000000 */ +#define DAC_CR_MAMP2_3 (0x8UL << DAC_CR_MAMP2_Pos) /*!< 0x08000000 */ + +#define DAC_CR_DMAEN2_Pos (28U) +#define DAC_CR_DMAEN2_Msk (0x1UL << DAC_CR_DMAEN2_Pos) /*!< 0x10000000 */ +#define DAC_CR_DMAEN2 DAC_CR_DMAEN2_Msk /*!< DAC channel2 DMA enabled */ + + +/***************** Bit definition for DAC_SWTRIGR register ******************/ +#define DAC_SWTRIGR_SWTRIG1_Pos (0U) +#define DAC_SWTRIGR_SWTRIG1_Msk (0x1UL << DAC_SWTRIGR_SWTRIG1_Pos) /*!< 0x00000001 */ +#define DAC_SWTRIGR_SWTRIG1 DAC_SWTRIGR_SWTRIG1_Msk /*!< DAC channel1 software trigger */ +#define DAC_SWTRIGR_SWTRIG2_Pos (1U) +#define DAC_SWTRIGR_SWTRIG2_Msk (0x1UL << DAC_SWTRIGR_SWTRIG2_Pos) /*!< 0x00000002 */ +#define DAC_SWTRIGR_SWTRIG2 DAC_SWTRIGR_SWTRIG2_Msk /*!< DAC channel2 software trigger */ + +/***************** Bit definition for DAC_DHR12R1 register ******************/ +#define DAC_DHR12R1_DACC1DHR_Pos (0U) +#define DAC_DHR12R1_DACC1DHR_Msk (0xFFFUL << DAC_DHR12R1_DACC1DHR_Pos) /*!< 0x00000FFF */ +#define DAC_DHR12R1_DACC1DHR DAC_DHR12R1_DACC1DHR_Msk /*!< DAC channel1 12-bit Right aligned data */ + +/***************** Bit definition for DAC_DHR12L1 register ******************/ +#define DAC_DHR12L1_DACC1DHR_Pos (4U) +#define DAC_DHR12L1_DACC1DHR_Msk (0xFFFUL << DAC_DHR12L1_DACC1DHR_Pos) /*!< 0x0000FFF0 */ +#define DAC_DHR12L1_DACC1DHR DAC_DHR12L1_DACC1DHR_Msk /*!< DAC channel1 12-bit Left aligned data */ + +/****************** Bit definition for DAC_DHR8R1 register ******************/ +#define DAC_DHR8R1_DACC1DHR_Pos (0U) +#define DAC_DHR8R1_DACC1DHR_Msk (0xFFUL << DAC_DHR8R1_DACC1DHR_Pos) /*!< 0x000000FF */ +#define DAC_DHR8R1_DACC1DHR DAC_DHR8R1_DACC1DHR_Msk /*!< DAC channel1 8-bit Right aligned data */ + +/***************** Bit definition for DAC_DHR12R2 register ******************/ +#define DAC_DHR12R2_DACC2DHR_Pos (0U) +#define DAC_DHR12R2_DACC2DHR_Msk (0xFFFUL << DAC_DHR12R2_DACC2DHR_Pos) /*!< 0x00000FFF */ +#define DAC_DHR12R2_DACC2DHR DAC_DHR12R2_DACC2DHR_Msk /*!< DAC channel2 12-bit Right aligned data */ + +/***************** Bit definition for DAC_DHR12L2 register ******************/ +#define DAC_DHR12L2_DACC2DHR_Pos (4U) +#define DAC_DHR12L2_DACC2DHR_Msk (0xFFFUL << DAC_DHR12L2_DACC2DHR_Pos) /*!< 0x0000FFF0 */ +#define DAC_DHR12L2_DACC2DHR DAC_DHR12L2_DACC2DHR_Msk /*!< DAC channel2 12-bit Left aligned data */ + +/****************** Bit definition for DAC_DHR8R2 register ******************/ +#define DAC_DHR8R2_DACC2DHR_Pos (0U) +#define DAC_DHR8R2_DACC2DHR_Msk (0xFFUL << DAC_DHR8R2_DACC2DHR_Pos) /*!< 0x000000FF */ +#define DAC_DHR8R2_DACC2DHR DAC_DHR8R2_DACC2DHR_Msk /*!< DAC channel2 8-bit Right aligned data */ + +/***************** Bit definition for DAC_DHR12RD register ******************/ +#define DAC_DHR12RD_DACC1DHR_Pos (0U) +#define DAC_DHR12RD_DACC1DHR_Msk (0xFFFUL << DAC_DHR12RD_DACC1DHR_Pos) /*!< 0x00000FFF */ +#define DAC_DHR12RD_DACC1DHR DAC_DHR12RD_DACC1DHR_Msk /*!< DAC channel1 12-bit Right aligned data */ +#define DAC_DHR12RD_DACC2DHR_Pos (16U) +#define DAC_DHR12RD_DACC2DHR_Msk (0xFFFUL << DAC_DHR12RD_DACC2DHR_Pos) /*!< 0x0FFF0000 */ +#define DAC_DHR12RD_DACC2DHR DAC_DHR12RD_DACC2DHR_Msk /*!< DAC channel2 12-bit Right aligned data */ + +/***************** Bit definition for DAC_DHR12LD register ******************/ +#define DAC_DHR12LD_DACC1DHR_Pos (4U) +#define DAC_DHR12LD_DACC1DHR_Msk (0xFFFUL << DAC_DHR12LD_DACC1DHR_Pos) /*!< 0x0000FFF0 */ +#define DAC_DHR12LD_DACC1DHR DAC_DHR12LD_DACC1DHR_Msk /*!< DAC channel1 12-bit Left aligned data */ +#define DAC_DHR12LD_DACC2DHR_Pos (20U) +#define DAC_DHR12LD_DACC2DHR_Msk (0xFFFUL << DAC_DHR12LD_DACC2DHR_Pos) /*!< 0xFFF00000 */ +#define DAC_DHR12LD_DACC2DHR DAC_DHR12LD_DACC2DHR_Msk /*!< DAC channel2 12-bit Left aligned data */ + +/****************** Bit definition for DAC_DHR8RD register ******************/ +#define DAC_DHR8RD_DACC1DHR_Pos (0U) +#define DAC_DHR8RD_DACC1DHR_Msk (0xFFUL << DAC_DHR8RD_DACC1DHR_Pos) /*!< 0x000000FF */ +#define DAC_DHR8RD_DACC1DHR DAC_DHR8RD_DACC1DHR_Msk /*!< DAC channel1 8-bit Right aligned data */ +#define DAC_DHR8RD_DACC2DHR_Pos (8U) +#define DAC_DHR8RD_DACC2DHR_Msk (0xFFUL << DAC_DHR8RD_DACC2DHR_Pos) /*!< 0x0000FF00 */ +#define DAC_DHR8RD_DACC2DHR DAC_DHR8RD_DACC2DHR_Msk /*!< DAC channel2 8-bit Right aligned data */ + +/******************* Bit definition for DAC_DOR1 register *******************/ +#define DAC_DOR1_DACC1DOR_Pos (0U) +#define DAC_DOR1_DACC1DOR_Msk (0xFFFUL << DAC_DOR1_DACC1DOR_Pos) /*!< 0x00000FFF */ +#define DAC_DOR1_DACC1DOR DAC_DOR1_DACC1DOR_Msk /*!< DAC channel1 data output */ + +/******************* Bit definition for DAC_DOR2 register *******************/ +#define DAC_DOR2_DACC2DOR_Pos (0U) +#define DAC_DOR2_DACC2DOR_Msk (0xFFFUL << DAC_DOR2_DACC2DOR_Pos) /*!< 0x00000FFF */ +#define DAC_DOR2_DACC2DOR DAC_DOR2_DACC2DOR_Msk /*!< DAC channel2 data output */ + + + +/*****************************************************************************/ +/* */ +/* 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.

      59vxLzgUgh9^5~|zsA43xgE{>_<3{hF=hP8>! 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�J;QOXi*W(j=b8_0Dg52hHof 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�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

    mAg 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�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 z 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

  2. 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

    flx_QSz(E+p`>cL$9;eMU2E;V&m%Lz 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ƫAzN4=|2Iwq}mt-@yn{*dq7@M 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 RwOJl*`3y7dY3gzjv$zB?PU)tK2q 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�y!hUYKN5=`PG%+ z&dPrqh30v=+j(43to&^rNSu5-1q2u5FVcn*FOSebm>|!feEO2S=wrZ>$$I9k`V1^2!X%vrt}3HPsvP2fHv$~#odl8Yr7g_S*u&z^Po0u&XL zMjTYkrT{BYp+67JLyE1-K@KZ6zXi=;1?LFHLKN%gg9}xxrt<}1iWq9=g)1JRKhtnT zp{j%F2t`pTRE{c^AI4mcDLAxUA6IO>0TQY3*akq9!l@Wzrxb}hL828(J^-f`e=WgW z&MJQS6mHKcKBM}}dBp(jo3V0B}w5 zfRd2{#Wwn*KGzjH=(~wRMb>NxZzz%|ST9l}$l<+M;q?>%C5r!@z|2Y&8FN9(6y_?J zE>~n+gGz-WWdwjqg>)}Sl_E$9Qmu%;1GhI7c~tVMQ4~{gtX5GT3}KyO;YM)vij7n< zX;5@#!9%0sx-UqRqJm!7W`*}F;93-`KEupf6~9r;(54uoN2*=1f`hRR#nrXoIu*}Q zRC!BLqk(3ZLP3jFx8lu2a6O81Kf>Q_McXihy^2qm;O;11q}-`bA)pR;zhX@-$biC+ zc9KDbm|pw4isu5Ma!*me0JtGVm>+Nt6r&4pvqlt0DIIvIsG5gKj4Ec+)s86^H-H;g zgwQ-E6yG)C_Dm|in+Ic4icjc`n^x3QFVaPMgz_9$WkVcnx+!0vj-R_yumxn7vWIFq zyOoU>0ryZ&tO49pxsDE8>`{L7G&nEi!b8ofU&*G#wN_uS9$Ss2=^(s zFN3C^^5hxV^jGerkYm4c3;m1-l*?!-2~f_b8reZ*DTR!I%4evedq}CHgCU2N(=S0K zNE!4V#)6d{lrx7Y19|Wes{EVk!ePn+Czy^BcKtD0og#+82YnsBAg{E>RgwZPiQ404k#; zDY;ePl9kU~gO$t5VM=9Fl;4D7?22;J)4-)F{lA3GG^OuSkaXo02F5a!v*?G*R6ap9 z&Z|mS`oXi53#ez4t(^M_xEy5}6})qm>#1gyr!>6;c)s%M2u$Ld@}+KQ7AU`z0)Ab| zp(8nk%HJ;la6?%c3e6(rE{bM~mEkKOEK%C%%tEPhYCiyF%DOVBlq)VY5}aB??@dvYB$`cBP7{939GU>OeY`^DE)+mhvvmrAIj! z2Xb4vb~S{(%H#v^*ROml1DXTMInRR|RAy8BGO8@T2$eCV?F??uxN_n1nC^t~!6djz z<;Rq#PAUHxfpA)RhH6hPsua5A?y5%0r+2B`OCj8?N;nP9LzP1Dgr{mwF~}a(s^b{* zQf;P1)mvqI3pRaJ$EobPS9K)~W4@|?4e+o}b>brsKh@_H>G-Q6s0F%TRYU>n0TqMt z_W;$oAHf||eMjes0#%P^Li3QSbO&&URZ~^Ch9K2J6>!0-9}?jqMD;o)BcUo~1ysUR zYpJpxu9|9v$`Ms{3rK`&>c4)Ds`&$4U!>~T0|-y3d??yJscKdNa7uNQ%GlAWos`R* zRt3>2bw(wi8fT1Zt_w8Jsx(i+(RtNM4{&iR-a5?Xf@xDuK-ER7aG~l=PguF3n$rzo zk;-o+aK)-5N(V|*$KC`fRqdY(Ql>geMYVEO{V%xJ6{@?}V5~~@#iQV=RZr71cvJNU z9h<6A9i@75t*V-`ka|`9YM5?N-G2oB8dW2-DK@KKTn}N3%JB+RT2{dll-LywFxCD-FtCrGY)u%c~cfMbxdKy*+RQc)f za95SF2*P_RJ^f-ss^di%yRS-hhOuE)DXo|zszVY8AFAH;g661dj85r|sp5JuHm>R! z1DQ}&QPe!Cni_!Slxp7$s7$MzwqndxokH=hoBE&EAaqwRTMllQ`XyQ?cB}bcV7i`a zmwx!$qfYw@#7nKshNh32_d0CuRd-QL}2qHwJ?Q zsHds;a8SLHmYG2HqZFwgQa?2ZfME49O3p*n)5oA0s{WQz?r?R%d0083p7<3i5$YKf z{v1_*cMQT~>iA%Ik5t=Nz)F<5fNF;))R#PA`lQ;i9)MHoND7pq)j!jZb6TB9e|7JS zdSMF2V$_Bt7(1svLyO#b^>?$u#j4j|1Bp{tS|Plk&ZWdCLH*=^(UZF49o&gTwT-@@ zOj3)6;Wk;#Y6IZ1x|D^n6t$iXJ6}=1_$sa;O+7yzD(UJiv|D7T6+gmlrn;BH<*Vuj zYSm_`&Hm8LRexRp%{+BfHMo3rY$!;9+WR+XURS?J(P*Lia3ZYSP=E70a7F5yPhhM> zef1$OtW=#tO_wrt>I`@&SKp%-s6s8ErMXg_nh9K$I+M2DYW3692)L=fN*}G(s$Zs3 zQl0uU(yUkeHbApMy|EV;-Kd`VD}>EzODjCIr~|1d+^UvS!L420mjYpjdJmPnI@OQA zg0Wlb)1x3=>T@obOON`MP-xy(KThv-uR4al3%R3qr!1sT{mZ-1>{q+f+kaO*R0E$-;lbe0>WW+E#+zt)SuEiKcbGM#?eD{OEtJrwSo#~CdUjeShJ7CYnn4 z$2EKpOfXWjkk*hW%{(dzozRpxpm|C&GY_+l*1V_1Bu;BS%f#3j4WkkyM&nrp?`Jjk z65!5h+V4W;yyh2rEn+pB?m>7#6Hhxryk;gfd=oT@GcdD@n&}Jhm#C?w)h0=E?F(?p z8uvVq%bJ@E*u0|2qT}$Xnisx-qclx6ts&_ecP)e&8adV3uWH`k2+b_b;9+pt8tqb$ z9L;Ds0J)kEXgkZ(tfSYyK$9y4?z-j%bxjI2H$H$$k!DvjNU>($pO{36#yr5Zj( z+hv+aIwxMC>7{;ZrDpXiTv(MxW(K@kbD1LQo0??-fY)ebAAzgYTzA3*>ojk?3@i1T zO3IQOHFN)huu1b89cF9Ry!0!$7EK|&hOHVtg(~fu(62DF4$YAdAneqfTnWuCO$!x) zx;1t?06m(8{cv z;bB;_@=2&X&^)>s+=#|D2e?tqYRYWJG`F*1b6j(u&YVnWw(o%HNsWfOmeU#oB}OjV z@J)cbYPZG#;HH&+iV3=FQ(Pe2rOhmZ%5H5Vordwy?)n-YJhksFgV0O6mIc$^+Gj-| zKH5J|KxMCX8?B$d+IOGDB>c4VmIL6gT{i`?UmL#|9s;zdR{?%d8~G&wf!f@on9?C_ z<`BqX?GP_Jd2+Rx!Y(X_b9YN!N0phs_MFaT=4z)N&33 zepSny3t^V_PZtQYwae&eVvaV`j49=6n<-t*)4oO(vwZF9W#F!9qdtM@Lhb7rxDz+D zA5o-Jr2Uh+5yjfFGH@kY);*Xm)t1nHTc+LK23)yz=Jyz@(CQAtSf#d95eZveZgIXR%fOoae&W87U+6k(&4{7l~)e+lh=Th-+ zSbLwc$Oqb7T0BOy8yOgTsEwd#ZB*;;1`iY3%0FOwQaiK^V^dmQB8*LIKRyKFqI>UK zz+H7|^kli|9CYy0T^DJCaF>pG8y{x_y}HHj;Cyw1ivifD>!z2)Pgh58mA}qy0Nj4vEB(M7&|RL7Nd)Nl6d(uc zHvI!~NcUbXR1WLLUdLQQbf*tuW}&(tDP|AT@o2L-s(WP+rjO|&XMh~ny%veF6S}{i z0N|u<8?C#ibP03{_>68N#gQ?(AC`ce)s?)Du~^-&``|WCmvelXp@RDxMb0C*>^Qk40qB}DHz!lvqEr6%%xJLlU(9Nd0ex~j`9lyxdU7;>wj_xlm zgt@wP|3LG)ZvVF+g}RM&rsjsOj$*zN-Hr~Zlo!+Ir9i+eG zBNu&C4&d(kwN$(C(EF`~ikCh;57XVNU)T@MPhWc$jt=N|dTML|UDB6ORGFlo4hJAbA50I}6}|U+5T@!E#y}-QKk)(lW$Hhr zCf!xNmQHfz=wGAEJ6G@Z3&!&F-kmUApg*w)D%bV3RBSBN-~ItArTXg;uu`TE=fY;W z-cB|DO8xCv;Hva*pM_?%-gpUaZ|dh!KwhKg(8mG#l^+N^&`1+GosL;+8`{t@c+bm*IDS-Yiw+X9XN0J)==Nc{6` zY*hdI+u+9Z;Z$B6*L!V-a6*5Ta>_~la*6<_^lwdqo7R838Jw#jB?c;PhO1Ug$=%>C zfoTuJTU1^4G?+Xww#T6P8DrjtN58|Ad<@SQU@m(NL0s?Z%Y)VvKqprL`fG(mobNI zseTq?sG~jStYK;y0Ot*X&q5e$u+4=q&M>hF@CydD1y>ty=>D%}Z20RWtXwoayat~A_-~A*8_K8tc7cHMv`FrHRJ1{cC&!;6$&l^AZm z3}LC^n-thAH@w;hQepUJ43nrdR7U| z@Ei5m8w|`WkVZp|JA`e9Mmn3_VYpF>33eJ%{(!MthO8ctF2mEYxINv5_h>onF$4yJ z^cv>R1Fqj-UI&#yLnYn8yM||||9;QV`T>MPhJQYV@V?;&ohcnQygH6~ju>id;AqUS zN(|wIp_m@pNy7*9c1#)eeujBY8w?aLxfnwN0e3adq?p#-c;QV5J&d_mLG~C+^8xTO z4xWZ1Z{rDS`1%;v6u{VC<4n3CzQzwIlkzjJI|cXwqwXHKgT|sP00NDn?YM?R#_83# zyN8YM$RG?duA`=Wuu=aUNT~5`+PRJx)2Uo^)L24Cm5v#GsOEp%sPX_H(iozKW|VO; zm9bA4?^VI(DdYJkp>oFP-2`&hI84pUb4De-2+VKdn{LRrCO z$Jk0MU#>CeUyS7$AE7E$zHvQ$)pyNUK^2|?VbUWh zCvXi@Mgw)WTud_RWx1M)R3L69`|nV3H?6n{+%A*rYtY z!G)O2R74LoCHw>~%rvkXfN;|XYoQWha^8WtoHo7OfvY`ZT0rHu7}N4U;Qg$rmDZkf zrYC4h=S>9^PR5#^q7rbNY3CsbFPQKT3$bRI`q&@|CiYqwyJ(6tLo?ANr*mtUO#M4y zCCT&x#aYQF{g)t@P23&umttZTV(f~^`$-5>O?6)akY>us13caI^?6J;!(@39B-1oa zXDhCn(yxQdGWkl^gg{EHKq*{z}1@OC4$bHFv443twgnSyV?bhC*u z4q=Na^K}4PO)I#t*=G7_7=U(DLonuY%cP>#cb93X1zfjj^9A5~OlyX~-8L2b1Kw-$ z{TAeo=?(>ueI~DMQ0X`Q{06KHm`s$R44U$7;O?4~CV04Ky1Ed;A=4{$0NgiiqBwcj z)S3oI4@_}CVlE@5s^_8d&{Rd;$5GP~SHQ?KZno4Z_2`gnnsHbC3>zJ!bbv zSn)E~av=0Jzi|vgAM?`!*xYO0O~=W6&AYaO+h=~{3^e`BA5B2h-~4R|g!|32sCsa~ zyg&#K0pfK%p0 z6i-B(uTl1S+I;gm$Qg604vu2XzmvbS<{$O|e$Kor0B+BlZS)aTthvzuT)a6w0LBu` zrKg~I(JYPuNi^?~V%C?;9sdJKGB?nonrv>Thwrj^IW03O=C?YadBvRYI83LSjr8oM znZKcXmT5-5h&RW)<{0BWKZRT`2xOTH?9HhhiE~UAh=0Pg@-ZB@Kfa@}^rS!4e zTu8U4$NV&vu5Oz{X%fBWLOz6d%nK-=?lWsIL$lx9_7~g^m}k<7$U*Z-9j@rEIqXyT zyJxPVpk~M%-vgEV=9A;_Fl_#n0>KC7ke^^>#GJkmnq%g#y1<{k%@VR7rgvF7DPY}g5nG_?VQIY%xTht9(w04z zrBwOyvOH`9@v)3jCuXlD;~j9mmJuquk0j^l&pFx;v$zlSRX8D|wpL9!x z12!`(&SxRavW(lIl5JT=g@PQ*fmtBAmX-au+C0m1^lRo@9{&K`HA}w)7hPa^mO{K4-;&(Z2AggO_rVXxA&VZEmZSwv54PaSrY0%#x08ufJ|7zX)m6%oTQ4xlqGWoOix?R{R6iy)?HKpbG3f88)I(P3tbTI zw*E#xqla}1rMaHgKj`J!V;x-poR>A6HdAlwFcourtmnr-_F6SRz=N;#**~GO&ss=l zO8u+_6mI!jpI8nL0oGR*L-U~ZW$LR1S|6cfK8LJIDt{lgM$qORWIeJ0j)JWc`d~i9 zdZGecsP!P7ZV0pfwHI!~t=~{Ae8jr&IIJAAE~WSOxb@%>XhvF9)OC)sYR};sPFP0` z@Nm)^O;5oot1cb5XsbR7+-a-uQC!~{>#HJgG1f1sC3)6*=OtJ1JKDx;}=nMC)th=#tg_0~kxPdQdo$Y&}G~_GRlzigZ$}QItid zS;O~Zy6M(g?%*=4rH^1N(;7#6@l|WmAqcaq_gY~y+q!Qb#&WE8sBN5U4Wo!9&-&$6 zjOAN5Z-?-jb)5^iLhHOhT;C0A-7femvd*TTxY(Me0ieWMNUi-+>o0r&%B&lfLs)K| zPZ4~Db;na6mDVIrc(1Z%w7^QWRh9#lTI+{@!gQUL5ei(rl|@HL8m#VAV`;QX=;v>; zdKH5-Ti@FR(qa|S+tF&hK#kNkYu|O)Y`1p$;VyMp|2zRt5+n1 zx2?a@V%2MXDFfUcYfuP0^jUKr!(95UQ4){=>pkiU-LtNySYya~y93;P>+V-!df584 zC*TjPD=6U~u}1$3?xFQGop2kq)=*SAW<8t=)8kfWYJpBzU+RT$(kf&?)5W%)KEiOd ziRsL&n=Nt!aPGEERFB+c+x9hV?zYM1W6Z-AM}00&+i%o}+hePt-kFyzsU4T%Z5yIc z#mCk_X~aI;3(ipSvpqtIpTBJ>ty24KoHc6Qw`#*tv(!@=WOp& zzH1TBuSwl2zc<7_kk!Po^`!P6Lvx7}C(F3~ngA@L>KuhhUxvi14kwkF#w)V#cG zGgAncVjKGbR<79U=*>yBS)m2}&C3ozXbo6n07X4+b3LNmt}J`G{6ZJJ`R zJloA5Aw z3RZ55xDL$<+na|0ue7agf`=;G<5cCSwkcA8yJ_pA9z%^y^BIiQ+OECZj%VqfNXAR+?yozw{Ewrz0&uE)0hE^xPPMgh29+r0&t*&W-0PeA%?^Ql_jZ&Q2< z_<+qgAEpOwy+#P{+J2q~z&)FIB^(Xe8viT$+S=*Z&9IF}{qP62<9DGlVjIf={Gn}> z3ee-WBfc1$uzfQR!bux*1B6qy@2P_`ZF^x7#KrDT4H;K^HJ#&hvyW1O>TcgeHRE0O z2|8Q2+dfK%h&}9|?f~($FG&H}W1kg{nR(eoJHdI|U!;h|$3BZH9|Bw>tgZAk@kU+cA3*?af7Yb?)+mk+q z%^>?>z)k5tR*FeJTUl=eJZZF#k%_H`yr$Hj@{gfpiwRb6@a?HLe z5ZrM)_WZR2iLx)zLU_V{pZ436c4G^0r|cKV<{5kbihi|3(GxEA}wDXQ}oBR2@mPw@^7O-7Z}Ml??l`RZz*a&!EWT zs(p7exGei1ty$UjTw2|7>_;C3AlLqQ0%n$HUmpi9-`;%+{;t`p=(#Sin<+iMZhwq= z425mWk?+7?k$w6-j1}A0QXo-c|LO{arFMP4)%N&Rm_)7ph0e@gl2<%1AV04XkSzVV@-C&DFB-7C5hl# z?2k_3X0_TGS(sp(J&j(ccKhW^fOpt`pt!Zu{t{wROJnv&t3k%?lV8KiguRI3 zf=T-`KY&cxov5NTZSSN|#l^AC2gY0--~I~D&G7^!w(bt^e9UZ@@P5{lXV9DC&8{2jko0od>8r|!-H zNBf|Xapx^?M;w35h4%=DCv}~VI_~ZUIp)~)E{q*__){(u=_sVKWR&A+3NlVO zc03Q^NypaTK~6c=Q7t{%v7LVR(~dVN9XR7irc6J^(MwtDSw{iAE9V@S=odThNTuIB z)**j@u{g&RRX{E{g!v%xj=K9$NpPH|u;QY_hko}&hmNXLmmD+c@Kut-@g%rpN5?0C zUv`{(4aQO&VgGGXjx9T&lIl1>O^`H)vIt}84l}Ko$WJ7gZl)v57ap!U4mH7FmLuz3 zkZi|Z>cHhV;=M7J>qz+;!aRqi2PEHNVgYx}F+!_pf#VDEe%&$qU0h$G!%K&G-f&!? zo<@rWm4@J zejdhdI%W()SmR(u!&t3jn%4O`$D?krS?`F*g_Q<}jY6tM$EQyK*W~#69stdb(mqV7 z#c_pVlvc+(jTmcld`$^zyQ8fbT!*8Y4hVEQinZWwIrl;^dIJU>$7r9v>zJlT>Yn3UdSQnge|dx4ckHBc=CH$+ z>RAsQOFjZO;)pGPzlV;ZGr)~H{-mdF%uz$8#~rF7j7>Py^psCJ6563M<#@~+xM|01 zA;w&sYp56E>b%5;F*oPIS20g_=h<`%b~%qwQ)0Js=xiACaDIz^I8SHBT)_7@KeZ8X zFXxr{0C+pc?Eu`zd7RE`>~%iU0nXQXJC!i@ITuj#($Cq09%z5(2rF>=opULWIN*Gn zmb?Jx(jagLozJj<3v`Zu4gL-}5B~++Vdq~Hp%Uc0Ob=th&H;1{AeM6mpqJDpv z^XF6)4R>Du0_JkWc`=2r5ze#9p?TEVi#`ZB=KS9GP&w`_p>;meIhAVZQO<5u)A>I~ z*8!Gg*@eXqD;rieG_4$|W#u+=eS7cyeJI+{GILgraup&&S;__hK@gBBLjggifFN4| zk*%^s5EKwmf&V`LfBn~WJkL4jKF|Ap@B2JwJTHYaeK$cRf?2Q!29eB)Knz}FzBK?Y zin*J*|Iy4nw6Mf57gFRH%d9PdN*r@8#pUr#KAl*)#Pp`BW&(5XA8?e&RMNqoBc8F(Hl>C9B>qh~PJ(MoiU zxjG95nN0I9;If!)Dmcn!e!diQ$zgs{1X(U~oI3n@%t$(mdY$>Msq< zk~A+ea^GzzP_A^VBnAsC%BSrpCnVs=47+|jJg=~=dl&ZEv%qefd{26n(4ahJvD<3M) znWsm9GQu39AmatIu@eR_nRl(hy<$#igvuy$J_9Oa%pU3$j5GP;AU3REDnK7+Z9Ry& z*s`wp!|nvD>tk?stnaGf!Jc(Z4z~`h)!*T29a(BxHBPdUcY`~{GSc4R#9}XmrZele z3-IT{s@M)pSJu91&~#&cvJPOUS(E+)${E%hhoR!mT0v2|2TMdTyC=)54sN|zkzOF) zEZs?f`LHY~==NnD{t}!Y>+MV!__KDogFDNb+z+<_tg{Mmfvn*}a1_LP%?_7&jx|hg zcrfd;RyYb_eH{h6^Q;=GU4*h0tOE&Sy|xMD0_y{MY{FSxfp8ST%BP(`8&3cVKIE!IrP-ilpC8aMqF0sZBf+Vn>pNEG;mYG^9Ni2JMMUz?OKg0Yo zYXwz?uCU}(=t*G>(=V3FnoO8!tVQ;i;8oVKa*%XZ1odb$SSu)6yT*zh07@n+{!Nf9 zmQN>8vRNGZL^p@E@pVi-mz5a^lsuM#0_5u~|Htr`&l1wwTENQ7gi0angGP`Wtc~=o zWf9ARR9(s+*Ou2mT(hK75YB9#-o&Fz98?r@t%x zn3XmIvObpWX_)u3-Y$l}C#+ExxTmZ?q~HcvcGTh>WX+>bGKN@3W8vW$>mBOK4zsRH zA$!hZeF`$d+K>U+3)b14zS&9h?h$6E%um*=ue9>w>03FQ!oVwK^ z?BsHA=h;KljR<8+7Gg?aY{ewlU0|>N2_C}P_dkb91baPwb{NTCOnJve_QLlui70lp z82+N!@f0k?u=N!7#q~s`)>-!bJ+$eBIL0T(%X2Q-Sr#>`Ron!!Dj*6juwbQ_Ig^Z zZm^eH!mfzjaSwMw8lD(R) zwu*g%0dk9-PaUJ%?8~%oRqF#JtaSP*?F|u)Uyjm zVb{R6p~7_|Ti$`eCU)kpAkFMIAHbl6y^NOTR<0sEg7P-$cD z4u+$4_7{}?cd)m&W3ZDg(BW#k*qOh<-$VA~nK0;PFQvHk5xe6*kREno76yCSA4I|X zV|H999QCmm&xGAm_A?`71MG#_fF5L*IY2hVKDrFkea2o-iRLhSfb#d}?2WW$jj&^u z!utz$)*xgr+1(A`Ua|LOLuHixBoR{@W4}ee^f-IXU+`|jS+NP+an6sv@LF?nasTU4KS;doKT z;L2G*6LjNfyP;afAv}0-b}j+&=GgYZyANkm z8f3nlSrqX2alWwvia+P?3P7Lb1k#cr`2?+ReXai%mwC7v_<15_??c2i=M!1%n72J_)Sh#B*02IdJa%ZIUf6@;jp#zBgg~hD5u&5WQ=qAIiSZm`wxS&;SNwe;ZA%-W!6< zmHUGLj@-CY$6nFi`Dz}ad(zro`AXm9I^wEDhH)l0u8C;jkaCD73mtyuzZsRYIWpVFQJfF=SrDr#X zJN7w9F870ZFwf)8{1OJ&xlxppQ$<{sU$)x0I6J zo7{&9ASK*Q2S7@>KmP!*GH%OWppV906SODd9_;U)b76n9=Itvw#RDyk29@*1d<=Ebu(0^-fnP}=Foi%)@_KQHM4 z=5m(j_6H0Ccyc=D7|44q8nX`KxlnQC9B&O3!-IK$DKoLk5?;*uY**q29@*LjK zZ?MbdHB+BCkN3@QxRmR>DG}iEdC$@SUBLT@j)!$8 zChzA%P$}VsQzTc)o0JO7GG37%2FrOn9YHF1vq}M0$@}wb$f|h9@4@^QuZZ@|+q_Kr zPkvYPHqath!{Z#qU@gzz2(UZ6p0{C8$9pFPj_&fVQd(Wln@;z$f%lwNutuJ&1u9KE zZ+f+xd8=p_ZQ)%c@2xziQQY!-JRX&O?(-5}fqTGvMc;5pPc@WIa5$_d$Ajv**CzF)zUq-urmRs9Dp`OQl`( z3Ga2v3ZC-h%Q1-oUbhZpkoOkt9YZ|Ry8wH}>-!TZ!@Pg5!tMocm=5o}S0zVr7` zIm7p$nw2|0sR^71-{MQ4c=8`p&B}|PM@fY@|I#~{nGb&lb=iFRby+a*<44lD3x9sz zZa|;qPoT6qfIr=VXc zR06OI{5^-kh4b51040KdzzcSf{Eq@5yU6#Wj5dmYjso&%el;ytG5m>Jff>vHL<=sC z-@6^q@%+WV0_75aA{DX{_&ma+vU$G2enfxHyH?#OPN#L^iXKp|xhkv0L zTrU3@rPX z%YsTbKXNvpAMx+a0qNl%QA5_t=beDt$9xU_EyOr0xK*6Ns#VVlP-qO&15j z5jx}ID40*H_ent)8wRHYL)1rb5~Os2a~2d@!OlhS4TaLK0^j+Vi<@8*0|uuB2dMpf zMxg!wr*MKb;kYmlf&C5;PeC^2w_bwgbU5-BgwU_)BN+39xv$_;J}~_RzK<~IkN*ZC zG|vhGsVWvAm@x<50|km7F&HG6umK*<3EU_n3KqoERvsewZya{#1>wz*g$gE9Zz4>P z#DnaDpq4)22^SPmF*QPPhl#;R!4UOAE(*^50WM1LpRV+i`Sp&N)!7m~3o-O#1g`X-%Fuf04uAr8($UMRD z*Wj)T!X-e-7ci)kRv-|GK?(&L3z**!Y~ByMBEiSo09`D2Nuljc!P%d|l?cA0NT*a# zW`atYV6hsPQZ9%*0?Z0QZ6dCrQZRoNRH_6Ed|-D=5HJ<8+k)|nfUXv(uL7k;aC$Ge zT7i)ch~E+XEdf_2IBEjeUBPcO-Fm^b5|9SLGKzv41wPwh*Cbdn0uRlCJ}N-B2)r%9 zwF(N~gUUUD`UJT9f`nnXeIRfO1$3KWC*7=e!S;<9>=4ZP5u{TP`8y`qB?zaT1ss@H;hELijgxIV!k#ftrcFQ_;1L~wi$$WuXO8_0lQ z2mSnm0_#|iAwlDD7(5d=Q^GMUkgkWL=Ynn)G)DxzlmNUCY@?9lr65^_xx5nSyx?e5 z5Kghim|%a#CCsI~Dq8sGL8!zC6DWv^74D|gGEP|Z2EgKlN2zmuNw};L zDha|*sN$I@H2nqWB%uX8ZplJh%C#>GC$hj@5r(gUU5c=pLY!3L1UhMvCj4eG46X`$ zHb9mx45e~(hVVmrZ?6fNM?f-#O;p#<68^LsDA~ejI#7}$EYyR`6&|IWIZwEnzVy5< z44#N<$QQcO`&S^`p#oPZ{C75>ZwTeISQQBm(wASw!o7vSyeX`t2f9R9bPg(|!Vl>U zC=+^o46t(H#cY^Y2>&?_u2MKGgrh3qnWq@MCH#Vx*xN$OZVXlnA6CPzM)>9$Xx0i_ zDJ{Drw6z3go$$}^FnCvJ>j_dX+`k@outB)o853+2-n|EuCZY0QaLq#ZdZ@Gr=S~G_ z70#g++CAZ@EmZCcqlkMToGF8On=or3JhTfxp)yQ|F!V9ZJB91k!LCa79v{u0|w8F2IyvmijpWR2owEBG3EtPP!lx6MXP9ii4Yy6 z%rsII{R-YMiuy-!(NUtGsVNvOdf@_DjL4Om1hJx~KcEsP+CuMiyl56((IwGeaqyQQ z3fu;jMA1T8cauby3&ACewv0jLvM7nJ=!%F#;ZKTakS4l7QQlS2wF;=D zi%fJy8KSES*j*DTb^tn4B&5tHOB71&yll~Fs<-BdQpAwuiZZBkkSE$qJNk9eryGEh zFDlCeDG&uxxLhbYw+~=9L`}366p7O4d&6RpBh>(Jik1z-dx@xbK1iu(m|6{GqCCok z%S8{m!BvRn)k0P&3Z}|Xm1qZLt+zx)_b_-{WcU|g)glKUa5bXAxscV0#-{@Mj!0?5 z%<4pIS3-7Iw2u!`FN&cPiVdP$UjeL9^ywf5n?yIlK$=BomSUbQBEbxxw2DgUsNg-3 zS3O9ZNboBhwToKT;=(#ab7Da{Mdb!)c8Q!$!~CIW%V7+5i{7X7_>t)3e*o(dEn;CV zy`pm3S00Oe(&4sGG)Ct``b9hUfqNpdcm@woMV>JL8xXzY1lgcy;bQn35=||K?3w5e zEeXS-h&-q~7hR+CAtR!{sV?OU+g~#79-iM^UUFBYwXCQ;HQYUJ8Ra@uqNq#fyKO4U|jbLE2Xm#O}0d zB#PDlLY5@{l5+H9anC7WUKSsq>hcwF3(Y!3{MkEzP8Bbs3P_qbo+Vf4hpM(EVi~<^rQ(4yTv3^L;X}yE#l}dG3UT!JkX4E+ zKEkZ4#OmMR;g(oB1t_=0AD2N^Ek5E1QX|ft22v~DMk)Rsv4oDE)QN-MhrwNOSqMnI z_*<%iH;8|vGC(@St+W+%iu0*()+JuM4(1QVlRt#4Tl@yapO3^nQh4YQr|-et?G+E5 z0(mU{y$7UE{0p@*`^EfAuzMnQqYHZ~_Mt?2Kpao)gh6rqH{gcE3qHqOo{5*x%QY-M z&xHAN@!fx*G9u0hf!z!7IyPi4#g3WKd?h~iJyb@;KUqOGCXS(!(73qs6=XJ&ZT|rC zxP(c~6I;m%kM^2I* zb%1u3tPcQjkzB|Jah0s1{MJn}xE$V3OXjo!`i!K`6P&w5PAxPKN$Wm2*_E(Bx$(;E5Y^I)Kl4RCIfF(;d z(jRxZEZIrR=oN`%aD9U+x#_2|6bT- zO5EHq`7FuNByic19NM*WB!Tp`K(6FA1yOkt!>>TOF4;>fX1=6xJ`4&Zc~np=lq{uB zcy34*{RYe;NyY+rD3<({3%i?=zk5JRBn#~UT`D>9}jcR^|;PpKw%M`C#zj_M>cegyPg$pp&I z>Lnxels8DG(gxiqS-TIIO%j)AfHh0nsq57u5xowTR>^KUmU&NdY$mw-l8U#0`9Lyv z2p-xb-@c8(cF9L{vpOVe`k>hrsh=)P1 zi}*O1!8~G9(Go!0wsk6211r zlBT)v@LaO`GGrqXC9T&lB>&_B^QC0QM*w>z8LPw0MkVeKfH@`!_ycz1lD@yd*+{od zfb6(bSq=}j(%ti5a6)=;8V2p8b~k`xFKtbM%t89wLO61i9;V2{NqX806=&(;G8ni> zZ%)Uct28+R-rb~H%IZ!_-=|9A8R>J%E!?H5W6<=FdQu6|QyTFKgI?0x4e;PCom>tB zAL*KYaK2L36U@v{8oU|AUwWFl+-Id<|NkA6j=lpfP^zhcEJ(_rW%Qi1@h6xEOP|vY z6e6vnZ1B8vI^D=n>6#QwB21b>e>m%cbfN$r!lkd%A|4^VMw5t?ws?TMC{;Uyi;`ZV z$T3>V8-r$ybd(~2Sg9KoyyK)PW~jtVx6(0+OVTVV*d$2*%)k{TN?%f3kR-iahbbjX zH$=kjvh=%fa95;1(DRZaUHdwwlqwCQ51G@XYqx=1l`f=HQ0daE7EsBM27CpTYtj%Z z$!1D(XnD$#?q7((Z0QeC@Q@>|pjAL9LrcsesOMG)cebz^+;PJw+ug(hbz+Y?YQ$aqOOSIW6h;rQ$?rK9FAd z0$iKaArao&rE{qg+#&TE16Ze&DFI5CG`0iWLur6L{Pjqua>4aVUt~h_vGl?Mp!7+* zDk1Ba-Z_Y?eIoTM2KQ7tpAx?T>93R*4@xz($PGz-7sKwEbTJny!_psU$$Ku{M{nGS z)SvF>3+b~l7`&9G)1LZDI=BETqtZ=ZznhxO%KqF9nU~Dl4ujsZRdfc~ zM;5aZ9(-jlY2Wmd_1p#Vmp!7g)>&Bsg<=7+Y4jmwpzH+Ikb-0#dO)9(RV;-pSoSZy zVsSX;DKk1@N>wt~9{_zz z=AeS+ZP_b2|57bmu^8TKWc@Q?S1U_;0dhxHkOx_vESw&~s#i-i!|s9XJ15w+$&B=Cw#z2q zf0H_7v;T%cr|jgrxIJC6P&!ojQ1%6-&fT&sKI|UJo*aOzN5-HKwO4k`8M4Q+0TU+J zC-bHky9C#R(HB*K4xoi*R zsUxzhv~RwUJ(U9GrEDcFRAmVEuVZD zG9S4-2L62I%jf{0pFH^gaiqMQmY}op>tbLA$m3{d4wR=Ihod0*xAaz>lOLl9B3NEo z0}>+tnO^Pl^5wKNhsrH;p%Ny4{U~G?$_<;&=Ejmz?Y2FR|+ zwO26D6#17Ea0^o9#T^(-ljrS+%2j#fAO_Rrb6$YUkh@TXbWOgKP%`CdbSOJZeuoav zWy?RO5H3f)We-$x<=sxWb$Rkbl;d5O&xyob^5vWL;0ojiX285qzK>cdH{{L~Ar;9} zXxlB87ykirQ+}Hg{t|iVQ*fnn)#rdNlQWxuQZ6q)0$GLJm2&h-`E?PvD!DUN&u_`6 zT*Y*6%iSrhu9gdn!PUrbWx~8x9CbUuq45NAfB5K@(3!s4$43I46-444wadn$$yi>->`gy&f+|mkFCLF zj>w~ahQSMYj{^)|%Jo(7{z{%t@ARmAaVN-_{7yGi#^p09)w5BU*_hIC#ULH6u~q!# z53m!8aas%P6!Yl^uvb(jf^$&3-Vd3hqNoexq#~cb<2$8LQIzMTNTnylSrNDigD#34 z3aGd$Y`%sEH-$4ba!xCF7r}WboR;CjJQb5RV`g58WfZ%4E0$1Q%15E|fr_uY z6rWMW(_f*aNcF7ZU5cm!6ep?P6R7y<7x)WO?4&a2ImLCllwgH_5DY>To7FHsued?6 zRH!0l8)RXMIEvCQC|qa>3RetL%_>3>H4P+EF{l98Ma8BW(2P>t+7G*EMIaTxVicd> zge+Du(HEL=idHI2#4A?1fLv0PQ3EeQ(ZYaTqGD4ICYYpn{264)3f6SY?6PA1PJmre z$Y_Eo3O=RPsfv0xsH7S>fKJU)Q;3dP0(fK@7HP{*N4Q4$N3TZ#%Q zf8SPYTMx}@#g+n)8pS#TuC`Y338mF{6h>+l)hSYk;OMTRe*(CAMPL9>8Wf*=46ae} z1*O$Z3LfRR%?dAXV74eSQ=!tTXrOY@J;mKGz};7rhr+`H#av1b+7ymdi)~k&p9q5v zMP?Ev*r}-B0?aOj1(jVND$40-O}E0$0Vf(cEVs(VM&G0F-1EC$m5E4-vDQ$oJnPvkn`a%88FLGe@O8)vQh`S1tqeDdkTM;GC4NsAlD?v}p$CqAV)}imURiZ=vF*yb%h2 zr{OK7ST~P)l z12aYWYdJ0@Rr&2l;L?=$K7_xkO70Le)0ICgfnA1jls1NI%D4AnFjM(j9x$_%{tDP- zD<5!i%X5@tRJzJl{!ov>JmtZMK)J5`h|;orWyw~U7bqvt5sN})6E%EqC?DN{N|Ew& z0S1eetPfy!Q`xx^C?(3cCK!||zx4)JrZiKgSgvf^jll|KRTN02vLFWLRmv08sJf+` zaubejE5E0*a;@^)gCKX5Y3HF*r|iB5a#wlh7ogNDKW>6%gYt)oKxtHVT7fhvzkDB4 zYF18`fwU+mDd4tMd2J?8?kRWfg86-A_d1XV%1{GP+LR~gk!n}|OPP0vvfcxloyv8G zaVcHOgjpaDm16p?u3Nd}9LOW3>l8ruC>2z*>Q!2AfWc#B?=uYcDIZZ=u3s7d2;388 z>K4eJDwp2?H=qo-i3tuWH|&R_A!Q~dG0&7|e+C&=@@W};t~|66WJGC0Y4r=`D8<(= zm0SLV`77mJS}{kJVSC|WOgVuLh>t5HCWEt4y*C9jJFYq(2{2m~gSLVbDj6+ScBCZ9fu3AEcEDzPiHv#Rbxz0C9!I>MIFkK`J*&tIw(Kda=E%I^aVMyM?5j7y~I#QPu@RY&Q(RFtZno`Pr;3UT69x0$#FmsCjY@y4m-pFky1rKV>$Np*P~gUPCgl;U4jaUWxXS5%es zXAII*bEs=_RTXOi59z8fiqud95MLGo4aPKHW>Dt;S z)i-|wtXB0l?TvR-2ls%~ss5aa%e<>PN=KOMRo~Hy(xBSThk2ta;CI+HsggtBs9EJi zb&VEP(m1$Q)ekM;?y2k?FthurZ|8zMPz?-#w5i(2pk1|e1H5;rJP(8GRDCXjL6<6o z(*K95U$ublR&{sdG9Rh_nhvf<^@w^ey{ZFrs_d~UnzF1u6?Xzq`c?*?t;Nn z)sYMs45+?VgBw&`{S0o0Q~|qS{!FE%;CWcJm$HKAs>5{nV??(Qm*HkPs;i5^om4x}yK+h$^$F(Uq(1ftoU{5;ET-$Co|+A4SGCI|%*9QeON;So zwf_T{pHXk86T9x}obBK|)PK^E98a|aRXM!Wm*~`ox4MXqboi)`biVq z29yBxj6^sJRPWr5!60?!Hjs1be<&OYR_RTq2;E?vF)AXGBcGyZ}1Yif)C*CW;CRD;M;|3;q)WUD#lz|2v9O()fI z)w7?1%Tph9g!y&#+x2jpuU5{-lnT^i)GH`d3v4j!8|vM1pcJX|=uAej`Wqw6Z>pEI zL#0G*NzK_(^(HzzSEg1`&{nQ~K^tv_TC2vCD%HnmbE{Ij#=!iRdLz97x7EvRU{I|t zvI415|4JuiYSoE0Aa~SHsi|A1p7aM~chyc*H?3D6r9)H=>P%nA8r2tCL7LR_>EJ}O z+Q5OVMa>unbgO#rb`0KAucR8peRUlzK@ZgTzXVE~I?Nj$+SQ*@^}Ivfc?G0X9ZuU| zm-^TMP#&rm--UU%dI^PFkJQF*;HXDEK<$KH_4qRwJXZHh0o|w0rkmBTt_z026SZ|0 z$W!%8KiCbZS5XKss9xd@=ppsT6JhX7{gxNFVRh_6*gaQQQhjMeokS1OEA>$d-AC0{ z*FnbAqF}fkS5Kyvh>fO>=5k!4r87genjO8E=LtsdgBs*(rxCNRu)jGdriLpfEdFGoRv@5KZGEkn@_S2cZ(G;nTVsrU^U@?tXu{?}C0Fz7 zByf3}f)C;Ex@LA6xO`37mzZ^d#+?h5Ld`mw^$pD*wvZKRB54xEn(yi3_M4h#2S7?R zVYV==iu5ko902KL!+Zqp;MDd#g#5iZ#bYIY7`VFcWZ79 zVepY=Z9eRJGQ<|U=F&owjnfF9A*Isp2G<~sc?g_oLyAgH|3B)Nl(YC3vA z#x#xpf8#Vx^i$br!(W5<p~cu&n@QoTpElM9=KfmMPcT1=^#OJP z+CIu30=4_O;DWR%-vi~GmTeF7VC}k%01MI9(~EvyyD=Q*q1x5d8w}IV9tP$GZ3rck z;o2K?DG^#vTC5_qFLXe;s9mAOV3d|ikz=&>?0XDq(TqR7zNEP?qoZSf-vW@<;afZWhVw!%@7RzN#?iMEo0no{i~S|G}_ z%Q!$O*S67fU7>v=1*B5z_z2ftrCrzoa!dOYRkv25*Xp$3 z9%%m+g0yKT(#h#|?L2RA9omm*#q896y#Qcc+Slp<_E3wDT=0@;r_(0&Nc%Adq(^&l z6%2Z{yW+q-*0$~k*QfQMytrT6Pn+-)?ORm&daC`&17tuOyav#N+So_9h9Pb9B^W%@ zdKZBk)-E{$yXV?1^r!Jgw1=4BUTMRrvNx)&41?yFc5?y9xOOAeaBXzXl*=5~9XkTf zR(Fevcqeq3IvCjLf@sgN*OgEu!$Eh$2oH|Bwm%^|soPbD!Be^>iX)wLwsff8S?4$j zgD$$QZ@|t~m%;;gMi=7=6?ff#6oYx__V>esr*86x;JkG4wzxiTos_~*AKfVmkbQO0 zRI2vV$#%n$zpjH8tFyYIau@{YOshcxbqD@~zaU-IXCUWvZ_%0@tc#feun=8vJIv4P zM(EIFsBSZ1hUwPz!R-azvp=C3u3Jh?>j>RtS}`Ma=cvjbt!wXvqZr+nhoBOxEBXlJ zl5SoOR1$O>XuVFlWt}h_vMV|t3glCCpHijts!o-U!F1j4OmG>x3AE{F=?=N$ z2hY}>vxWB@oi7z8@^pVWf?U_x(k;l>J*0TIK=;Wf&@9xwO|8Wu-LiR*73&75s&Z4e z{42OE)!p9;yE5IF7MkU{*Ze^$bj((0R_ZJ%(7mPmIUC$<-5xr+SFN)?1h=)ia0*}V z=+dcpTc=aK1%G#SN2tA4ultqi$&ETwDm0sPKP-l3vyL+euohj+R>)d)_e`+6r<+v? zl?OUs%23*L-`QZE?YbaJ_&anzCqboCXD0&b(*0I~c|O#APDf9=b$|W?gGaiZ^imG$ zTIh)AkZ#JmAkTCMDdQW~)!9PjxlZ4QDUIm1Edull-8X%Zz0_^r4$N1&Xj=S7butPr z$8?9%0X?o0z6Z`mudjr`as5yp3~cp>sZe)9f6@WdwbP&42s?W{dopAW`ok0~IO<)g z+;>v1pbGLSJ-$Q0Bdkvzg3MWe?tS=k(NCmU-&KEY38v(x&-@quPV4v3PI*S}e-50x z{&&iAJoHHuq2j5}*Z?~({rMQEc=G3cZJnSM=QeaL%o6b_@pUhcm$i>C@ey8KOV&9?Z|{E53&;RKJ6Et}y-aK@48dAE7=;xPI9@$RhM> zwm}xDZ=q!CqCS`^$kF<>6o$s=gBO5{)eC)beR2A6e~@_ndV1e4=|8uJEJ1(qJh(*t z8&pj!C5EYN#W0$!-!PtWxY{X^<~ z7U{qI3zI0;-=-sDH}#%}AS=;Nr%Kbo1eh^ss1gBSO)ZY)R-RBC)0a0q~AUp zvS<4LD6AjW{}Bhf=lTK($cX+dW!^9J5$B-tQt!qB^eep=RZ&OvUsE(XrvF?C@8kO8 zufg2LaLpCuxPe2BDqF(`FCaT%un+>w&QL|=MSH{QD%d#~uBU@@G+d_>OD7EnGoW(H zaF*UpC&O3-%$*ITpF+jO;6zWktD%p64mX3&3*2dgh=Tkx2FGu}xf=#9VM-o`#%BQY zH0+MRJiQE_?J)N?wvv6B!7^G0M%5Z`H zIKeH$UT$+%Z@c0<6wpppfdWVKMzU^#wpQi z8`{@Hv%~N){f&@LLn;@VU521bz&^ z5Q77TlnVeGH28_3Ib=Xx3D3M?8YNUC2Hj6kd11g1o_RwdZFR2yK;#vnN^<+!o`B?fJcf7Jl6CGu0|uRpFV8^5+4yD%>|Bf^v;(;s%V;ZbGwymDveQNu9fLVz45Cj!+>M!Z zbiu=TCKJTdm=}m^_cHFj2${F>!*ww5F>a>=fWF2V)SK`#uArC8-*}O3$XR1#98>~~ z!2-wvjS*+zHpuvlg0FMNhE?E#jR_RUhZwu20Oh=~csB+w7`wj3V7Red2QI?+`*Qe; zH1<-x?xL}s(ugSIRC=JJjR(ZI%otUc<8$Bt=&oFjr zFnG;)l(yDP;~zi4F3T8C{goVJz$=hk-*!ndzTZ~#6xK`t~tGI*rjGebIc;7f41oFT*kLs9h#sSL5+Ko13 z*JWII8YmBqZZ;U~HpVG2vq#2lXEE4goJLPwukmOdz#bdlq8eGB@g}8~{l=wqvg3(S zOn+|Ssqr4I*MmmMMPLpY7gA~GnQ`a802?}&UBq( zH+z#+8aM~j=Trc5H0`AQ=%i^qeVlp9&LlbsX%rI~Khl77`R zOy=pPht&MaF!fCb<~7qws!wE^_J0eKWs;2nEZcO92bCPto?c+)nzqlyV4i97W{~S9 zr~5$3H;sA2yukF3sw#!1{wL79VcPZ~Zb*?SomwKrrkxbb-Zb_82~uK`SOBxsbd&B< znaPKa--{Q)SACil7c!JAA= zH~?!l3%$9k4*nk%eBXJ<|$BmP2cf>(r4Nj4}*Twqc(s&F^LMmJvDLjVK88dipAid>0@hX z4w;OnF!;>0$PXm8uJq(VSmQ&wp-1H6oezs=S3S7zw zbLu9T+nIe=fY_U-&<7I^=J^z&I+~wu1b5Qxd;$ii%x7kTb27WpeQ`D)qsPX@oI}f~ zt66X!P2^b7AZ=$0T=ghfuKquHdGY6O<=E-za;=K7%8q7n@ zWnV!SW?oqV%?suov|Wdr7f^B#VP?}Uh%|qs1i5Hlash);=3l(wDB66RYKJlAC6zFb zH9vY2B+gvbjd>=RTaLneqWLmyAxUNnda|yVS5T)n#eDP%22;&%)8Fq&Gw-JJ`d7_G z6ep*fkJ96I%^dj-P%_O?$KWB$Tze1Z+2$wTLY8Ab>I0H%wxc&7&n%?H>blwHD?sO) zMgQR%3e1%)FfTNh#6xz&JTeRBMdtTcz@XUtycXO|b0e)GCFV4G5lYSbXr(PP2T)b4 z(wvh8lq&OzA3<)JXHisg$Grb04C>5Xmf-H1r&5$xZ}#{eDh=jU(}3A%PC5u#i+Q^x zWUXcm1Kd5c%PP3NZ}v`xhX>}ROlY>5Pkn)zb(%Y@G1z5ZMQ!Sb=3v^Ey3M>KkVoc@ zQP}mEk9`T!XI7M9u-}|P+x!!=9YH@e2h!#?VBXgT%t7;qw2Tg$+t@I8Zua{JDkJ7* zDk8ivU#6P>OY`?`P_wJFgR}2@Ev5fR_?UKp0Elj#D&>e1?&Om zXf-$$vXfRW)RH`9b%C}CC##!u5YyR8@fgr9RwEQ{owf=q#yrnh{Xj2}yVZa6y{L!P zzbl~WX*FRgI4`R|>|qdY#cRi4lvPC;>|(6Smw=12T1h3SL@OyZaxPo-QN=pds^M*1 zX1dklY77=x6-U6l%4*927*tz@QKEUr>iIIr8m#J{@I;^_vv zP?-B}44w|V(2WgK;Wm0><3c!!-?;f#a48$NZ=viZ-764w|JKC-1}H?TwjK z1*qScM$cL6#xg1zwr|Xc0CdmB=`W!&uyJ!C248G+b;1P4H*Q=E6g%s0Z^DDK_0KM_ z^RUimLdDPeo4eowtRtu6zMQk}P+>6CdUG}G!mJvvqiUAF#lA@0N# zYisJGr&!N@9fPUXzi)$Gn)PBKxU1GL$$PqW{t}Q3>sORwT(j@qE%RehzfX&Cx%CTr8!N1LnxIl?ZEFB#mG$h^nDs5|-2X6m+geQ>;%e)U zMrn9?2VEsLO8XU!c4ch_2Q1f<@2@hQxu!TRg1m`kH|VHs4KtY^}@ z(rmpr94IZ;muEqx)mkzFuzS}0?U3EKzA+nv53HvQfwWoAq}8U~`cpi~$TD!FE$l2n zk}MLw0`6st>RhO$SPVS?NwfIM8LrbUZc=ggnuV&tO9=7*X^wOvYu*EU{Cj>+1%wM;rw8K8oJE+` zSMwzJ_fqCgNS7@Sfpoc+o`n_fQWs(6qD%1i-3UE~tNy0q&i9*c;{sRjS_EHfBB^M! z)+qtD>sC{MvOdiNBg}2I&#*4I!Ir&<4x&nw!i(|9Fby>Xa z4cLbkHM23;ZNXU&;71n!egs*MMH&@##w~VJ-N$C4?HFXoC)OA+C)JMO$z*u)3gNckZ%7~K~t()K>nX#x1Dwi2k=INMVH2qm{~N zlfpw9<1LDmt}@;}4wQ68A%(^njE*CaU1KC42TCR*N(z-M##{6vW;6CCgUey`xkEFT zA);bJ9)nK}f$NM=S|sxsqu0O{Fm_U`Qpor!3(z+h&xDv+5o0qwe8r3(AHc&+MnWXa zOBiob%2�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%0DS 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.mxproject b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.mxproject new file mode 100644 index 0000000..a69f0d0 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.mxproject @@ -0,0 +1,27 @@ +[PreviousGenFiles] +AdvancedFolderStructure=true +HeaderFileListSize=4 +HeaderFiles#0=../Core/Inc/gpio.h +HeaderFiles#1=../Core/Inc/stm32f1xx_it.h +HeaderFiles#2=../Core/Inc/stm32f1xx_hal_conf.h +HeaderFiles#3=../Core/Inc/main.h +HeaderFolderListSize=1 +HeaderPath#0=../Core/Inc +HeaderFiles=; +SourceFileListSize=4 +SourceFiles#0=../Core/Src/gpio.c +SourceFiles#1=../Core/Src/stm32f1xx_it.c +SourceFiles#2=../Core/Src/stm32f1xx_hal_msp.c +SourceFiles#3=../Core/Src/main.c +SourceFolderListSize=1 +SourcePath#0=../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/stm32f103xe.h;Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h;Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h;Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h;Drivers/CMSIS/Device/ST/STM32F1xx/Source/Templates/system_stm32f1xx.c;Drivers/CMSIS/Include/core_cm7.h;Drivers/CMSIS/Include/tz_context.h;Drivers/CMSIS/Include/core_cm3.h;Drivers/CMSIS/Include/cmsis_compiler.h;Drivers/CMSIS/Include/cmsis_armclang.h;Drivers/CMSIS/Include/mpu_armv7.h;Drivers/CMSIS/Include/cmsis_armcc.h;Drivers/CMSIS/Include/core_cm4.h;Drivers/CMSIS/Include/core_cm0.h;Drivers/CMSIS/Include/cmsis_iccarm.h;Drivers/CMSIS/Include/core_armv8mml.h;Drivers/CMSIS/Include/core_sc000.h;Drivers/CMSIS/Include/core_cm1.h;Drivers/CMSIS/Include/mpu_armv8.h;Drivers/CMSIS/Include/core_sc300.h;Drivers/CMSIS/Include/cmsis_gcc.h;Drivers/CMSIS/Include/cmsis_version.h;Drivers/CMSIS/Include/core_cm23.h;Drivers/CMSIS/Include/core_cm33.h;Drivers/CMSIS/Include/core_cm0plus.h;Drivers/CMSIS/Include/core_armv8mbl.h; + +[PreviousUsedCubeIDEFiles] +SourceFiles=Core/Src/main.c;Core/Src/gpio.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;STM32F103xE;USE_HAL_DRIVER;USE_HAL_DRIVER; + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.project b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.project new file mode 100644 index 0000000..94bd123 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.project @@ -0,0 +1,32 @@ + + + lcd + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + 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.MCUAdvancedStructureProjectNature + com.st.stm32cube.ide.mcu.MCUSingleCpuProjectNature + com.st.stm32cube.ide.mcu.MCURootProjectNature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.settings/language.settings.xml b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.settings/language.settings.xml new file mode 100644 index 0000000..d7b6c66 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.settings/language.settings.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/.settings/org.eclipse.core.resources.prefs b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.settings/org.eclipse.core.resources.prefs similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/.settings/org.eclipse.core.resources.prefs rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.settings/org.eclipse.core.resources.prefs diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.settings/stm32cubeide.project.prefs b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.settings/stm32cubeide.project.prefs new file mode 100644 index 0000000..f6a2b63 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/.settings/stm32cubeide.project.prefs @@ -0,0 +1,4 @@ +66BE74F758C12D739921AEA421D593D3=0 +8DF89ED150041C4CBC7CB9A9CAA90856=E2A120DE50F7E236F2845900B7AD282A +DC22A860405A8BF2F2C095E5B6529F12=E2A120DE50F7E236F2845900B7AD282A +eclipse.preferences.version=1 diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/font.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/font.h new file mode 100644 index 0000000..0db68bb --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/font.h @@ -0,0 +1,455 @@ +/** + **************************************************************************************************** + * @file lcdfont.h + * @author ÕýµãÔ­×ÓÍŶÓ(ALIENTEK) + * @version V1.1 + * @date 2021-04-06 + * @brief °üº¬12*12,16*16,24*24,32*32 ËÄÖÖLCDÓÃASCII×ÖÌå + * @license Copyright (c) 2020-2032, ¹ãÖÝÊÐÐÇÒíµç×ӿƼ¼ÓÐÏÞ¹«Ë¾ + **************************************************************************************************** + * @attention + * + * ʵÑéƽ̨:ÕýµãÔ­×Ó STM32F103¿ª·¢°å + * ÔÚÏßÊÓƵ:www.yuanzige.com + * ¼¼ÊõÂÛ̳:www.openedv.com + * ¹«Ë¾ÍøÖ·:www.alientek.com + * ¹ºÂòµØÖ·:openedv.taobao.com + * + * ÐÞ¸Ä˵Ã÷ + * V1.0 20200421 + * µÚÒ»´Î·¢²¼ + * V1.1 20210406 + * ÐÞÕýasc2_3216´óС¶¨Ò壬¼õÉÙflashÕ¼Óà + * + **************************************************************************************************** + */ + +#ifndef __LCDFONT_H +#define __LCDFONT_H + +/* ³£ÓÃASCII±í + * Æ«ÒÆÁ¿32 + * ASCII×Ö·û¼¯: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ + * PC2LCD2002È¡Ä£·½Ê½ÉèÖãºÒõÂë+ÖðÁÐʽ+˳Ïò+C51¸ñʽ + * ×ܹ²£º4¸ö×Ö·û¼¯£¨12*12¡¢16*16¡¢24*24ºÍ32*32£©£¬Óû§¿ÉÒÔ×ÔÐÐÐÂÔöÆäËû·Ö±æÂʵÄ×Ö·û¼¯¡£ + * ÿ¸ö×Ö·ûËùÕ¼ÓõÄ×Ö½ÚÊýΪ:(size/8+((size%8)?1:0))*(size/2),ÆäÖÐsize:ÊÇ×Ö¿âÉú³ÉʱµÄµãÕó´óС(12/16/24/32...) + */ + +/* 12*12 ASCII×Ö·û¼¯µãÕó */ +const unsigned char asc2_1206[95][12]={ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",0*/ +{0x00,0x00,0x00,0x00,0x3F,0x40,0x00,0x00,0x00,0x00,0x00,0x00},/*"!",1*/ +{0x00,0x00,0x30,0x00,0x40,0x00,0x30,0x00,0x40,0x00,0x00,0x00},/*""",2*/ +{0x09,0x00,0x0B,0xC0,0x3D,0x00,0x0B,0xC0,0x3D,0x00,0x09,0x00},/*"#",3*/ +{0x18,0xC0,0x24,0x40,0x7F,0xE0,0x22,0x40,0x31,0x80,0x00,0x00},/*"$",4*/ +{0x18,0x00,0x24,0xC0,0x1B,0x00,0x0D,0x80,0x32,0x40,0x01,0x80},/*"%",5*/ +{0x03,0x80,0x1C,0x40,0x27,0x40,0x1C,0x80,0x07,0x40,0x00,0x40},/*"&",6*/ +{0x10,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"'",7*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x80,0x20,0x40,0x40,0x20},/*"(",8*/ +{0x00,0x00,0x40,0x20,0x20,0x40,0x1F,0x80,0x00,0x00,0x00,0x00},/*")",9*/ +{0x09,0x00,0x06,0x00,0x1F,0x80,0x06,0x00,0x09,0x00,0x00,0x00},/*"*",10*/ +{0x04,0x00,0x04,0x00,0x3F,0x80,0x04,0x00,0x04,0x00,0x00,0x00},/*"+",11*/ +{0x00,0x10,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*",",12*/ +{0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x00,0x00},/*"-",13*/ +{0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*".",14*/ +{0x00,0x20,0x01,0xC0,0x06,0x00,0x38,0x00,0x40,0x00,0x00,0x00},/*"/",15*/ +{0x1F,0x80,0x20,0x40,0x20,0x40,0x20,0x40,0x1F,0x80,0x00,0x00},/*"0",16*/ +{0x00,0x00,0x10,0x40,0x3F,0xC0,0x00,0x40,0x00,0x00,0x00,0x00},/*"1",17*/ +{0x18,0xC0,0x21,0x40,0x22,0x40,0x24,0x40,0x18,0x40,0x00,0x00},/*"2",18*/ +{0x10,0x80,0x20,0x40,0x24,0x40,0x24,0x40,0x1B,0x80,0x00,0x00},/*"3",19*/ +{0x02,0x00,0x0D,0x00,0x11,0x00,0x3F,0xC0,0x01,0x40,0x00,0x00},/*"4",20*/ +{0x3C,0x80,0x24,0x40,0x24,0x40,0x24,0x40,0x23,0x80,0x00,0x00},/*"5",21*/ +{0x1F,0x80,0x24,0x40,0x24,0x40,0x34,0x40,0x03,0x80,0x00,0x00},/*"6",22*/ +{0x30,0x00,0x20,0x00,0x27,0xC0,0x38,0x00,0x20,0x00,0x00,0x00},/*"7",23*/ +{0x1B,0x80,0x24,0x40,0x24,0x40,0x24,0x40,0x1B,0x80,0x00,0x00},/*"8",24*/ +{0x1C,0x00,0x22,0xC0,0x22,0x40,0x22,0x40,0x1F,0x80,0x00,0x00},/*"9",25*/ +{0x00,0x00,0x00,0x00,0x08,0x40,0x00,0x00,0x00,0x00,0x00,0x00},/*":",26*/ +{0x00,0x00,0x00,0x00,0x04,0x60,0x00,0x00,0x00,0x00,0x00,0x00},/*";",27*/ +{0x00,0x00,0x04,0x00,0x0A,0x00,0x11,0x00,0x20,0x80,0x40,0x40},/*"<",28*/ +{0x09,0x00,0x09,0x00,0x09,0x00,0x09,0x00,0x09,0x00,0x00,0x00},/*"=",29*/ +{0x00,0x00,0x40,0x40,0x20,0x80,0x11,0x00,0x0A,0x00,0x04,0x00},/*">",30*/ +{0x18,0x00,0x20,0x00,0x23,0x40,0x24,0x00,0x18,0x00,0x00,0x00},/*"?",31*/ +{0x1F,0x80,0x20,0x40,0x27,0x40,0x29,0x40,0x1F,0x40,0x00,0x00},/*"@",32*/ +{0x00,0x40,0x07,0xC0,0x39,0x00,0x0F,0x00,0x01,0xC0,0x00,0x40},/*"A",33*/ +{0x20,0x40,0x3F,0xC0,0x24,0x40,0x24,0x40,0x1B,0x80,0x00,0x00},/*"B",34*/ +{0x1F,0x80,0x20,0x40,0x20,0x40,0x20,0x40,0x30,0x80,0x00,0x00},/*"C",35*/ +{0x20,0x40,0x3F,0xC0,0x20,0x40,0x20,0x40,0x1F,0x80,0x00,0x00},/*"D",36*/ +{0x20,0x40,0x3F,0xC0,0x24,0x40,0x2E,0x40,0x30,0xC0,0x00,0x00},/*"E",37*/ +{0x20,0x40,0x3F,0xC0,0x24,0x40,0x2E,0x00,0x30,0x00,0x00,0x00},/*"F",38*/ +{0x0F,0x00,0x10,0x80,0x20,0x40,0x22,0x40,0x33,0x80,0x02,0x00},/*"G",39*/ +{0x20,0x40,0x3F,0xC0,0x04,0x00,0x04,0x00,0x3F,0xC0,0x20,0x40},/*"H",40*/ +{0x20,0x40,0x20,0x40,0x3F,0xC0,0x20,0x40,0x20,0x40,0x00,0x00},/*"I",41*/ +{0x00,0x60,0x20,0x20,0x20,0x20,0x3F,0xC0,0x20,0x00,0x20,0x00},/*"J",42*/ +{0x20,0x40,0x3F,0xC0,0x24,0x40,0x0B,0x00,0x30,0xC0,0x20,0x40},/*"K",43*/ +{0x20,0x40,0x3F,0xC0,0x20,0x40,0x00,0x40,0x00,0x40,0x00,0xC0},/*"L",44*/ +{0x3F,0xC0,0x3C,0x00,0x03,0xC0,0x3C,0x00,0x3F,0xC0,0x00,0x00},/*"M",45*/ +{0x20,0x40,0x3F,0xC0,0x0C,0x40,0x23,0x00,0x3F,0xC0,0x20,0x00},/*"N",46*/ +{0x1F,0x80,0x20,0x40,0x20,0x40,0x20,0x40,0x1F,0x80,0x00,0x00},/*"O",47*/ +{0x20,0x40,0x3F,0xC0,0x24,0x40,0x24,0x00,0x18,0x00,0x00,0x00},/*"P",48*/ +{0x1F,0x80,0x21,0x40,0x21,0x40,0x20,0xE0,0x1F,0xA0,0x00,0x00},/*"Q",49*/ +{0x20,0x40,0x3F,0xC0,0x24,0x40,0x26,0x00,0x19,0xC0,0x00,0x40},/*"R",50*/ +{0x18,0xC0,0x24,0x40,0x24,0x40,0x22,0x40,0x31,0x80,0x00,0x00},/*"S",51*/ +{0x30,0x00,0x20,0x40,0x3F,0xC0,0x20,0x40,0x30,0x00,0x00,0x00},/*"T",52*/ +{0x20,0x00,0x3F,0x80,0x00,0x40,0x00,0x40,0x3F,0x80,0x20,0x00},/*"U",53*/ +{0x20,0x00,0x3E,0x00,0x01,0xC0,0x07,0x00,0x38,0x00,0x20,0x00},/*"V",54*/ +{0x38,0x00,0x07,0xC0,0x3C,0x00,0x07,0xC0,0x38,0x00,0x00,0x00},/*"W",55*/ +{0x20,0x40,0x39,0xC0,0x06,0x00,0x39,0xC0,0x20,0x40,0x00,0x00},/*"X",56*/ +{0x20,0x00,0x38,0x40,0x07,0xC0,0x38,0x40,0x20,0x00,0x00,0x00},/*"Y",57*/ +{0x30,0x40,0x21,0xC0,0x26,0x40,0x38,0x40,0x20,0xC0,0x00,0x00},/*"Z",58*/ +{0x00,0x00,0x00,0x00,0x7F,0xE0,0x40,0x20,0x40,0x20,0x00,0x00},/*"[",59*/ +{0x00,0x00,0x70,0x00,0x0C,0x00,0x03,0x80,0x00,0x40,0x00,0x00},/*"\",60*/ +{0x00,0x00,0x40,0x20,0x40,0x20,0x7F,0xE0,0x00,0x00,0x00,0x00},/*"]",61*/ +{0x00,0x00,0x20,0x00,0x40,0x00,0x20,0x00,0x00,0x00,0x00,0x00},/*"^",62*/ +{0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10,0x00,0x10},/*"_",63*/ +{0x00,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"`",64*/ +{0x00,0x00,0x02,0x80,0x05,0x40,0x05,0x40,0x03,0xC0,0x00,0x40},/*"a",65*/ +{0x20,0x00,0x3F,0xC0,0x04,0x40,0x04,0x40,0x03,0x80,0x00,0x00},/*"b",66*/ +{0x00,0x00,0x03,0x80,0x04,0x40,0x04,0x40,0x06,0x40,0x00,0x00},/*"c",67*/ +{0x00,0x00,0x03,0x80,0x04,0x40,0x24,0x40,0x3F,0xC0,0x00,0x40},/*"d",68*/ +{0x00,0x00,0x03,0x80,0x05,0x40,0x05,0x40,0x03,0x40,0x00,0x00},/*"e",69*/ +{0x00,0x00,0x04,0x40,0x1F,0xC0,0x24,0x40,0x24,0x40,0x20,0x00},/*"f",70*/ +{0x00,0x00,0x02,0xE0,0x05,0x50,0x05,0x50,0x06,0x50,0x04,0x20},/*"g",71*/ +{0x20,0x40,0x3F,0xC0,0x04,0x40,0x04,0x00,0x03,0xC0,0x00,0x40},/*"h",72*/ +{0x00,0x00,0x04,0x40,0x27,0xC0,0x00,0x40,0x00,0x00,0x00,0x00},/*"i",73*/ +{0x00,0x10,0x00,0x10,0x04,0x10,0x27,0xE0,0x00,0x00,0x00,0x00},/*"j",74*/ +{0x20,0x40,0x3F,0xC0,0x01,0x40,0x07,0x00,0x04,0xC0,0x04,0x40},/*"k",75*/ +{0x20,0x40,0x20,0x40,0x3F,0xC0,0x00,0x40,0x00,0x40,0x00,0x00},/*"l",76*/ +{0x07,0xC0,0x04,0x00,0x07,0xC0,0x04,0x00,0x03,0xC0,0x00,0x00},/*"m",77*/ +{0x04,0x40,0x07,0xC0,0x04,0x40,0x04,0x00,0x03,0xC0,0x00,0x40},/*"n",78*/ +{0x00,0x00,0x03,0x80,0x04,0x40,0x04,0x40,0x03,0x80,0x00,0x00},/*"o",79*/ +{0x04,0x10,0x07,0xF0,0x04,0x50,0x04,0x40,0x03,0x80,0x00,0x00},/*"p",80*/ +{0x00,0x00,0x03,0x80,0x04,0x40,0x04,0x50,0x07,0xF0,0x00,0x10},/*"q",81*/ +{0x04,0x40,0x07,0xC0,0x02,0x40,0x04,0x00,0x04,0x00,0x00,0x00},/*"r",82*/ +{0x00,0x00,0x06,0x40,0x05,0x40,0x05,0x40,0x04,0xC0,0x00,0x00},/*"s",83*/ +{0x00,0x00,0x04,0x00,0x1F,0x80,0x04,0x40,0x00,0x40,0x00,0x00},/*"t",84*/ +{0x04,0x00,0x07,0x80,0x00,0x40,0x04,0x40,0x07,0xC0,0x00,0x40},/*"u",85*/ +{0x04,0x00,0x07,0x00,0x04,0xC0,0x01,0x80,0x06,0x00,0x04,0x00},/*"v",86*/ +{0x06,0x00,0x01,0xC0,0x07,0x00,0x01,0xC0,0x06,0x00,0x00,0x00},/*"w",87*/ +{0x04,0x40,0x06,0xC0,0x01,0x00,0x06,0xC0,0x04,0x40,0x00,0x00},/*"x",88*/ +{0x04,0x10,0x07,0x10,0x04,0xE0,0x01,0x80,0x06,0x00,0x04,0x00},/*"y",89*/ +{0x00,0x00,0x04,0x40,0x05,0xC0,0x06,0x40,0x04,0x40,0x00,0x00},/*"z",90*/ +{0x00,0x00,0x00,0x00,0x04,0x00,0x7B,0xE0,0x40,0x20,0x00,0x00},/*"{",91*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xF0,0x00,0x00,0x00,0x00},/*"|",92*/ +{0x00,0x00,0x40,0x20,0x7B,0xE0,0x04,0x00,0x00,0x00,0x00,0x00},/*"}",93*/ +{0x40,0x00,0x80,0x00,0x40,0x00,0x20,0x00,0x20,0x00,0x40,0x00},/*"~",94*/ +}; + +/* 16*16 ASCII×Ö·û¼¯µãÕó */ +const unsigned char asc2_1608[95][16]={ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",0*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xCC,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00},/*"!",1*/ +{0x00,0x00,0x08,0x00,0x30,0x00,0x60,0x00,0x08,0x00,0x30,0x00,0x60,0x00,0x00,0x00},/*""",2*/ +{0x02,0x20,0x03,0xFC,0x1E,0x20,0x02,0x20,0x03,0xFC,0x1E,0x20,0x02,0x20,0x00,0x00},/*"#",3*/ +{0x00,0x00,0x0E,0x18,0x11,0x04,0x3F,0xFF,0x10,0x84,0x0C,0x78,0x00,0x00,0x00,0x00},/*"$",4*/ +{0x0F,0x00,0x10,0x84,0x0F,0x38,0x00,0xC0,0x07,0x78,0x18,0x84,0x00,0x78,0x00,0x00},/*"%",5*/ +{0x00,0x78,0x0F,0x84,0x10,0xC4,0x11,0x24,0x0E,0x98,0x00,0xE4,0x00,0x84,0x00,0x08},/*"&",6*/ +{0x08,0x00,0x68,0x00,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"'",7*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xE0,0x18,0x18,0x20,0x04,0x40,0x02,0x00,0x00},/*"(",8*/ +{0x00,0x00,0x40,0x02,0x20,0x04,0x18,0x18,0x07,0xE0,0x00,0x00,0x00,0x00,0x00,0x00},/*")",9*/ +{0x02,0x40,0x02,0x40,0x01,0x80,0x0F,0xF0,0x01,0x80,0x02,0x40,0x02,0x40,0x00,0x00},/*"*",10*/ +{0x00,0x80,0x00,0x80,0x00,0x80,0x0F,0xF8,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x00},/*"+",11*/ +{0x00,0x01,0x00,0x0D,0x00,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*",",12*/ +{0x00,0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80},/*"-",13*/ +{0x00,0x00,0x00,0x0C,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*".",14*/ +{0x00,0x00,0x00,0x06,0x00,0x18,0x00,0x60,0x01,0x80,0x06,0x00,0x18,0x00,0x20,0x00},/*"/",15*/ +{0x00,0x00,0x07,0xF0,0x08,0x08,0x10,0x04,0x10,0x04,0x08,0x08,0x07,0xF0,0x00,0x00},/*"0",16*/ +{0x00,0x00,0x08,0x04,0x08,0x04,0x1F,0xFC,0x00,0x04,0x00,0x04,0x00,0x00,0x00,0x00},/*"1",17*/ +{0x00,0x00,0x0E,0x0C,0x10,0x14,0x10,0x24,0x10,0x44,0x11,0x84,0x0E,0x0C,0x00,0x00},/*"2",18*/ +{0x00,0x00,0x0C,0x18,0x10,0x04,0x11,0x04,0x11,0x04,0x12,0x88,0x0C,0x70,0x00,0x00},/*"3",19*/ +{0x00,0x00,0x00,0xE0,0x03,0x20,0x04,0x24,0x08,0x24,0x1F,0xFC,0x00,0x24,0x00,0x00},/*"4",20*/ +{0x00,0x00,0x1F,0x98,0x10,0x84,0x11,0x04,0x11,0x04,0x10,0x88,0x10,0x70,0x00,0x00},/*"5",21*/ +{0x00,0x00,0x07,0xF0,0x08,0x88,0x11,0x04,0x11,0x04,0x18,0x88,0x00,0x70,0x00,0x00},/*"6",22*/ +{0x00,0x00,0x1C,0x00,0x10,0x00,0x10,0xFC,0x13,0x00,0x1C,0x00,0x10,0x00,0x00,0x00},/*"7",23*/ +{0x00,0x00,0x0E,0x38,0x11,0x44,0x10,0x84,0x10,0x84,0x11,0x44,0x0E,0x38,0x00,0x00},/*"8",24*/ +{0x00,0x00,0x07,0x00,0x08,0x8C,0x10,0x44,0x10,0x44,0x08,0x88,0x07,0xF0,0x00,0x00},/*"9",25*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x0C,0x03,0x0C,0x00,0x00,0x00,0x00,0x00,0x00},/*":",26*/ +{0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*";",27*/ +{0x00,0x00,0x00,0x80,0x01,0x40,0x02,0x20,0x04,0x10,0x08,0x08,0x10,0x04,0x00,0x00},/*"<",28*/ +{0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x00,0x00},/*"=",29*/ +{0x00,0x00,0x10,0x04,0x08,0x08,0x04,0x10,0x02,0x20,0x01,0x40,0x00,0x80,0x00,0x00},/*">",30*/ +{0x00,0x00,0x0E,0x00,0x12,0x00,0x10,0x0C,0x10,0x6C,0x10,0x80,0x0F,0x00,0x00,0x00},/*"?",31*/ +{0x03,0xE0,0x0C,0x18,0x13,0xE4,0x14,0x24,0x17,0xC4,0x08,0x28,0x07,0xD0,0x00,0x00},/*"@",32*/ +{0x00,0x04,0x00,0x3C,0x03,0xC4,0x1C,0x40,0x07,0x40,0x00,0xE4,0x00,0x1C,0x00,0x04},/*"A",33*/ +{0x10,0x04,0x1F,0xFC,0x11,0x04,0x11,0x04,0x11,0x04,0x0E,0x88,0x00,0x70,0x00,0x00},/*"B",34*/ +{0x03,0xE0,0x0C,0x18,0x10,0x04,0x10,0x04,0x10,0x04,0x10,0x08,0x1C,0x10,0x00,0x00},/*"C",35*/ +{0x10,0x04,0x1F,0xFC,0x10,0x04,0x10,0x04,0x10,0x04,0x08,0x08,0x07,0xF0,0x00,0x00},/*"D",36*/ +{0x10,0x04,0x1F,0xFC,0x11,0x04,0x11,0x04,0x17,0xC4,0x10,0x04,0x08,0x18,0x00,0x00},/*"E",37*/ +{0x10,0x04,0x1F,0xFC,0x11,0x04,0x11,0x00,0x17,0xC0,0x10,0x00,0x08,0x00,0x00,0x00},/*"F",38*/ +{0x03,0xE0,0x0C,0x18,0x10,0x04,0x10,0x04,0x10,0x44,0x1C,0x78,0x00,0x40,0x00,0x00},/*"G",39*/ +{0x10,0x04,0x1F,0xFC,0x10,0x84,0x00,0x80,0x00,0x80,0x10,0x84,0x1F,0xFC,0x10,0x04},/*"H",40*/ +{0x00,0x00,0x10,0x04,0x10,0x04,0x1F,0xFC,0x10,0x04,0x10,0x04,0x00,0x00,0x00,0x00},/*"I",41*/ +{0x00,0x03,0x00,0x01,0x10,0x01,0x10,0x01,0x1F,0xFE,0x10,0x00,0x10,0x00,0x00,0x00},/*"J",42*/ +{0x10,0x04,0x1F,0xFC,0x11,0x04,0x03,0x80,0x14,0x64,0x18,0x1C,0x10,0x04,0x00,0x00},/*"K",43*/ +{0x10,0x04,0x1F,0xFC,0x10,0x04,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x0C,0x00,0x00},/*"L",44*/ +{0x10,0x04,0x1F,0xFC,0x1F,0x00,0x00,0xFC,0x1F,0x00,0x1F,0xFC,0x10,0x04,0x00,0x00},/*"M",45*/ +{0x10,0x04,0x1F,0xFC,0x0C,0x04,0x03,0x00,0x00,0xE0,0x10,0x18,0x1F,0xFC,0x10,0x00},/*"N",46*/ +{0x07,0xF0,0x08,0x08,0x10,0x04,0x10,0x04,0x10,0x04,0x08,0x08,0x07,0xF0,0x00,0x00},/*"O",47*/ +{0x10,0x04,0x1F,0xFC,0x10,0x84,0x10,0x80,0x10,0x80,0x10,0x80,0x0F,0x00,0x00,0x00},/*"P",48*/ +{0x07,0xF0,0x08,0x18,0x10,0x24,0x10,0x24,0x10,0x1C,0x08,0x0A,0x07,0xF2,0x00,0x00},/*"Q",49*/ +{0x10,0x04,0x1F,0xFC,0x11,0x04,0x11,0x00,0x11,0xC0,0x11,0x30,0x0E,0x0C,0x00,0x04},/*"R",50*/ +{0x00,0x00,0x0E,0x1C,0x11,0x04,0x10,0x84,0x10,0x84,0x10,0x44,0x1C,0x38,0x00,0x00},/*"S",51*/ +{0x18,0x00,0x10,0x00,0x10,0x04,0x1F,0xFC,0x10,0x04,0x10,0x00,0x18,0x00,0x00,0x00},/*"T",52*/ +{0x10,0x00,0x1F,0xF8,0x10,0x04,0x00,0x04,0x00,0x04,0x10,0x04,0x1F,0xF8,0x10,0x00},/*"U",53*/ +{0x10,0x00,0x1E,0x00,0x11,0xE0,0x00,0x1C,0x00,0x70,0x13,0x80,0x1C,0x00,0x10,0x00},/*"V",54*/ +{0x1F,0xC0,0x10,0x3C,0x00,0xE0,0x1F,0x00,0x00,0xE0,0x10,0x3C,0x1F,0xC0,0x00,0x00},/*"W",55*/ +{0x10,0x04,0x18,0x0C,0x16,0x34,0x01,0xC0,0x01,0xC0,0x16,0x34,0x18,0x0C,0x10,0x04},/*"X",56*/ +{0x10,0x00,0x1C,0x00,0x13,0x04,0x00,0xFC,0x13,0x04,0x1C,0x00,0x10,0x00,0x00,0x00},/*"Y",57*/ +{0x08,0x04,0x10,0x1C,0x10,0x64,0x10,0x84,0x13,0x04,0x1C,0x04,0x10,0x18,0x00,0x00},/*"Z",58*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFE,0x40,0x02,0x40,0x02,0x40,0x02,0x00,0x00},/*"[",59*/ +{0x00,0x00,0x30,0x00,0x0C,0x00,0x03,0x80,0x00,0x60,0x00,0x1C,0x00,0x03,0x00,0x00},/*"\",60*/ +{0x00,0x00,0x40,0x02,0x40,0x02,0x40,0x02,0x7F,0xFE,0x00,0x00,0x00,0x00,0x00,0x00},/*"]",61*/ +{0x00,0x00,0x00,0x00,0x20,0x00,0x40,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x00,0x00},/*"^",62*/ +{0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01},/*"_",63*/ +{0x00,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"`",64*/ +{0x00,0x00,0x00,0x98,0x01,0x24,0x01,0x44,0x01,0x44,0x01,0x44,0x00,0xFC,0x00,0x04},/*"a",65*/ +{0x10,0x00,0x1F,0xFC,0x00,0x88,0x01,0x04,0x01,0x04,0x00,0x88,0x00,0x70,0x00,0x00},/*"b",66*/ +{0x00,0x00,0x00,0x70,0x00,0x88,0x01,0x04,0x01,0x04,0x01,0x04,0x00,0x88,0x00,0x00},/*"c",67*/ +{0x00,0x00,0x00,0x70,0x00,0x88,0x01,0x04,0x01,0x04,0x11,0x08,0x1F,0xFC,0x00,0x04},/*"d",68*/ +{0x00,0x00,0x00,0xF8,0x01,0x44,0x01,0x44,0x01,0x44,0x01,0x44,0x00,0xC8,0x00,0x00},/*"e",69*/ +{0x00,0x00,0x01,0x04,0x01,0x04,0x0F,0xFC,0x11,0x04,0x11,0x04,0x11,0x00,0x18,0x00},/*"f",70*/ +{0x00,0x00,0x00,0xD6,0x01,0x29,0x01,0x29,0x01,0x29,0x01,0xC9,0x01,0x06,0x00,0x00},/*"g",71*/ +{0x10,0x04,0x1F,0xFC,0x00,0x84,0x01,0x00,0x01,0x00,0x01,0x04,0x00,0xFC,0x00,0x04},/*"h",72*/ +{0x00,0x00,0x01,0x04,0x19,0x04,0x19,0xFC,0x00,0x04,0x00,0x04,0x00,0x00,0x00,0x00},/*"i",73*/ +{0x00,0x00,0x00,0x03,0x00,0x01,0x01,0x01,0x19,0x01,0x19,0xFE,0x00,0x00,0x00,0x00},/*"j",74*/ +{0x10,0x04,0x1F,0xFC,0x00,0x24,0x00,0x40,0x01,0xB4,0x01,0x0C,0x01,0x04,0x00,0x00},/*"k",75*/ +{0x00,0x00,0x10,0x04,0x10,0x04,0x1F,0xFC,0x00,0x04,0x00,0x04,0x00,0x00,0x00,0x00},/*"l",76*/ +{0x01,0x04,0x01,0xFC,0x01,0x04,0x01,0x00,0x01,0xFC,0x01,0x04,0x01,0x00,0x00,0xFC},/*"m",77*/ +{0x01,0x04,0x01,0xFC,0x00,0x84,0x01,0x00,0x01,0x00,0x01,0x04,0x00,0xFC,0x00,0x04},/*"n",78*/ +{0x00,0x00,0x00,0xF8,0x01,0x04,0x01,0x04,0x01,0x04,0x01,0x04,0x00,0xF8,0x00,0x00},/*"o",79*/ +{0x01,0x01,0x01,0xFF,0x00,0x85,0x01,0x04,0x01,0x04,0x00,0x88,0x00,0x70,0x00,0x00},/*"p",80*/ +{0x00,0x00,0x00,0x70,0x00,0x88,0x01,0x04,0x01,0x04,0x01,0x05,0x01,0xFF,0x00,0x01},/*"q",81*/ +{0x01,0x04,0x01,0x04,0x01,0xFC,0x00,0x84,0x01,0x04,0x01,0x00,0x01,0x80,0x00,0x00},/*"r",82*/ +{0x00,0x00,0x00,0xCC,0x01,0x24,0x01,0x24,0x01,0x24,0x01,0x24,0x01,0x98,0x00,0x00},/*"s",83*/ +{0x00,0x00,0x01,0x00,0x01,0x00,0x07,0xF8,0x01,0x04,0x01,0x04,0x00,0x00,0x00,0x00},/*"t",84*/ +{0x01,0x00,0x01,0xF8,0x00,0x04,0x00,0x04,0x00,0x04,0x01,0x08,0x01,0xFC,0x00,0x04},/*"u",85*/ +{0x01,0x00,0x01,0x80,0x01,0x70,0x00,0x0C,0x00,0x10,0x01,0x60,0x01,0x80,0x01,0x00},/*"v",86*/ +{0x01,0xF0,0x01,0x0C,0x00,0x30,0x01,0xC0,0x00,0x30,0x01,0x0C,0x01,0xF0,0x01,0x00},/*"w",87*/ +{0x00,0x00,0x01,0x04,0x01,0x8C,0x00,0x74,0x01,0x70,0x01,0x8C,0x01,0x04,0x00,0x00},/*"x",88*/ +{0x01,0x01,0x01,0x81,0x01,0x71,0x00,0x0E,0x00,0x18,0x01,0x60,0x01,0x80,0x01,0x00},/*"y",89*/ +{0x00,0x00,0x01,0x84,0x01,0x0C,0x01,0x34,0x01,0x44,0x01,0x84,0x01,0x0C,0x00,0x00},/*"z",90*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x3E,0xFC,0x40,0x02,0x40,0x02},/*"{",91*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00},/*"|",92*/ +{0x00,0x00,0x40,0x02,0x40,0x02,0x3E,0xFC,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"}",93*/ +{0x00,0x00,0x60,0x00,0x80,0x00,0x80,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x20,0x00},/*"~",94*/ +}; + +/* 24*24 ASICII×Ö·û¼¯µãÕó */ +const unsigned char asc2_2412[95][36]={ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",0*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x38,0x0F,0xFE,0x38,0x0F,0x80,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"!",1*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x06,0x00,0x00,0x0C,0x00,0x00,0x38,0x00,0x00,0x31,0x00,0x00,0x06,0x00,0x00,0x0C,0x00,0x00,0x38,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00},/*""",2*/ +{0x00,0x00,0x00,0x00,0x61,0x80,0x00,0x67,0xF8,0x07,0xF9,0x80,0x00,0x61,0x80,0x00,0x61,0x80,0x00,0x61,0x80,0x00,0x61,0x80,0x00,0x67,0xF8,0x07,0xF9,0x80,0x00,0x61,0x80,0x00,0x00,0x00},/*"#",3*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0xE0,0x03,0xE0,0xF0,0x06,0x30,0x08,0x04,0x18,0x08,0x1F,0xFF,0xFE,0x04,0x0E,0x08,0x07,0x87,0xF0,0x03,0x81,0xE0,0x00,0x00,0x00,0x00,0x00,0x00},/*"$",4*/ +{0x01,0xF0,0x00,0x06,0x0C,0x00,0x04,0x04,0x08,0x06,0x0C,0x70,0x01,0xF9,0xC0,0x00,0x0E,0x00,0x00,0x3B,0xE0,0x00,0xEC,0x18,0x07,0x08,0x08,0x04,0x0C,0x18,0x00,0x03,0xE0,0x00,0x00,0x00},/*"%",5*/ +{0x00,0x01,0xE0,0x00,0x07,0xF0,0x03,0xF8,0x18,0x04,0x1C,0x08,0x04,0x17,0x08,0x07,0xE1,0xD0,0x03,0xC0,0xE0,0x00,0x23,0xB0,0x00,0x3C,0x08,0x00,0x20,0x08,0x00,0x00,0x10,0x00,0x00,0x00},/*"&",6*/ +{0x00,0x00,0x00,0x01,0x00,0x00,0x31,0x00,0x00,0x32,0x00,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"'",7*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x01,0xFF,0xC0,0x07,0x80,0xF0,0x0C,0x00,0x18,0x10,0x00,0x04,0x20,0x00,0x02,0x00,0x00,0x00},/*"(",8*/ +{0x00,0x00,0x00,0x20,0x00,0x02,0x10,0x00,0x04,0x0C,0x00,0x18,0x07,0x80,0xF0,0x01,0xFF,0xC0,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*")",9*/ +{0x00,0x00,0x00,0x00,0x42,0x00,0x00,0x66,0x00,0x00,0x66,0x00,0x00,0x3C,0x00,0x00,0x18,0x00,0x03,0xFF,0xC0,0x00,0x18,0x00,0x00,0x3C,0x00,0x00,0x66,0x00,0x00,0x66,0x00,0x00,0x42,0x00},/*"*",10*/ +{0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x01,0xFF,0xC0,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00},/*"+",11*/ +{0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x31,0x00,0x00,0x32,0x00,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*",",12*/ +{0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x00,0x00},/*"-",13*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*".",14*/ +{0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x1C,0x00,0x00,0x70,0x00,0x01,0x80,0x00,0x0E,0x00,0x00,0x38,0x00,0x00,0xC0,0x00,0x07,0x00,0x00,0x1C,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00},/*"/",15*/ +{0x00,0x00,0x00,0x00,0x7F,0x80,0x01,0xFF,0xE0,0x03,0x80,0x70,0x06,0x00,0x18,0x04,0x00,0x08,0x04,0x00,0x08,0x06,0x00,0x18,0x03,0x80,0x70,0x01,0xFF,0xE0,0x00,0x7F,0x80,0x00,0x00,0x00},/*"0",16*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x08,0x01,0x00,0x08,0x01,0x00,0x08,0x03,0xFF,0xF8,0x07,0xFF,0xF8,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00},/*"1",17*/ +{0x00,0x00,0x00,0x01,0xC0,0x38,0x02,0xC0,0x58,0x04,0x00,0x98,0x04,0x01,0x18,0x04,0x02,0x18,0x04,0x04,0x18,0x06,0x1C,0x18,0x03,0xF8,0x18,0x01,0xE0,0xF8,0x00,0x00,0x00,0x00,0x00,0x00},/*"2",18*/ +{0x00,0x00,0x00,0x01,0xC0,0xE0,0x03,0xC0,0xF0,0x04,0x00,0x08,0x04,0x08,0x08,0x04,0x08,0x08,0x06,0x18,0x08,0x03,0xF4,0x18,0x01,0xE7,0xF0,0x00,0x01,0xE0,0x00,0x00,0x00,0x00,0x00,0x00},/*"3",19*/ +{0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x0D,0x00,0x00,0x11,0x00,0x00,0x61,0x00,0x00,0x81,0x08,0x03,0x01,0x08,0x07,0xFF,0xF8,0x0F,0xFF,0xF8,0x00,0x01,0x08,0x00,0x01,0x08,0x00,0x00,0x00},/*"4",20*/ +{0x00,0x00,0x00,0x00,0x00,0xE0,0x07,0xFC,0xD0,0x06,0x08,0x08,0x06,0x10,0x08,0x06,0x10,0x08,0x06,0x10,0x08,0x06,0x18,0x38,0x06,0x0F,0xF0,0x06,0x07,0xC0,0x00,0x00,0x00,0x00,0x00,0x00},/*"5",21*/ +{0x00,0x00,0x00,0x00,0x3F,0x80,0x01,0xFF,0xE0,0x03,0x84,0x30,0x02,0x08,0x18,0x04,0x10,0x08,0x04,0x10,0x08,0x04,0x10,0x08,0x07,0x18,0x10,0x03,0x0F,0xF0,0x00,0x07,0xC0,0x00,0x00,0x00},/*"6",22*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x00,0x07,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0xF8,0x06,0x07,0xF8,0x06,0x18,0x00,0x06,0xE0,0x00,0x07,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00},/*"7",23*/ +{0x00,0x00,0x00,0x01,0xE1,0xE0,0x03,0xF7,0xF0,0x06,0x34,0x10,0x04,0x18,0x08,0x04,0x18,0x08,0x04,0x0C,0x08,0x04,0x0C,0x08,0x06,0x16,0x18,0x03,0xF3,0xF0,0x01,0xC1,0xE0,0x00,0x00,0x00},/*"8",24*/ +{0x00,0x00,0x00,0x00,0xF8,0x00,0x03,0xFC,0x30,0x03,0x06,0x38,0x04,0x02,0x08,0x04,0x02,0x08,0x04,0x02,0x08,0x04,0x04,0x10,0x03,0x08,0xF0,0x01,0xFF,0xC0,0x00,0x7F,0x00,0x00,0x00,0x00},/*"9",25*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x38,0x00,0x70,0x38,0x00,0x70,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*":",26*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x1A,0x00,0x30,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*";",27*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x14,0x00,0x00,0x22,0x00,0x00,0x41,0x00,0x00,0x80,0x80,0x01,0x00,0x40,0x02,0x00,0x20,0x04,0x00,0x10,0x08,0x00,0x08,0x00,0x00,0x00},/*"<",28*/ +{0x00,0x00,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x21,0x00,0x00,0x00,0x00},/*"=",29*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x08,0x04,0x00,0x10,0x02,0x00,0x20,0x01,0x00,0x40,0x00,0x80,0x80,0x00,0x41,0x00,0x00,0x22,0x00,0x00,0x14,0x00,0x00,0x08,0x00,0x00,0x00,0x00},/*">",30*/ +{0x00,0x00,0x00,0x03,0xC0,0x00,0x04,0xC0,0x00,0x04,0x00,0x00,0x08,0x00,0x38,0x08,0x0F,0x38,0x08,0x08,0x38,0x08,0x10,0x00,0x0C,0x30,0x00,0x07,0xE0,0x00,0x03,0xC0,0x00,0x00,0x00,0x00},/*"?",31*/ +{0x00,0x00,0x00,0x00,0x3F,0x80,0x00,0xFF,0xE0,0x03,0x80,0x70,0x02,0x0F,0x10,0x06,0x70,0x88,0x04,0xC0,0x88,0x04,0x83,0x08,0x04,0x7F,0x88,0x02,0xC0,0x90,0x03,0x01,0x20,0x00,0xFE,0x40},/*"@",32*/ +{0x00,0x00,0x08,0x00,0x00,0x18,0x00,0x01,0xF8,0x00,0x3E,0x08,0x01,0xC2,0x00,0x07,0x02,0x00,0x07,0xE2,0x00,0x00,0xFE,0x00,0x00,0x1F,0xC8,0x00,0x01,0xF8,0x00,0x00,0x38,0x00,0x00,0x08},/*"A",33*/ +{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x08,0x08,0x04,0x08,0x08,0x04,0x08,0x08,0x04,0x08,0x08,0x06,0x18,0x08,0x03,0xF4,0x18,0x01,0xE7,0xF0,0x00,0x01,0xE0,0x00,0x00,0x00},/*"B",34*/ +{0x00,0x00,0x00,0x00,0x3F,0x80,0x01,0xFF,0xE0,0x03,0x80,0x70,0x02,0x00,0x18,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x10,0x06,0x00,0x20,0x07,0x80,0xC0,0x00,0x00,0x00},/*"C",35*/ +{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x18,0x02,0x00,0x10,0x03,0x80,0x70,0x01,0xFF,0xE0,0x00,0x7F,0x80,0x00,0x00,0x00},/*"D",36*/ +{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x08,0x08,0x04,0x08,0x08,0x04,0x08,0x08,0x04,0x08,0x08,0x04,0x3E,0x08,0x04,0x00,0x08,0x06,0x00,0x18,0x01,0x00,0x60,0x00,0x00,0x00},/*"E",37*/ +{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x08,0x08,0x04,0x08,0x00,0x04,0x08,0x00,0x04,0x08,0x00,0x04,0x3E,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x00},/*"F",38*/ +{0x00,0x00,0x00,0x00,0x3F,0x80,0x01,0xFF,0xE0,0x03,0x80,0x70,0x06,0x00,0x18,0x04,0x00,0x08,0x04,0x02,0x08,0x04,0x02,0x08,0x02,0x03,0xF0,0x07,0x83,0xF0,0x00,0x02,0x00,0x00,0x02,0x00},/*"G",39*/ +{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x08,0x08,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x04,0x08,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x00,0x08},/*"H",40*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00},/*"I",41*/ +{0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x07,0x00,0x00,0x01,0x04,0x00,0x01,0x04,0x00,0x01,0x04,0x00,0x03,0x07,0xFF,0xFE,0x07,0xFF,0xFC,0x04,0x00,0x00,0x04,0x00,0x00,0x04,0x00,0x00},/*"J",42*/ +{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x0C,0x08,0x00,0x18,0x00,0x00,0x3E,0x00,0x04,0xC7,0x80,0x05,0x03,0xC8,0x06,0x00,0xF8,0x04,0x00,0x38,0x04,0x00,0x18,0x00,0x00,0x08},/*"K",43*/ +{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x18,0x00,0x00,0x60,0x00,0x00,0x00},/*"L",44*/ +{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0x80,0x08,0x07,0xFC,0x00,0x00,0x7F,0xC0,0x00,0x03,0xF8,0x00,0x07,0xC0,0x00,0x78,0x00,0x07,0x80,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x00,0x08},/*"M",45*/ +{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0x00,0x08,0x03,0xC0,0x00,0x00,0xE0,0x00,0x00,0x38,0x00,0x00,0x1E,0x00,0x00,0x07,0x00,0x00,0x01,0xC0,0x04,0x00,0xF0,0x07,0xFF,0xF8,0x04,0x00,0x00},/*"N",46*/ +{0x00,0x00,0x00,0x00,0x7F,0x80,0x01,0xFF,0xE0,0x03,0x80,0x70,0x06,0x00,0x18,0x04,0x00,0x08,0x04,0x00,0x08,0x06,0x00,0x18,0x03,0x00,0x30,0x01,0xFF,0xE0,0x00,0x7F,0x80,0x00,0x00,0x00},/*"O",47*/ +{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x04,0x08,0x04,0x04,0x00,0x04,0x04,0x00,0x04,0x04,0x00,0x04,0x04,0x00,0x06,0x0C,0x00,0x03,0xF8,0x00,0x01,0xF0,0x00,0x00,0x00,0x00},/*"P",48*/ +{0x00,0x00,0x00,0x00,0x7F,0x80,0x01,0xFF,0xE0,0x03,0x80,0x70,0x06,0x00,0x88,0x04,0x00,0x88,0x04,0x00,0xC8,0x06,0x00,0x3C,0x03,0x00,0x3E,0x01,0xFF,0xE6,0x00,0x7F,0x84,0x00,0x00,0x00},/*"Q",49*/ +{0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x08,0x08,0x04,0x08,0x00,0x04,0x0C,0x00,0x04,0x0F,0x00,0x04,0x0B,0xC0,0x06,0x10,0xF0,0x03,0xF0,0x38,0x01,0xE0,0x08,0x00,0x00,0x08},/*"R",50*/ +{0x00,0x00,0x00,0x01,0xE0,0xF8,0x03,0xF0,0x30,0x06,0x30,0x10,0x04,0x18,0x08,0x04,0x18,0x08,0x04,0x0C,0x08,0x04,0x0C,0x08,0x02,0x06,0x18,0x02,0x07,0xF0,0x07,0x81,0xE0,0x00,0x00,0x00},/*"S",51*/ +{0x01,0x80,0x00,0x06,0x00,0x00,0x04,0x00,0x00,0x04,0x00,0x00,0x04,0x00,0x08,0x07,0xFF,0xF8,0x07,0xFF,0xF8,0x04,0x00,0x08,0x04,0x00,0x00,0x04,0x00,0x00,0x06,0x00,0x00,0x01,0x80,0x00},/*"T",52*/ +{0x04,0x00,0x00,0x07,0xFF,0xE0,0x07,0xFF,0xF0,0x04,0x00,0x18,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x04,0x00,0x10,0x07,0xFF,0xE0,0x04,0x00,0x00},/*"U",53*/ +{0x04,0x00,0x00,0x06,0x00,0x00,0x07,0xE0,0x00,0x07,0xFE,0x00,0x04,0x1F,0xE0,0x00,0x01,0xF8,0x00,0x00,0x38,0x00,0x01,0xE0,0x04,0x3E,0x00,0x07,0xC0,0x00,0x06,0x00,0x00,0x04,0x00,0x00},/*"V",54*/ +{0x04,0x00,0x00,0x07,0xE0,0x00,0x07,0xFF,0xC0,0x04,0x1F,0xF8,0x00,0x07,0xC0,0x07,0xF8,0x00,0x07,0xFF,0x80,0x04,0x3F,0xF8,0x00,0x07,0xC0,0x04,0xF8,0x00,0x07,0x00,0x00,0x04,0x00,0x00},/*"W",55*/ +{0x00,0x00,0x00,0x04,0x00,0x08,0x06,0x00,0x18,0x07,0xC0,0x78,0x05,0xF1,0xC8,0x00,0x3E,0x00,0x00,0x1F,0x80,0x04,0x63,0xE8,0x07,0x80,0xF8,0x06,0x00,0x18,0x04,0x00,0x08,0x00,0x00,0x00},/*"X",56*/ +{0x04,0x00,0x00,0x06,0x00,0x00,0x07,0x80,0x00,0x07,0xE0,0x08,0x04,0x7C,0x08,0x00,0x1F,0xF8,0x00,0x07,0xF8,0x00,0x18,0x08,0x04,0xE0,0x08,0x07,0x00,0x00,0x06,0x00,0x00,0x04,0x00,0x00},/*"Y",57*/ +{0x00,0x00,0x00,0x01,0x00,0x08,0x06,0x00,0x38,0x04,0x00,0xF8,0x04,0x03,0xE8,0x04,0x0F,0x08,0x04,0x7C,0x08,0x05,0xF0,0x08,0x07,0xC0,0x08,0x07,0x00,0x18,0x04,0x00,0x60,0x00,0x00,0x00},/*"Z",58*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xFE,0x20,0x00,0x02,0x20,0x00,0x02,0x20,0x00,0x02,0x20,0x00,0x02,0x20,0x00,0x02,0x00,0x00,0x00},/*"[",59*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x07,0x00,0x00,0x00,0xC0,0x00,0x00,0x38,0x00,0x00,0x06,0x00,0x00,0x01,0xC0,0x00,0x00,0x30,0x00,0x00,0x0E,0x00,0x00,0x01,0x00,0x00,0x00},/*"\",60*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x02,0x20,0x00,0x02,0x20,0x00,0x02,0x20,0x00,0x02,0x20,0x00,0x02,0x3F,0xFF,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"]",61*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x10,0x00,0x00,0x30,0x00,0x00,0x20,0x00,0x00,0x30,0x00,0x00,0x10,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"^",62*/ +{0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x01},/*"_",63*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00,0x10,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"`",64*/ +{0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x19,0xF8,0x00,0x1B,0x18,0x00,0x22,0x08,0x00,0x26,0x08,0x00,0x24,0x08,0x00,0x24,0x10,0x00,0x3F,0xF8,0x00,0x1F,0xF8,0x00,0x00,0x08,0x00,0x00,0x18},/*"a",65*/ +{0x00,0x00,0x00,0x04,0x00,0x00,0x07,0xFF,0xF8,0x0F,0xFF,0xF0,0x00,0x18,0x18,0x00,0x10,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x30,0x18,0x00,0x1F,0xF0,0x00,0x0F,0xC0,0x00,0x00,0x00},/*"b",66*/ +{0x00,0x00,0x00,0x00,0x07,0xC0,0x00,0x1F,0xF0,0x00,0x18,0x30,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x3C,0x08,0x00,0x1C,0x10,0x00,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00},/*"c",67*/ +{0x00,0x00,0x00,0x00,0x07,0xC0,0x00,0x1F,0xF0,0x00,0x38,0x18,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x04,0x10,0x10,0x07,0xFF,0xF8,0x0F,0xFF,0xF0,0x00,0x00,0x10,0x00,0x00,0x00},/*"d",68*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xC0,0x00,0x1F,0xF0,0x00,0x12,0x30,0x00,0x22,0x18,0x00,0x22,0x08,0x00,0x22,0x08,0x00,0x32,0x08,0x00,0x1E,0x10,0x00,0x0E,0x20,0x00,0x00,0x00},/*"e",69*/ +{0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x08,0x00,0x20,0x08,0x01,0xFF,0xF8,0x03,0xFF,0xF8,0x06,0x20,0x08,0x04,0x20,0x08,0x04,0x20,0x08,0x07,0x20,0x00,0x03,0x00,0x00,0x00,0x00,0x00},/*"f",70*/ +{0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x0E,0x6E,0x00,0x1F,0xF3,0x00,0x31,0xB1,0x00,0x20,0xB1,0x00,0x20,0xB1,0x00,0x31,0x91,0x00,0x1F,0x13,0x00,0x2E,0x1E,0x00,0x20,0x0E,0x00,0x30,0x00},/*"g",71*/ +{0x00,0x00,0x00,0x04,0x00,0x08,0x07,0xFF,0xF8,0x0F,0xFF,0xF8,0x00,0x10,0x08,0x00,0x20,0x00,0x00,0x20,0x00,0x00,0x20,0x08,0x00,0x3F,0xF8,0x00,0x1F,0xF8,0x00,0x00,0x08,0x00,0x00,0x00},/*"h",72*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x06,0x3F,0xF8,0x06,0x3F,0xF8,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00},/*"i",73*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x03,0x00,0x20,0x01,0x00,0x20,0x01,0x00,0x20,0x03,0x06,0x3F,0xFE,0x06,0x3F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"j",74*/ +{0x00,0x00,0x00,0x04,0x00,0x08,0x07,0xFF,0xF8,0x0F,0xFF,0xF8,0x00,0x01,0x88,0x00,0x03,0x00,0x00,0x2F,0xC0,0x00,0x38,0xF8,0x00,0x20,0x38,0x00,0x20,0x08,0x00,0x00,0x08,0x00,0x00,0x00},/*"k",75*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x08,0x04,0x00,0x08,0x04,0x00,0x08,0x07,0xFF,0xF8,0x0F,0xFF,0xF8,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00},/*"l",76*/ +{0x00,0x20,0x08,0x00,0x3F,0xF8,0x00,0x3F,0xF8,0x00,0x10,0x08,0x00,0x20,0x00,0x00,0x3F,0xF8,0x00,0x3F,0xF8,0x00,0x10,0x08,0x00,0x20,0x00,0x00,0x3F,0xF8,0x00,0x3F,0xF8,0x00,0x00,0x08},/*"m",77*/ +{0x00,0x00,0x00,0x00,0x20,0x08,0x00,0x3F,0xF8,0x00,0x3F,0xF8,0x00,0x10,0x08,0x00,0x10,0x00,0x00,0x20,0x00,0x00,0x20,0x08,0x00,0x3F,0xF8,0x00,0x1F,0xF8,0x00,0x00,0x08,0x00,0x00,0x00},/*"n",78*/ +{0x00,0x00,0x00,0x00,0x07,0xC0,0x00,0x0F,0xF0,0x00,0x18,0x30,0x00,0x30,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x30,0x08,0x00,0x18,0x30,0x00,0x0F,0xF0,0x00,0x07,0xC0,0x00,0x00,0x00},/*"o",79*/ +{0x00,0x00,0x00,0x00,0x20,0x01,0x00,0x3F,0xFF,0x00,0x3F,0xFF,0x00,0x10,0x11,0x00,0x20,0x09,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x30,0x38,0x00,0x1F,0xF0,0x00,0x0F,0xC0,0x00,0x00,0x00},/*"p",80*/ +{0x00,0x00,0x00,0x00,0x07,0xC0,0x00,0x1F,0xF0,0x00,0x38,0x18,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x20,0x09,0x00,0x10,0x11,0x00,0x1F,0xFF,0x00,0x3F,0xFF,0x00,0x00,0x01,0x00,0x00,0x00},/*"q",81*/ +{0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x3F,0xF8,0x00,0x3F,0xF8,0x00,0x08,0x08,0x00,0x10,0x08,0x00,0x20,0x08,0x00,0x20,0x00,0x00,0x30,0x00,0x00,0x30,0x00,0x00,0x00,0x00},/*"r",82*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x78,0x00,0x1E,0x18,0x00,0x33,0x08,0x00,0x23,0x08,0x00,0x21,0x08,0x00,0x21,0x88,0x00,0x21,0x98,0x00,0x30,0xF0,0x00,0x38,0x60,0x00,0x00,0x00},/*"s",83*/ +{0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00,0xFF,0xF0,0x03,0xFF,0xF8,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00},/*"t",84*/ +{0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x3F,0xF0,0x00,0x7F,0xF8,0x00,0x00,0x18,0x00,0x00,0x08,0x00,0x00,0x08,0x00,0x20,0x10,0x00,0x3F,0xF8,0x00,0x7F,0xF0,0x00,0x00,0x10,0x00,0x00,0x00},/*"u",85*/ +{0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x30,0x00,0x00,0x3C,0x00,0x00,0x3F,0x80,0x00,0x23,0xF0,0x00,0x00,0x78,0x00,0x00,0x70,0x00,0x23,0x80,0x00,0x3C,0x00,0x00,0x30,0x00,0x00,0x20,0x00},/*"v",86*/ +{0x00,0x20,0x00,0x00,0x3C,0x00,0x00,0x3F,0xE0,0x00,0x23,0xF8,0x00,0x00,0xE0,0x00,0x27,0x00,0x00,0x3E,0x00,0x00,0x3F,0xE0,0x00,0x21,0xF8,0x00,0x01,0xE0,0x00,0x3E,0x00,0x00,0x20,0x00},/*"w",87*/ +{0x00,0x00,0x00,0x00,0x20,0x08,0x00,0x20,0x08,0x00,0x38,0x38,0x00,0x3E,0x68,0x00,0x27,0x80,0x00,0x03,0xC8,0x00,0x2C,0xF8,0x00,0x38,0x38,0x00,0x20,0x18,0x00,0x20,0x08,0x00,0x00,0x00},/*"x",88*/ +{0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x30,0x03,0x00,0x3C,0x01,0x00,0x3F,0x83,0x00,0x23,0xEC,0x00,0x00,0x70,0x00,0x23,0x80,0x00,0x3C,0x00,0x00,0x20,0x00,0x00,0x20,0x00,0x00,0x00,0x00},/*"y",89*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x08,0x00,0x20,0x38,0x00,0x20,0xF8,0x00,0x23,0xE8,0x00,0x2F,0x88,0x00,0x3E,0x08,0x00,0x38,0x08,0x00,0x20,0x18,0x00,0x00,0x70,0x00,0x00,0x00},/*"z",90*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x14,0x00,0x1F,0xF7,0xFC,0x30,0x00,0x06,0x20,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00},/*"{",91*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"|",92*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x02,0x30,0x00,0x06,0x1F,0xF7,0xFC,0x00,0x14,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"}",93*/ +{0x00,0x00,0x00,0x18,0x00,0x00,0x60,0x00,0x00,0x40,0x00,0x00,0x40,0x00,0x00,0x20,0x00,0x00,0x10,0x00,0x00,0x08,0x00,0x00,0x04,0x00,0x00,0x04,0x00,0x00,0x0C,0x00,0x00,0x10,0x00,0x00},/*"~",94*/ +}; + +/* 32*32 ASCII×Ö·û¼¯µãÕó */ +const unsigned char asc2_3216[95][64]={ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",0*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xF0,0x00,0xC0,0x07,0xFF,0xE1,0xE0,0x07,0xF0,0x01,0xE0,0x00,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"!",1*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x01,0xC0,0x00,0x00,0x07,0x80,0x00,0x00,0x1F,0x00,0x00,0x00,0x1E,0x00,0x00,0x00,0x1C,0x20,0x00,0x00,0x01,0xC0,0x00,0x00,0x07,0x80,0x00,0x00,0x1F,0x00,0x00,0x00,0x1E,0x00,0x00,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*""",2*/ +{0x00,0x00,0x00,0x00,0x00,0x18,0x0C,0x00,0x00,0x18,0x0C,0x00,0x00,0x18,0x0F,0xE0,0x00,0x1F,0xFC,0x00,0x03,0xF8,0x0C,0x00,0x00,0x18,0x0C,0x00,0x00,0x18,0x0C,0x00,0x00,0x18,0x0C,0x00,0x00,0x18,0x0C,0x00,0x00,0x18,0x0F,0xE0,0x00,0x1F,0xFC,0x00,0x03,0xF8,0x0C,0x00,0x00,0x18,0x0C,0x00,0x00,0x18,0x0C,0x00,0x00,0x00,0x00,0x00},/*"#",3*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x00,0x78,0x07,0xC0,0x00,0xFC,0x06,0x40,0x01,0x0E,0x00,0x20,0x03,0x07,0x00,0x20,0x02,0x03,0x80,0x20,0x0F,0xFF,0xFF,0xFC,0x02,0x01,0xC0,0x20,0x02,0x00,0xE0,0x60,0x01,0x30,0x70,0x40,0x01,0xF0,0x3F,0x80,0x00,0xF0,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"$",4*/ +{0x00,0xFE,0x00,0x00,0x01,0xFF,0x00,0x00,0x03,0x01,0x80,0x00,0x02,0x00,0x80,0x60,0x03,0x01,0x81,0xC0,0x01,0xFF,0x07,0x00,0x00,0xFE,0x18,0x00,0x00,0x00,0xE0,0x00,0x00,0x03,0xBF,0x00,0x00,0x0C,0xFF,0xC0,0x00,0x71,0x80,0x60,0x01,0xC1,0x00,0x20,0x03,0x01,0x80,0x60,0x00,0x00,0xFF,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00},/*"%",5*/ +{0x00,0x00,0x1F,0x00,0x00,0x00,0x7F,0xC0,0x00,0xFC,0xC0,0xC0,0x01,0xFF,0x80,0x60,0x03,0x03,0xE0,0x20,0x02,0x02,0x78,0x20,0x02,0x06,0x1E,0x20,0x03,0xFC,0x07,0x40,0x01,0xF0,0x03,0x80,0x00,0x01,0x03,0xC0,0x00,0x01,0x1C,0x60,0x00,0x01,0xE0,0x20,0x00,0x01,0x00,0x20,0x00,0x01,0x00,0x40,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x00},/*"&",6*/ +{0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x1C,0x60,0x00,0x00,0x1C,0x40,0x00,0x00,0x1F,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"'",7*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xF8,0x00,0x00,0x3F,0xFF,0x00,0x00,0x78,0x07,0xC0,0x01,0xC0,0x00,0xE0,0x03,0x00,0x00,0x30,0x04,0x00,0x00,0x08,0x08,0x00,0x00,0x04,0x10,0x00,0x00,0x02,0x00,0x00,0x00,0x00},/*"(",8*/ +{0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x02,0x08,0x00,0x00,0x04,0x04,0x00,0x00,0x08,0x03,0x00,0x00,0x30,0x01,0xC0,0x00,0xE0,0x00,0x78,0x07,0xC0,0x00,0x3F,0xFF,0x00,0x00,0x07,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*")",9*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x18,0x00,0x00,0x0E,0x38,0x00,0x00,0x0E,0x38,0x00,0x00,0x06,0x30,0x00,0x00,0x03,0x60,0x00,0x00,0x61,0x43,0x80,0x00,0xFF,0xFF,0x80,0x00,0x61,0x43,0x00,0x00,0x03,0x60,0x00,0x00,0x06,0x30,0x00,0x00,0x0E,0x38,0x00,0x00,0x0E,0x38,0x00,0x00,0x0C,0x18,0x00,0x00,0x00,0x00,0x00},/*"*",10*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x7F,0xFF,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00},/*"+",11*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0xE3,0x00,0x00,0x00,0xE2,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*",",12*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00},/*"-",13*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0x00,0x01,0xE0,0x00,0x00,0x01,0xE0,0x00,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*".",14*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0xE0,0x00,0x00,0x03,0x80,0x00,0x00,0x0E,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0xE0,0x00,0x00,0x03,0x80,0x00,0x00,0x0E,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0xE0,0x00,0x00,0x03,0x80,0x00,0x00,0x0E,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"/",15*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xF8,0x00,0x00,0x7F,0xFF,0x00,0x00,0xF0,0x07,0x80,0x01,0x80,0x00,0xC0,0x03,0x00,0x00,0x60,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0x00,0x00,0x60,0x01,0x80,0x00,0xC0,0x00,0xE0,0x03,0x80,0x00,0x7F,0xFF,0x00,0x00,0x0F,0xF8,0x00,0x00,0x00,0x00,0x00},/*"0",16*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x20,0x00,0x80,0x00,0x20,0x00,0x80,0x00,0x20,0x00,0x80,0x00,0x60,0x01,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"1",17*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0xE0,0x00,0x98,0x01,0x60,0x01,0x00,0x02,0x60,0x02,0x00,0x04,0x60,0x02,0x00,0x08,0x60,0x02,0x00,0x10,0x60,0x02,0x00,0x20,0x60,0x02,0x00,0x40,0x60,0x03,0x00,0x80,0x60,0x01,0x83,0x00,0x60,0x01,0xFE,0x00,0xE0,0x00,0x7C,0x07,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"2",18*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x07,0x80,0x01,0xF0,0x07,0xC0,0x01,0x00,0x00,0x40,0x02,0x00,0x00,0x20,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x20,0x03,0x03,0x80,0x20,0x01,0x86,0x80,0x40,0x01,0xFC,0xC0,0xC0,0x00,0x78,0x7F,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"3",19*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x48,0x00,0x00,0x01,0x88,0x00,0x00,0x06,0x08,0x00,0x00,0x0C,0x08,0x10,0x00,0x30,0x08,0x10,0x00,0x40,0x08,0x10,0x01,0xFF,0xFF,0xF0,0x03,0xFF,0xFF,0xF0,0x03,0xFF,0xFF,0xF0,0x00,0x00,0x08,0x10,0x00,0x00,0x08,0x10,0x00,0x00,0x08,0x10,0x00,0x00,0x00,0x00},/*"4",20*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x00,0x1F,0x86,0x40,0x03,0xE1,0x00,0x20,0x03,0x02,0x00,0x20,0x03,0x04,0x00,0x20,0x03,0x04,0x00,0x20,0x03,0x04,0x00,0x20,0x03,0x04,0x00,0x20,0x03,0x06,0x00,0x40,0x03,0x03,0x01,0xC0,0x03,0x01,0xFF,0x80,0x03,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"5",21*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xFC,0x00,0x00,0x3F,0xFF,0x00,0x00,0x70,0xC3,0x80,0x00,0x81,0x80,0xC0,0x01,0x01,0x00,0x60,0x03,0x02,0x00,0x20,0x02,0x02,0x00,0x20,0x02,0x02,0x00,0x20,0x02,0x02,0x00,0x20,0x02,0x03,0x00,0x40,0x01,0xC1,0x80,0xC0,0x00,0xC0,0xFF,0x80,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x00},/*"6",22*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0x80,0x00,0x00,0x03,0x00,0x00,0x00,0x03,0x00,0x07,0xE0,0x03,0x00,0x3F,0xE0,0x03,0x01,0xC0,0x00,0x03,0x06,0x00,0x00,0x03,0x18,0x00,0x00,0x03,0x60,0x00,0x00,0x03,0x80,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"7",23*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x00,0x00,0x78,0x3F,0x80,0x00,0xFC,0x60,0xC0,0x01,0x8E,0xC0,0x40,0x03,0x07,0x80,0x20,0x02,0x03,0x00,0x20,0x02,0x01,0x80,0x20,0x02,0x01,0x80,0x20,0x02,0x01,0xC0,0x20,0x03,0x01,0xE0,0x40,0x01,0x86,0x70,0xC0,0x00,0xFC,0x3F,0x80,0x00,0x78,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"8",24*/ +{0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0xFF,0x81,0xC0,0x01,0xC0,0xC1,0xC0,0x01,0x00,0x60,0x20,0x02,0x00,0x20,0x20,0x02,0x00,0x20,0x20,0x02,0x00,0x20,0x20,0x02,0x00,0x20,0x60,0x02,0x00,0x40,0xC0,0x01,0x00,0xC1,0x80,0x00,0xC1,0x8F,0x00,0x00,0x7F,0xFE,0x00,0x00,0x1F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"9",25*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0xC0,0x00,0x07,0x81,0xE0,0x00,0x07,0x81,0xE0,0x00,0x03,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*":",26*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x66,0x00,0x06,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*";",27*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x01,0xC0,0x00,0x00,0x03,0x60,0x00,0x00,0x06,0x30,0x00,0x00,0x0C,0x18,0x00,0x00,0x18,0x0C,0x00,0x00,0x30,0x06,0x00,0x00,0x60,0x03,0x00,0x00,0xC0,0x01,0x80,0x01,0x00,0x00,0x40,0x02,0x00,0x00,0x20,0x04,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"<",28*/ +{0x00,0x00,0x00,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x00,0x00,0x00},/*"=",29*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x10,0x02,0x00,0x00,0x20,0x01,0x00,0x00,0x40,0x00,0xC0,0x01,0x80,0x00,0x60,0x03,0x00,0x00,0x30,0x06,0x00,0x00,0x18,0x0C,0x00,0x00,0x0C,0x18,0x00,0x00,0x06,0x30,0x00,0x00,0x03,0x60,0x00,0x00,0x01,0xC0,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*">",30*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x01,0xF8,0x00,0x00,0x02,0x38,0x00,0x00,0x02,0x00,0x00,0x00,0x04,0x00,0x00,0xC0,0x04,0x00,0x79,0xE0,0x04,0x00,0x81,0xE0,0x04,0x01,0x00,0xC0,0x04,0x03,0x00,0x00,0x02,0x02,0x00,0x00,0x03,0x06,0x00,0x00,0x01,0xFC,0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,0x00,0x00},/*"?",31*/ +{0x00,0x00,0x00,0x00,0x00,0x0F,0xF8,0x00,0x00,0x3F,0xFE,0x00,0x00,0x70,0x07,0x80,0x00,0xC0,0x00,0xC0,0x01,0x01,0xF8,0x40,0x03,0x07,0xFC,0x20,0x02,0x1E,0x04,0x20,0x02,0x30,0x08,0x20,0x02,0x20,0x30,0x20,0x02,0x3F,0xFC,0x20,0x01,0x3F,0x04,0x40,0x01,0x80,0x0C,0xC0,0x00,0xE0,0x31,0x80,0x00,0x1F,0xC2,0x00,0x00,0x00,0x00,0x00},/*"@",32*/ +{0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x60,0x00,0x00,0x03,0xE0,0x00,0x00,0x3E,0x20,0x00,0x03,0xE0,0x20,0x00,0x3E,0x20,0x00,0x03,0xE0,0x20,0x00,0x03,0x80,0x20,0x00,0x07,0xFC,0x20,0x00,0x00,0x3F,0xE0,0x00,0x00,0x03,0xFE,0x20,0x00,0x00,0x3F,0xE0,0x00,0x00,0x01,0xE0,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00},/*"A",33*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x20,0x03,0x03,0x00,0x20,0x01,0x86,0x80,0x60,0x01,0xFC,0xC0,0xC0,0x00,0xF8,0x7F,0x80,0x00,0x00,0x1F,0x00,0x00,0x00,0x00,0x00},/*"B",34*/ +{0x00,0x00,0x00,0x00,0x00,0x07,0xF8,0x00,0x00,0x3F,0xFF,0x00,0x00,0x70,0x07,0x80,0x00,0xC0,0x00,0xC0,0x01,0x00,0x00,0x40,0x03,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x01,0x00,0x00,0x40,0x01,0x80,0x00,0xC0,0x03,0xC0,0x01,0x80,0x00,0x30,0x06,0x00,0x00,0x00,0x00,0x00},/*"C",35*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0x00,0x00,0x60,0x01,0x00,0x00,0x40,0x01,0x80,0x00,0xC0,0x00,0xF0,0x07,0x80,0x00,0x7F,0xFE,0x00,0x00,0x0F,0xF8,0x00,0x00,0x00,0x00,0x00},/*"D",36*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x20,0x02,0x03,0x80,0x20,0x02,0x0F,0xE0,0x20,0x03,0x00,0x00,0x60,0x03,0xC0,0x00,0xE0,0x00,0x60,0x03,0x00,0x00,0x00,0x00,0x00},/*"E",37*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x00,0x02,0x01,0x00,0x00,0x02,0x01,0x00,0x00,0x02,0x01,0x00,0x00,0x02,0x03,0x80,0x00,0x03,0x0F,0xE0,0x00,0x03,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x00,0x60,0x00,0x00},/*"F",38*/ +{0x00,0x00,0x00,0x00,0x00,0x07,0xF8,0x00,0x00,0x3F,0xFE,0x00,0x00,0x70,0x07,0x80,0x01,0xC0,0x01,0xC0,0x01,0x00,0x00,0x40,0x03,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x01,0x00,0x20,0x20,0x01,0x00,0x20,0x40,0x03,0xC0,0x3F,0x80,0x00,0x30,0x3F,0x80,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00},/*"G",39*/ +{0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x00,0x80,0x20,0x02,0x00,0x80,0x20,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x02,0x00,0x80,0x20,0x02,0x00,0x80,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x00,0x00,0x00,0x00},/*"H",40*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"I",41*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x00,0x00,0x0F,0x00,0x00,0x00,0x0F,0x00,0x00,0x00,0x01,0x02,0x00,0x00,0x01,0x02,0x00,0x00,0x01,0x02,0x00,0x00,0x03,0x02,0x00,0x00,0x06,0x03,0xFF,0xFF,0xFC,0x03,0xFF,0xFF,0xF8,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"J",42*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x00,0xC0,0x20,0x02,0x01,0x00,0x20,0x00,0x07,0x80,0x00,0x00,0x0F,0xE0,0x00,0x00,0x30,0xF8,0x00,0x02,0x60,0x3E,0x20,0x03,0x80,0x0F,0x20,0x03,0x00,0x03,0xE0,0x02,0x00,0x00,0xE0,0x02,0x00,0x00,0x20,0x00,0x00,0x00,0x20},/*"K",43*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0xE0,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00},/*"L",44*/ +{0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xE0,0x00,0x20,0x03,0xFF,0x00,0x20,0x00,0x1F,0xF0,0x00,0x00,0x01,0xFF,0x80,0x00,0x00,0x0F,0xE0,0x00,0x00,0x1E,0x00,0x00,0x03,0xE0,0x00,0x00,0x3E,0x00,0x20,0x03,0xE0,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20},/*"M",45*/ +{0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0x80,0x00,0x20,0x03,0xF0,0x00,0x20,0x00,0xFC,0x00,0x00,0x00,0x1F,0x00,0x00,0x00,0x07,0xC0,0x00,0x00,0x01,0xF0,0x00,0x00,0x00,0x7C,0x00,0x02,0x00,0x1F,0x80,0x02,0x00,0x07,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"N",46*/ +{0x00,0x00,0x00,0x00,0x00,0x0F,0xF8,0x00,0x00,0x3F,0xFE,0x00,0x00,0xF0,0x07,0x80,0x01,0x80,0x00,0xC0,0x01,0x00,0x00,0x40,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x01,0x00,0x00,0x40,0x01,0x80,0x00,0xC0,0x00,0xF0,0x03,0x80,0x00,0x3F,0xFE,0x00,0x00,0x0F,0xF8,0x00,0x00,0x00,0x00,0x00},/*"O",47*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x00,0x80,0x20,0x02,0x00,0x80,0x20,0x02,0x00,0x80,0x00,0x02,0x00,0x80,0x00,0x02,0x00,0x80,0x00,0x02,0x00,0x80,0x00,0x03,0x01,0x80,0x00,0x01,0x83,0x00,0x00,0x00,0xFE,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00},/*"P",48*/ +{0x00,0x00,0x00,0x00,0x00,0x0F,0xF8,0x00,0x00,0x7F,0xFF,0x00,0x00,0xF0,0x03,0x80,0x01,0x80,0x01,0xC0,0x01,0x00,0x06,0x40,0x02,0x00,0x04,0x20,0x02,0x00,0x04,0x20,0x02,0x00,0x06,0x20,0x02,0x00,0x03,0xE0,0x01,0x00,0x00,0xF8,0x01,0x80,0x00,0x5C,0x00,0xE0,0x03,0x8C,0x00,0x3F,0xFF,0x0C,0x00,0x0F,0xFC,0x18,0x00,0x00,0x00,0x00},/*"Q",49*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x01,0x00,0x20,0x02,0x01,0x00,0x20,0x02,0x01,0x80,0x00,0x02,0x01,0xE0,0x00,0x02,0x01,0xFC,0x00,0x03,0x03,0x3F,0x80,0x01,0x86,0x07,0xE0,0x01,0xFC,0x00,0xE0,0x00,0xF8,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00},/*"R",50*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x06,0x00,0x00,0xFE,0x01,0xE0,0x01,0x86,0x00,0xC0,0x03,0x03,0x00,0x40,0x02,0x03,0x00,0x20,0x02,0x01,0x80,0x20,0x02,0x01,0x80,0x20,0x02,0x01,0xC0,0x20,0x02,0x00,0xC0,0x20,0x01,0x00,0xE0,0x60,0x01,0x80,0x70,0xC0,0x03,0xE0,0x3F,0x80,0x00,0x00,0x1F,0x00,0x00,0x00,0x00,0x00},/*"S",51*/ +{0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x03,0x80,0x00,0x00,0x03,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xE0,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x03,0x80,0x00,0x00,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00},/*"T",52*/ +{0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x03,0xFF,0xFF,0x00,0x03,0xFF,0xFF,0xC0,0x02,0x00,0x00,0x40,0x02,0x00,0x00,0x60,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x02,0x00,0x00,0x40,0x02,0x00,0x00,0x80,0x03,0xFF,0xFF,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"U",53*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xFC,0x00,0x00,0x02,0x3F,0xC0,0x00,0x00,0x03,0xF8,0x00,0x00,0x00,0x7F,0x80,0x00,0x00,0x07,0xE0,0x00,0x00,0x07,0x80,0x00,0x00,0x78,0x00,0x02,0x03,0xC0,0x00,0x02,0x3C,0x00,0x00,0x03,0xC0,0x00,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00},/*"V",54*/ +{0x02,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xFF,0x80,0x00,0x02,0x3F,0xFE,0x00,0x02,0x00,0x7F,0xE0,0x00,0x00,0x0F,0x00,0x02,0x00,0xF0,0x00,0x03,0xEF,0x00,0x00,0x03,0xFF,0x80,0x00,0x02,0x0F,0xFE,0x00,0x00,0x00,0x3F,0xE0,0x00,0x00,0x1F,0x00,0x02,0x07,0xE0,0x00,0x03,0xF8,0x00,0x00,0x03,0x00,0x00,0x00,0x02,0x00,0x00,0x00},/*"W",55*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0x80,0x00,0xE0,0x03,0xF0,0x03,0x20,0x02,0xFC,0x0C,0x20,0x02,0x1F,0x30,0x00,0x00,0x07,0xC0,0x00,0x00,0x07,0xF0,0x00,0x02,0x18,0x7C,0x00,0x02,0x60,0x1F,0x20,0x03,0x80,0x03,0xE0,0x02,0x00,0x00,0xE0,0x02,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00},/*"X",56*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xF8,0x00,0x00,0x02,0x3E,0x00,0x20,0x02,0x0F,0xC0,0x20,0x00,0x01,0xFF,0xE0,0x00,0x00,0x7F,0xE0,0x00,0x03,0x80,0x20,0x02,0x1C,0x00,0x20,0x02,0x70,0x00,0x00,0x03,0x80,0x00,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"Y",57*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x60,0x00,0xE0,0x03,0x80,0x03,0xE0,0x03,0x00,0x0F,0xA0,0x02,0x00,0x3E,0x20,0x02,0x00,0xF8,0x20,0x02,0x03,0xE0,0x20,0x02,0x0F,0x80,0x20,0x02,0x3E,0x00,0x20,0x02,0x78,0x00,0x20,0x03,0xE0,0x00,0x60,0x03,0x80,0x00,0xE0,0x02,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"Z",58*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xFF,0xFF,0xFC,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"[",59*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x1E,0x00,0x00,0x00,0x03,0xC0,0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x1E,0x00,0x00,0x00,0x07,0x80,0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"\",60*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x10,0x00,0x00,0x04,0x1F,0xFF,0xFF,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"]",61*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"^",62*/ +{0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01},/*"_",63*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"`",64*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x00,0x01,0x8F,0xC0,0x00,0x03,0x8C,0x60,0x00,0x06,0x18,0x20,0x00,0x04,0x10,0x20,0x00,0x04,0x10,0x20,0x00,0x04,0x20,0x20,0x00,0x04,0x20,0x40,0x00,0x06,0x20,0x40,0x00,0x03,0xFF,0xC0,0x00,0x01,0xFF,0xE0,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0xC0,0x00,0x00,0x00,0x00},/*"a",65*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x03,0xFF,0xFF,0xE0,0x07,0xFF,0xFF,0xC0,0x00,0x01,0x80,0xC0,0x00,0x02,0x00,0x60,0x00,0x02,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x06,0x00,0x40,0x00,0x03,0x00,0xC0,0x00,0x01,0xFF,0x80,0x00,0x00,0xFE,0x00,0x00,0x00,0x00,0x00},/*"b",66*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x00,0x01,0xFF,0x80,0x00,0x03,0x81,0xC0,0x00,0x02,0x00,0x40,0x00,0x06,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x06,0x00,0x20,0x00,0x03,0xC0,0x40,0x00,0x01,0xC0,0x80,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"c",67*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x00,0x01,0xFF,0x80,0x00,0x03,0x80,0xC0,0x00,0x06,0x00,0x60,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x02,0x04,0x00,0x40,0x02,0x02,0x00,0x80,0x03,0xFF,0xFF,0xE0,0x07,0xFF,0xFF,0xC0,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x00},/*"d",68*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x00,0x01,0xFF,0x80,0x00,0x03,0x11,0xC0,0x00,0x02,0x10,0x40,0x00,0x04,0x10,0x60,0x00,0x04,0x10,0x20,0x00,0x04,0x10,0x20,0x00,0x04,0x10,0x20,0x00,0x06,0x10,0x20,0x00,0x03,0x10,0x40,0x00,0x01,0xF0,0xC0,0x00,0x00,0x71,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"e",69*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x7F,0xFF,0xE0,0x01,0xFF,0xFF,0xE0,0x01,0x04,0x00,0x20,0x03,0x04,0x00,0x20,0x02,0x04,0x00,0x20,0x02,0x04,0x00,0x20,0x02,0x04,0x00,0x00,0x02,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,0x01,0xC0,0x00,0x00},/*"f",70*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x00,0xE3,0x3E,0x00,0x03,0xFF,0xC2,0x00,0x02,0x0C,0xC3,0x00,0x04,0x04,0xC1,0x00,0x04,0x04,0xC1,0x00,0x04,0x04,0xC1,0x00,0x04,0x04,0xC1,0x00,0x06,0x0C,0xC1,0x00,0x03,0xF8,0xC3,0x00,0x05,0xF0,0x62,0x00,0x06,0x00,0x7E,0x00,0x06,0x00,0x3C,0x00,0x00,0x00,0x00},/*"g",71*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x07,0xFF,0xFF,0xE0,0x00,0x01,0x00,0x20,0x00,0x02,0x00,0x20,0x00,0x06,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x20,0x00,0x06,0x00,0x20,0x00,0x03,0xFF,0xE0,0x00,0x01,0xFF,0xE0,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20},/*"h",72*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x03,0x87,0xFF,0xE0,0x03,0x8F,0xFF,0xE0,0x03,0x80,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"i",73*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x04,0x00,0x01,0x00,0x04,0x00,0x01,0x00,0x04,0x00,0x03,0x00,0x04,0x00,0x06,0x03,0x87,0xFF,0xFC,0x03,0x8F,0xFF,0xF8,0x03,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"j",74*/ +{0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x07,0xFF,0xFF,0xE0,0x00,0x00,0x08,0x20,0x00,0x00,0x10,0x20,0x00,0x00,0x30,0x00,0x00,0x00,0xFC,0x00,0x00,0x05,0x8E,0x00,0x00,0x07,0x07,0xA0,0x00,0x06,0x01,0xE0,0x00,0x04,0x00,0xE0,0x00,0x04,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00},/*"k",75*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x02,0x00,0x00,0x20,0x03,0xFF,0xFF,0xE0,0x07,0xFF,0xFF,0xE0,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"l",76*/ +{0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x20,0x00,0x07,0xFF,0xE0,0x00,0x0F,0xFF,0xE0,0x00,0x02,0x00,0x20,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x20,0x00,0x07,0xFF,0xE0,0x00,0x03,0xFF,0xE0,0x00,0x02,0x00,0x20,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x20,0x00,0x07,0xFF,0xE0,0x00,0x03,0xFF,0xE0,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00},/*"m",77*/ +{0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x07,0xFF,0xE0,0x00,0x0F,0xFF,0xE0,0x00,0x01,0x00,0x20,0x00,0x02,0x00,0x20,0x00,0x02,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x20,0x00,0x06,0x00,0x20,0x00,0x03,0xFF,0xE0,0x00,0x01,0xFF,0xE0,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20},/*"n",78*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0xFF,0x80,0x00,0x03,0x81,0xC0,0x00,0x02,0x00,0x40,0x00,0x06,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x06,0x00,0x20,0x00,0x02,0x00,0x40,0x00,0x03,0x81,0xC0,0x00,0x01,0xFF,0x80,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x00},/*"o",79*/ +{0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x01,0x00,0x04,0x00,0x01,0x00,0x07,0xFF,0xFF,0x00,0x0F,0xFF,0xFF,0x00,0x01,0x00,0xC1,0x00,0x02,0x00,0x41,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x06,0x00,0x40,0x00,0x03,0x01,0xC0,0x00,0x01,0xFF,0x80,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x00},/*"p",80*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x00,0x01,0xFF,0x80,0x00,0x03,0x80,0xC0,0x00,0x02,0x00,0x60,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x02,0x00,0x41,0x00,0x03,0x00,0xC1,0x00,0x03,0xFF,0xFF,0x00,0x07,0xFF,0xFF,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01},/*"q",81*/ +{0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x0F,0xFF,0xE0,0x00,0x0F,0xFF,0xE0,0x00,0x00,0xC0,0x20,0x00,0x01,0x00,0x20,0x00,0x02,0x00,0x20,0x00,0x06,0x00,0x20,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00},/*"r",82*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xE0,0x00,0x01,0xC0,0xE0,0x00,0x03,0xE0,0x40,0x00,0x06,0x30,0x20,0x00,0x04,0x30,0x20,0x00,0x04,0x18,0x20,0x00,0x04,0x18,0x20,0x00,0x04,0x18,0x20,0x00,0x04,0x0C,0x20,0x00,0x02,0x0C,0x60,0x00,0x03,0x07,0xC0,0x00,0x07,0x83,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"s",83*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x1F,0xFF,0x80,0x00,0xFF,0xFF,0xC0,0x00,0x04,0x00,0x60,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x40,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"t",84*/ +{0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x07,0xFF,0x80,0x00,0x0F,0xFF,0xC0,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x04,0x00,0x40,0x00,0x04,0x00,0x80,0x00,0x07,0xFF,0xE0,0x00,0x0F,0xFF,0xC0,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x40},/*"u",85*/ +{0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x07,0x80,0x00,0x00,0x07,0xF0,0x00,0x00,0x04,0xFE,0x00,0x00,0x04,0x1F,0xC0,0x00,0x00,0x03,0xE0,0x00,0x00,0x03,0x80,0x00,0x00,0x1C,0x00,0x00,0x04,0x60,0x00,0x00,0x07,0x80,0x00,0x00,0x06,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"v",86*/ +{0x00,0x04,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x07,0xC0,0x00,0x00,0x07,0xFC,0x00,0x00,0x04,0x3F,0x80,0x00,0x00,0x03,0xE0,0x00,0x04,0x0F,0x80,0x00,0x06,0xF0,0x00,0x00,0x07,0xF0,0x00,0x00,0x07,0xFF,0x80,0x00,0x04,0x0F,0xE0,0x00,0x00,0x03,0x80,0x00,0x04,0x3C,0x00,0x00,0x07,0xC0,0x00,0x00,0x06,0x00,0x00,0x00,0x04,0x00,0x00},/*"w",87*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x04,0x00,0x20,0x00,0x04,0x00,0x60,0x00,0x07,0x00,0xE0,0x00,0x07,0x83,0x20,0x00,0x07,0xE6,0x00,0x00,0x04,0xF8,0x00,0x00,0x00,0x3C,0x00,0x00,0x04,0x5E,0x20,0x00,0x05,0x87,0xA0,0x00,0x06,0x01,0xE0,0x00,0x04,0x00,0x60,0x00,0x04,0x00,0x20,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00},/*"x",88*/ +{0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x03,0x00,0x07,0x00,0x03,0x00,0x07,0xE0,0x01,0x00,0x04,0xF8,0x01,0x00,0x04,0x1F,0x02,0x00,0x00,0x07,0xFC,0x00,0x00,0x00,0xE0,0x00,0x00,0x07,0x00,0x00,0x04,0x38,0x00,0x00,0x07,0xC0,0x00,0x00,0x06,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00},/*"y",89*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x60,0x00,0x06,0x00,0xE0,0x00,0x04,0x03,0xE0,0x00,0x04,0x07,0xA0,0x00,0x04,0x0E,0x20,0x00,0x04,0x3C,0x20,0x00,0x04,0x70,0x20,0x00,0x05,0xE0,0x20,0x00,0x07,0x80,0x20,0x00,0x07,0x00,0x60,0x00,0x04,0x00,0xE0,0x00,0x00,0x03,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"z",90*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x01,0x40,0x00,0x07,0xFE,0x3F,0xF8,0x08,0x00,0x00,0x04,0x10,0x00,0x00,0x02,0x10,0x00,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"{",91*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"|",92*/ +{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x02,0x10,0x00,0x00,0x02,0x08,0x00,0x00,0x04,0x07,0xFE,0x3F,0xF8,0x00,0x01,0x40,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"}",93*/ +{0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"~",94*/ +}; + +#endif + + + + + + + + + + + + + + + + + + + + + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Inc/gpio.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/gpio.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Inc/gpio.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/gpio.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/lcd.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/lcd.h new file mode 100644 index 0000000..87b064d --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/lcd.h @@ -0,0 +1,238 @@ +/** + **************************************************************************************************** + * @file lcd.h + * @author ����ԭ���Ŷ�(ALIENTEK) + * @version V1.2 + * @date 2023-05-31 + * @brief 2.8��/3.5��/4.3��/7�� TFTLCD(MCU��) �������� + * ֧������IC�ͺŰ���:ILI9341/NT35310/NT35510/SSD1963/ST7789/ST7796/ILI9806 �� + * + * @license Copyright (c) 2020-2032, ������������ӿƼ����޹�˾ + **************************************************************************************************** + * @attention + * + * ʵ��ƽ̨:����ԭ�� STM32F103������ + * ������Ƶ:www.yuanzige.com + * ������̳:www.openedv.com + * ��˾��ַ:www.alientek.com + * �����ַ:openedv.taobao.com + * + * �޸�˵�� + * V1.0 20200530 + * ��һ�η��� + * V1.1 20200607 + * ����lcd_wr_xdata����, ����lcd_ex.c, ��ʱ�任�ռ併��lcd�����Ĵ����� + * V1.2 20230531 + * 1��������ST7796��ILI9806 IC֧�� + * + **************************************************************************************************** + */ + +#ifndef __LCD_H +#define __LCD_H + +#include "stdlib.h" +#include "main.h" +//#include "./SYSTEM/sys/sys.h" + + +/******************************************************************************************/ +/* LCD RST/WR/RD/BL/CS/RS ���� ���� + * LCD_D0~D15,��������̫��,�Ͳ������ﶨ����,ֱ����lcd_init�����޸�.��������ֲ��ʱ��,���˸� + * ��6��IO��, ���ø�LCD_Init�����D0~D15���ڵ�IO��. + */ + +/* RESET ��ϵͳ��λ�Ź��� �������ﲻ�ö��� RESET���� */ +//#define LCD_RST_GPIO_PORT GPIOx +//#define LCD_RST_GPIO_PIN GPIO_PIN_x +//#define LCD_RST_GPIO_CLK_ENABLE() do{ __HAL_RCC_GPIOx_CLK_ENABLE(); }while(0) /* ����IO��ʱ��ʹ�� */ + +#define LCD_BL_GPIO_PORT GPIOC +#define LCD_BL_GPIO_PIN GPIO_PIN_10 +#define LCD_BL_GPIO_CLK_ENABLE() do{ __HAL_RCC_GPIOC_CLK_ENABLE(); }while(0) /* ����IO��ʱ��ʹ�� */ + +#define LCD_WR_GPIO_PORT GPIOC +#define LCD_WR_GPIO_PIN GPIO_PIN_7 +#define LCD_WR_GPIO_CLK_ENABLE() do{ __HAL_RCC_GPIOC_CLK_ENABLE(); }while(0) /* ����IO��ʱ��ʹ�� */ + +#define LCD_RD_GPIO_PORT GPIOC +#define LCD_RD_GPIO_PIN GPIO_PIN_6 +#define LCD_RD_GPIO_CLK_ENABLE() do{ __HAL_RCC_GPIOC_CLK_ENABLE(); }while(0) /* ����IO��ʱ��ʹ�� */ + + +#define LCD_CS_GPIO_PORT GPIOC +#define LCD_CS_GPIO_PIN GPIO_PIN_9 +#define LCD_CS_GPIO_CLK_ENABLE() do{ __HAL_RCC_GPIOC_CLK_ENABLE(); }while(0) /* ����IO��ʱ��ʹ�� */ + +#define LCD_RS_GPIO_PORT GPIOC +#define LCD_RS_GPIO_PIN GPIO_PIN_8 +#define LCD_RS_GPIO_CLK_ENABLE() do{ __HAL_RCC_GPIOC_CLK_ENABLE(); }while(0) /* ����IO��ʱ��ʹ�� */ + +#define LCD_DATA_GPIO_PORT GPIOB +#define LCD_DATA_GPIO_PIN GPIO_PIN_All /* 16��IO���õ� */ +#define LCD_DATA_GPIO_CLK_ENABLE() do{ __HAL_RCC_GPIOB_CLK_ENABLE(); }while(0) /* ����IO��ʱ��ʹ�� */ + +/* LCD �˿ڿ��ƺ������� */ +/* ���ò����Ĵ����ķ�ʽ����IO���������Ļ��ˢ���� */ +#define LCD_BL(x) LCD_BL_GPIO_PORT->BSRR = LCD_BL_GPIO_PIN << (16 * (!x)) /* ����BL���� */ + +#define LCD_WR(x) LCD_WR_GPIO_PORT->BSRR = LCD_WR_GPIO_PIN << (16 * (!x)) /* ����WR���� */ +#define LCD_RD(x) LCD_RD_GPIO_PORT->BSRR = LCD_RD_GPIO_PIN << (16 * (!x)) /* ����RD���� */ +#define LCD_CS(x) LCD_CS_GPIO_PORT->BSRR = LCD_CS_GPIO_PIN << (16 * (!x)) /* ����CS���� */ +#define LCD_RS(x) LCD_RS_GPIO_PORT->BSRR = LCD_RS_GPIO_PIN << (16 * (!x)) /* ����RS���� */ + + +#define LCD_DATA_OUT(x) LCD_DATA_GPIO_PORT->ODR = x /* дB0~B15���� */ +#define LCD_DATA_IN LCD_DATA_GPIO_PORT->IDR /* ��B0~B15���� */ + +/******************************************************************************************/ + +/* LCD��Ҫ������ */ +typedef struct +{ + uint16_t width; /* LCD ��� */ + uint16_t height; /* LCD �߶� */ + uint16_t id; /* LCD ID */ + uint8_t dir; /* ���������������ƣ�0��������1�������� */ + uint16_t wramcmd; /* ��ʼдgramָ�� */ + uint16_t setxcmd; /* ����x����ָ�� */ + uint16_t setycmd; /* ����y����ָ�� */ +} _lcd_dev; + +/* LCD���� */ +extern _lcd_dev lcddev; /* ����LCD��Ҫ���� */ + +/* LCD�Ļ�����ɫ�ͱ���ɫ */ +extern uint32_t g_point_color; /* Ĭ�Ϻ�ɫ */ +extern uint32_t g_back_color; /* ������ɫ.Ĭ��Ϊ��ɫ */ + +/******************************************************************************************/ +/* LCDɨ�跽�����ɫ ���� */ + +/* ɨ�跽���� */ +#define L2R_U2D 0 /* ������,���ϵ��� */ +#define L2R_D2U 1 /* ������,���µ��� */ +#define R2L_U2D 2 /* ���ҵ���,���ϵ��� */ +#define R2L_D2U 3 /* ���ҵ���,���µ��� */ + +#define U2D_L2R 4 /* ���ϵ���,������ */ +#define U2D_R2L 5 /* ���ϵ���,���ҵ��� */ +#define D2U_L2R 6 /* ���µ���,������ */ +#define D2U_R2L 7 /* ���µ���,���ҵ��� */ + +#define DFT_SCAN_DIR L2R_U2D /* Ĭ�ϵ�ɨ�跽�� */ + +/* ���û�����ɫ */ +#define WHITE 0xFFFF /* ��ɫ */ +#define BLACK 0x0000 /* ��ɫ */ +#define RED 0xF800 /* ��ɫ */ +#define GREEN 0x07E0 /* ��ɫ */ +#define BLUE 0x001F /* ��ɫ */ +#define MAGENTA 0XF81F /* Ʒ��ɫ/�Ϻ�ɫ = BLUE + RED */ +#define YELLOW 0XFFE0 /* ��ɫ = GREEN + RED */ +#define CYAN 0X07FF /* ��ɫ = GREEN + BLUE */ + +/* �dz�����ɫ */ +#define BROWN 0XBC40 /* ��ɫ */ +#define BRRED 0XFC07 /* �غ�ɫ */ +#define GRAY 0X8430 /* ��ɫ */ +#define DARKBLUE 0X01CF /* ����ɫ */ +#define LIGHTBLUE 0X7D7C /* dz��ɫ */ +#define GRAYBLUE 0X5458 /* ����ɫ */ +#define LIGHTGREEN 0X841F /* dz��ɫ */ +#define LGRAY 0XC618 /* dz��ɫ(PANNEL),���屳��ɫ */ +#define LGRAYBLUE 0XA651 /* dz����ɫ(�м����ɫ) */ +#define LBBLUE 0X2B12 /* dz����ɫ(ѡ����Ŀ�ķ�ɫ) */ + +/******************************************************************************************/ +/* SSD1963�������(һ�㲻�ø�) */ + +/* LCD�ֱ������� */ +#define SSD_HOR_RESOLUTION 800 /* LCDˮƽ�ֱ��� */ +#define SSD_VER_RESOLUTION 480 /* LCD��ֱ�ֱ��� */ + +/* LCD������������ */ +#define SSD_HOR_PULSE_WIDTH 1 /* ˮƽ���� */ +#define SSD_HOR_BACK_PORCH 46 /* ˮƽǰ�� */ +#define SSD_HOR_FRONT_PORCH 210 /* ˮƽ���� */ + +#define SSD_VER_PULSE_WIDTH 1 /* ��ֱ���� */ +#define SSD_VER_BACK_PORCH 23 /* ��ֱǰ�� */ +#define SSD_VER_FRONT_PORCH 22 /* ��ֱǰ�� */ + +/* ���¼����������Զ����� */ +#define SSD_HT (SSD_HOR_RESOLUTION + SSD_HOR_BACK_PORCH + SSD_HOR_FRONT_PORCH) +#define SSD_HPS (SSD_HOR_BACK_PORCH) +#define SSD_VT (SSD_VER_RESOLUTION + SSD_VER_BACK_PORCH + SSD_VER_FRONT_PORCH) +#define SSD_VPS (SSD_VER_BACK_PORCH) + +/******************************************************************************************/ +/* �������� */ + +/* LCD���, �������ijɺ궨�庯��, �Դﵽ����ٶ� + * -O2�Ż�ʱ, ���lcd_wr_dataʹ����ͨ��������, ֻ�ܵ�15֡ˢ�� + * -O2�Ż�ʱ, ���lcd_wr_dataʹ��__forceinline��������, �ܵ�39֡ˢ�� + * -O2�Ż�ʱ, ���lcd_wr_dataʹ�ú궨�庯��, �ܵ�51֡ˢ�� + */ +#define lcd_wr_data(data)\ + {\ + LCD_RS(1);\ + LCD_CS(0);\ + LCD_DATA_OUT(data);\ + LCD_WR(0);\ + LCD_WR(1);\ + LCD_CS(1);\ + } + +void lcd_wr_xdata(uint16_t data); /* LCD���, �ú���ͬ lcd_wr_data �����Ĺ���һģһ�� */ +void lcd_wr_regno(volatile uint16_t regno); /* LCDд�Ĵ������/��ַ */ +void lcd_write_reg(uint16_t regno, uint16_t data); /* LCDд�Ĵ�����ֵ */ + + +void lcd_init(void); /* ��ʼ��LCD */ +void lcd_display_on(void); /* ����ʾ */ +void lcd_display_off(void); /* ����ʾ */ +void lcd_scan_dir(uint8_t dir); /* ������ɨ�跽�� */ +void lcd_display_dir(uint8_t dir); /* ������Ļ��ʾ���� */ +void lcd_ssd_backlight_set(uint8_t pwm); /* SSD1963 ������� */ + +void lcd_write_ram_prepare(void); /* ׼��ЩGRAM */ +void lcd_set_cursor(uint16_t x, uint16_t y); /* ���ù�� */ +uint32_t lcd_read_point(uint16_t x, uint16_t y); /* ����(32λ��ɫ,����LTDC) */ +void lcd_draw_point(uint16_t x, uint16_t y, uint32_t color);/* ����(32λ��ɫ,����LTDC) */ + +void lcd_clear(uint16_t color); /* LCD���� */ +void lcd_fill_circle(uint16_t x, uint16_t y, uint16_t r, uint16_t color); /* ���ʵ��Բ */ +void lcd_draw_circle(uint16_t x0, uint16_t y0, uint8_t r, uint16_t color); /* ��Բ */ +void lcd_draw_hline(uint16_t x, uint16_t y, uint16_t len, uint16_t color); /* ��ˮƽ�� */ +void lcd_set_window(uint16_t sx, uint16_t sy, uint16_t width, uint16_t height); /* ���� */ +void lcd_fill(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint32_t color); /* ��ɫ������(32λ��ɫ,����LTDC) */ +void lcd_color_fill(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint16_t *color); /* ��ɫ������ */ +void lcd_draw_line(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t color); /* ��ֱ�� */ +void lcd_draw_rectangle(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t color);/* ������ */ + + +void lcd_show_char(uint16_t x, uint16_t y, char chr, uint8_t size, uint8_t mode, uint16_t color); /* ��ʾһ���ַ� */ +void lcd_show_num(uint16_t x, uint16_t y, uint32_t num, uint8_t len, uint8_t size, uint16_t color); /* ��ʾ���� */ +void lcd_show_xnum(uint16_t x, uint16_t y, uint32_t num, uint8_t len, uint8_t size, uint8_t mode, uint16_t color); /* ��չ��ʾ���� */ +void lcd_show_string(uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint8_t size, char *p, uint16_t color); /* ��ʾ�ַ��� */ + + +#endif + + + + + + + + + + + + + + + + + diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Inc/main.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/main.h similarity index 100% rename from CS301 Embedded System and Microcomputer Principle/Lab/lab3/uart/Core/Inc/main.h rename to CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/main.h diff --git a/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/stm32f1xx_hal_conf.h b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/stm32f1xx_hal_conf.h new file mode 100644 index 0000000..77d5aa1 --- /dev/null +++ b/CS301 Embedded System and Microcomputer Principle/Lab/lab3/lcd/Core/Inc/stm32f1xx_hal_conf.h @@ -0,0 +1,391 @@ +/** + ****************************************************************************** + * @file stm32f1xx_hal_conf.h + * @brief HAL configuration file. + ****************************************************************************** + * @attention + * + *