# 1 "..\\src\\board\\board.c" # 1 "..\\src\\board\\board.h" void board_Init(void); # 11 "..\\src\\board\\board.c" # 1 "..\\src\\sdk\\include\\hal_system.h" # 1 "..\\src\\common\\tau_common.h" # 1 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdint.h" # 27 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdint.h" # 46 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdint.h" typedef signed char int8_t; typedef signed short int int16_t; typedef signed int int32_t; typedef signed __int64 int64_t; typedef unsigned char uint8_t; typedef unsigned short int uint16_t; typedef unsigned int uint32_t; typedef unsigned __int64 uint64_t; typedef signed char int_least8_t; typedef signed short int int_least16_t; typedef signed int int_least32_t; typedef signed __int64 int_least64_t; typedef unsigned char uint_least8_t; typedef unsigned short int uint_least16_t; typedef unsigned int uint_least32_t; typedef unsigned __int64 uint_least64_t; typedef signed int int_fast8_t; typedef signed int int_fast16_t; typedef signed int int_fast32_t; typedef signed __int64 int_fast64_t; typedef unsigned int uint_fast8_t; typedef unsigned int uint_fast16_t; typedef unsigned int uint_fast32_t; typedef unsigned __int64 uint_fast64_t; typedef signed int intptr_t; typedef unsigned int uintptr_t; typedef signed long long intmax_t; typedef unsigned long long uintmax_t; # 216 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdint.h" # 241 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdint.h" # 305 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdint.h" # 18 "..\\src\\common\\tau_common.h" # 1 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" # 61 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" # 75 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" # 112 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" extern __attribute__((__pcs__("aapcs"))) unsigned __ARM_dcmp4(double , double ); extern __attribute__((__pcs__("aapcs"))) unsigned __ARM_fcmp4(float , float ); extern __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_fpclassifyf(float ); extern __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_fpclassify(double ); static __inline __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_isfinitef(float __x) { return (((*(unsigned *)&(__x)) >> 23) & 0xff) != 0xff; } static __inline __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_isfinite(double __x) { return (((*(1 + (unsigned *)&(__x))) >> 20) & 0x7ff) != 0x7ff; } static __inline __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_isinff(float __x) { return ((*(unsigned *)&(__x)) << 1) == 0xff000000; } static __inline __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_isinf(double __x) { return (((*(1 + (unsigned *)&(__x))) << 1) == 0xffe00000) && ((*(unsigned *)&(__x)) == 0); } static __inline __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_islessgreaterf(float __x, float __y) { unsigned __f = __ARM_fcmp4(__x, __y) >> 28; return (__f == 8) || (__f == 2); } static __inline __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_islessgreater(double __x, double __y) { unsigned __f = __ARM_dcmp4(__x, __y) >> 28; return (__f == 8) || (__f == 2); } static __inline __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_isnanf(float __x) { return (0x7f800000 - ((*(unsigned *)&(__x)) & 0x7fffffff)) >> 31; } static __inline __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_isnan(double __x) { unsigned __xf = (*(1 + (unsigned *)&(__x))) | (((*(unsigned *)&(__x)) == 0) ? 0 : 1); return (0x7ff00000 - (__xf & 0x7fffffff)) >> 31; } static __inline __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_isnormalf(float __x) { unsigned __xe = ((*(unsigned *)&(__x)) >> 23) & 0xff; return (__xe != 0xff) && (__xe != 0); } static __inline __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_isnormal(double __x) { unsigned __xe = ((*(1 + (unsigned *)&(__x))) >> 20) & 0x7ff; return (__xe != 0x7ff) && (__xe != 0); } static __inline __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_signbitf(float __x) { return (*(unsigned *)&(__x)) >> 31; } static __inline __declspec(__nothrow) __attribute__((__pcs__("aapcs"))) int __ARM_signbit(double __x) { return (*(1 + (unsigned *)&(__x))) >> 31; } # 230 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" typedef float float_t; typedef double double_t; # 251 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" extern const int math_errhandling; # 261 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" extern __declspec(__nothrow) double acos(double ); extern __declspec(__nothrow) double asin(double ); extern __declspec(__nothrow) __attribute__((const)) double atan(double ); extern __declspec(__nothrow) double atan2(double , double ); extern __declspec(__nothrow) double cos(double ); extern __declspec(__nothrow) double sin(double ); extern void __use_accurate_range_reduction(void); extern __declspec(__nothrow) double tan(double ); extern __declspec(__nothrow) double cosh(double ); extern __declspec(__nothrow) double sinh(double ); extern __declspec(__nothrow) __attribute__((const)) double tanh(double ); extern __declspec(__nothrow) double exp(double ); extern __declspec(__nothrow) double frexp(double , int * ) __attribute__((__nonnull__(2))); extern __declspec(__nothrow) double ldexp(double , int ); extern __declspec(__nothrow) double log(double ); extern __declspec(__nothrow) double log10(double ); extern __declspec(__nothrow) double modf(double , double * ) __attribute__((__nonnull__(2))); extern __declspec(__nothrow) double pow(double , double ); extern __declspec(__nothrow) double sqrt(double ); static __inline double _sqrt(double __x) { return sqrt(__x); } static __inline float _sqrtf(float __x) { return (float)sqrt(__x); } extern __declspec(__nothrow) __attribute__((const)) double ceil(double ); extern __declspec(__nothrow) __attribute__((const)) double fabs(double ); extern __declspec(__nothrow) __attribute__((const)) double floor(double ); extern __declspec(__nothrow) double fmod(double , double ); extern __declspec(__nothrow) double acosh(double ); extern __declspec(__nothrow) double asinh(double ); extern __declspec(__nothrow) double atanh(double ); extern __declspec(__nothrow) double cbrt(double ); static __inline __declspec(__nothrow) __attribute__((const)) double copysign(double __x, double __y) { (*(1 + (unsigned *)&(__x))) = ((*(1 + (unsigned *)&(__x))) & 0x7fffffff) | ((*(1 + (unsigned *)&(__y))) & 0x80000000); return __x; } static __inline __declspec(__nothrow) __attribute__((const)) float copysignf(float __x, float __y) { (*(unsigned *)&(__x)) = ((*(unsigned *)&(__x)) & 0x7fffffff) | ((*(unsigned *)&(__y)) & 0x80000000); return __x; } extern __declspec(__nothrow) double erf(double ); extern __declspec(__nothrow) double erfc(double ); extern __declspec(__nothrow) double expm1(double ); # 479 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" extern __declspec(__nothrow) double hypot(double , double ); extern __declspec(__nothrow) int ilogb(double ); extern __declspec(__nothrow) int ilogbf(float ); extern __declspec(__nothrow) int ilogbl(long double ); extern __declspec(__nothrow) double lgamma (double ); extern __declspec(__nothrow) double log1p(double ); extern __declspec(__nothrow) double logb(double ); extern __declspec(__nothrow) float logbf(float ); extern __declspec(__nothrow) long double logbl(long double ); extern __declspec(__nothrow) double nextafter(double , double ); extern __declspec(__nothrow) float nextafterf(float , float ); extern __declspec(__nothrow) long double nextafterl(long double , long double ); extern __declspec(__nothrow) double nexttoward(double , long double ); extern __declspec(__nothrow) float nexttowardf(float , long double ); extern __declspec(__nothrow) long double nexttowardl(long double , long double ); extern __declspec(__nothrow) double remainder(double , double ); extern __declspec(__nothrow) __attribute__((const)) double rint(double ); extern __declspec(__nothrow) double scalbln(double , long int ); extern __declspec(__nothrow) float scalblnf(float , long int ); extern __declspec(__nothrow) long double scalblnl(long double , long int ); extern __declspec(__nothrow) double scalbn(double , int ); extern __declspec(__nothrow) float scalbnf(float , int ); extern __declspec(__nothrow) long double scalbnl(long double , int ); extern __declspec(__nothrow) __attribute__((const)) float _fabsf(float); static __inline __declspec(__nothrow) __attribute__((const)) float fabsf(float __f) { return _fabsf(__f); } extern __declspec(__nothrow) float sinf(float ); extern __declspec(__nothrow) float cosf(float ); extern __declspec(__nothrow) float tanf(float ); extern __declspec(__nothrow) float acosf(float ); extern __declspec(__nothrow) float asinf(float ); extern __declspec(__nothrow) float atanf(float ); extern __declspec(__nothrow) float atan2f(float , float ); extern __declspec(__nothrow) float sinhf(float ); extern __declspec(__nothrow) float coshf(float ); extern __declspec(__nothrow) float tanhf(float ); extern __declspec(__nothrow) float expf(float ); extern __declspec(__nothrow) float logf(float ); extern __declspec(__nothrow) float log10f(float ); extern __declspec(__nothrow) float powf(float , float ); extern __declspec(__nothrow) float sqrtf(float ); extern __declspec(__nothrow) float ldexpf(float , int ); extern __declspec(__nothrow) float frexpf(float , int * ) __attribute__((__nonnull__(2))); extern __declspec(__nothrow) __attribute__((const)) float ceilf(float ); extern __declspec(__nothrow) __attribute__((const)) float floorf(float ); extern __declspec(__nothrow) float fmodf(float , float ); extern __declspec(__nothrow) float modff(float , float * ) __attribute__((__nonnull__(2))); __declspec(__nothrow) long double acosl(long double ); __declspec(__nothrow) long double asinl(long double ); __declspec(__nothrow) long double atanl(long double ); __declspec(__nothrow) long double atan2l(long double , long double ); __declspec(__nothrow) long double ceill(long double ); __declspec(__nothrow) long double cosl(long double ); __declspec(__nothrow) long double coshl(long double ); __declspec(__nothrow) long double expl(long double ); __declspec(__nothrow) long double fabsl(long double ); __declspec(__nothrow) long double floorl(long double ); __declspec(__nothrow) long double fmodl(long double , long double ); __declspec(__nothrow) long double frexpl(long double , int* ) __attribute__((__nonnull__(2))); __declspec(__nothrow) long double ldexpl(long double , int ); __declspec(__nothrow) long double logl(long double ); __declspec(__nothrow) long double log10l(long double ); __declspec(__nothrow) long double modfl(long double , long double * ) __attribute__((__nonnull__(2))); __declspec(__nothrow) long double powl(long double , long double ); __declspec(__nothrow) long double sinl(long double ); __declspec(__nothrow) long double sinhl(long double ); __declspec(__nothrow) long double sqrtl(long double ); __declspec(__nothrow) long double tanl(long double ); __declspec(__nothrow) long double tanhl(long double ); extern __declspec(__nothrow) float acoshf(float ); __declspec(__nothrow) long double acoshl(long double ); extern __declspec(__nothrow) float asinhf(float ); __declspec(__nothrow) long double asinhl(long double ); extern __declspec(__nothrow) float atanhf(float ); __declspec(__nothrow) long double atanhl(long double ); __declspec(__nothrow) long double copysignl(long double , long double ); extern __declspec(__nothrow) float cbrtf(float ); __declspec(__nothrow) long double cbrtl(long double ); extern __declspec(__nothrow) float erff(float ); __declspec(__nothrow) long double erfl(long double ); extern __declspec(__nothrow) float erfcf(float ); __declspec(__nothrow) long double erfcl(long double ); extern __declspec(__nothrow) float expm1f(float ); __declspec(__nothrow) long double expm1l(long double ); extern __declspec(__nothrow) float log1pf(float ); __declspec(__nothrow) long double log1pl(long double ); extern __declspec(__nothrow) float hypotf(float , float ); __declspec(__nothrow) long double hypotl(long double , long double ); extern __declspec(__nothrow) float lgammaf(float ); __declspec(__nothrow) long double lgammal(long double ); extern __declspec(__nothrow) float remainderf(float , float ); __declspec(__nothrow) long double remainderl(long double , long double ); extern __declspec(__nothrow) float rintf(float ); __declspec(__nothrow) long double rintl(long double ); extern __declspec(__nothrow) double exp2(double ); extern __declspec(__nothrow) float exp2f(float ); __declspec(__nothrow) long double exp2l(long double ); extern __declspec(__nothrow) double fdim(double , double ); extern __declspec(__nothrow) float fdimf(float , float ); __declspec(__nothrow) long double fdiml(long double , long double ); # 803 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" extern __declspec(__nothrow) double fma(double , double , double ); extern __declspec(__nothrow) float fmaf(float , float , float ); static __inline __declspec(__nothrow) long double fmal(long double __x, long double __y, long double __z) { return (long double)fma((double)__x, (double)__y, (double)__z); } extern __declspec(__nothrow) __attribute__((const)) double fmax(double , double ); extern __declspec(__nothrow) __attribute__((const)) float fmaxf(float , float ); __declspec(__nothrow) long double fmaxl(long double , long double ); extern __declspec(__nothrow) __attribute__((const)) double fmin(double , double ); extern __declspec(__nothrow) __attribute__((const)) float fminf(float , float ); __declspec(__nothrow) long double fminl(long double , long double ); extern __declspec(__nothrow) double log2(double ); extern __declspec(__nothrow) float log2f(float ); __declspec(__nothrow) long double log2l(long double ); extern __declspec(__nothrow) long lrint(double ); extern __declspec(__nothrow) long lrintf(float ); static __inline __declspec(__nothrow) long lrintl(long double __x) { return lrint((double)__x); } extern __declspec(__nothrow) long long llrint(double ); extern __declspec(__nothrow) long long llrintf(float ); static __inline __declspec(__nothrow) long long llrintl(long double __x) { return llrint((double)__x); } extern __declspec(__nothrow) long lround(double ); extern __declspec(__nothrow) long lroundf(float ); static __inline __declspec(__nothrow) long lroundl(long double __x) { return lround((double)__x); } extern __declspec(__nothrow) long long llround(double ); extern __declspec(__nothrow) long long llroundf(float ); static __inline __declspec(__nothrow) long long llroundl(long double __x) { return llround((double)__x); } extern __declspec(__nothrow) __attribute__((const)) double nan(const char * ); extern __declspec(__nothrow) __attribute__((const)) float nanf(const char * ); static __inline __declspec(__nothrow) __attribute__((const)) long double nanl(const char *__t) { return (long double)nan(__t); } # 856 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" extern __declspec(__nothrow) __attribute__((const)) double nearbyint(double ); extern __declspec(__nothrow) __attribute__((const)) float nearbyintf(float ); __declspec(__nothrow) long double nearbyintl(long double ); extern double remquo(double , double , int * ); extern float remquof(float , float , int * ); static __inline long double remquol(long double __x, long double __y, int *__q) { return (long double)remquo((double)__x, (double)__y, __q); } extern __declspec(__nothrow) __attribute__((const)) double round(double ); extern __declspec(__nothrow) __attribute__((const)) float roundf(float ); __declspec(__nothrow) long double roundl(long double ); extern __declspec(__nothrow) double tgamma(double ); extern __declspec(__nothrow) float tgammaf(float ); __declspec(__nothrow) long double tgammal(long double ); extern __declspec(__nothrow) __attribute__((const)) double trunc(double ); extern __declspec(__nothrow) __attribute__((const)) float truncf(float ); __declspec(__nothrow) long double truncl(long double ); # 896 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" # 1087 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" # 1317 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\math.h" # 19 "..\\src\\common\\tau_common.h" # 75 "..\\src\\common\\tau_common.h" typedef void (*fcb_type)(void *data); # 16 "..\\src\\sdk\\include\\hal_system.h" void hal_system_init(uint32_t sysclk); void hal_system_init_console(uint32_t baud_rate); void hal_system_idle_mode(_Bool disable_systick); void hal_system_register_systick_cb(fcb_type cb_func); _Bool hal_system_enable_systick(uint8_t ms); _Bool hal_system_disable_systick(void); uint32_t hal_system_get_tick(void); void hal_system_deep_sleep_mode(_Bool polarity); _Bool hal_system_share_flash_mode(_Bool enable); void hal_system_sleep_mode(_Bool enable); void hal_system_reset_chip(void); void hal_system_set_pvd(_Bool enable); void hal_system_set_vcc(_Bool enable); _Bool hal_system_flash_read(uint8_t *usr_cfg_t_addr, uint16_t usr_cfg_t_size, uint8_t flash_page); _Bool hal_system_flash_write(uint8_t *usr_cfg_t_addr, uint16_t usr_cfg_t_size, uint8_t flash_page); void hal_system_set_phy_calibration(_Bool en); # 12 "..\\src\\board\\board.c" # 1 "..\\src\\sdk\\include\\M0\\ArmCM0.h" typedef enum IRQn { NonMaskableInt_IRQn = -14, HardFault_IRQn = -13, SVCall_IRQn = -5, PendSV_IRQn = -2, SysTick_IRQn = -1, VIDC_IRQn = 0, LCDC_IRQn = 1, MIPI_RX_IRQn = 2, MIPI_TX_IRQn = 3, MEMC_IRQn = 4, VPRE_IRQn = 5, FLSCTRL_IRQn = 6, DMA_IRQn = 7, TIMER0_IRQn = 8, TIMER1_IRQn = 9, TIMER2_IRQn = 10, TIMER3_IRQn = 11, WDG_IRQn = 12, UART_IRQn = 13, I2C0_IRQn = 14, I2C1_IRQn = 15, SPIS_IRQn = 16, SPIM_IRQn = 17, ADC_IRQn = 18, PWMDET_IRQn = 19, OTP_IRQn = 20, SWIRE_IRQn = 21, PVD_IRQn = 22, AP_NRESET_IRQn = 23, EXTI_INT0_IRQn = 24, EXTI_INT1_IRQn = 25, EXTI_INT2_IRQn = 26, EXTI_INT3_IRQn = 27, EXTI_INT4_IRQn = 28, EXTI_INT5_IRQn = 29, EXTI_INT6_IRQn = 30, EXTI_INT7_IRQn = 31 } IRQn_Type; #pragma push #pragma anon_unions # 109 "..\\src\\sdk\\include\\M0\\ArmCM0.h" # 1 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\core_cm0.h" # 35 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\core_cm0.h" # 1 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\cmsis_version.h" # 64 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\core_cm0.h" # 114 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\core_cm0.h" # 1 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\cmsis_compiler.h" # 29 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\cmsis_compiler.h" # 1 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\cmsis_armcc.h" # 107 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\cmsis_armcc.h" static __inline uint32_t __get_CONTROL(void) { register uint32_t __regControl __asm("control"); return(__regControl); } static __inline void __set_CONTROL(uint32_t control) { register uint32_t __regControl __asm("control"); __regControl = control; } static __inline uint32_t __get_IPSR(void) { register uint32_t __regIPSR __asm("ipsr"); return(__regIPSR); } static __inline uint32_t __get_APSR(void) { register uint32_t __regAPSR __asm("apsr"); return(__regAPSR); } static __inline uint32_t __get_xPSR(void) { register uint32_t __regXPSR __asm("xpsr"); return(__regXPSR); } static __inline uint32_t __get_PSP(void) { register uint32_t __regProcessStackPointer __asm("psp"); return(__regProcessStackPointer); } static __inline void __set_PSP(uint32_t topOfProcStack) { register uint32_t __regProcessStackPointer __asm("psp"); __regProcessStackPointer = topOfProcStack; } static __inline uint32_t __get_MSP(void) { register uint32_t __regMainStackPointer __asm("msp"); return(__regMainStackPointer); } static __inline void __set_MSP(uint32_t topOfMainStack) { register uint32_t __regMainStackPointer __asm("msp"); __regMainStackPointer = topOfMainStack; } static __inline uint32_t __get_PRIMASK(void) { register uint32_t __regPriMask __asm("primask"); return(__regPriMask); } static __inline void __set_PRIMASK(uint32_t priMask) { register uint32_t __regPriMask __asm("primask"); __regPriMask = (priMask); } # 342 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\cmsis_armcc.h" static __inline uint32_t __get_FPSCR(void) { return(0U); } static __inline void __set_FPSCR(uint32_t fpscr) { (void)fpscr; } __attribute__((section(".rev16_text"))) static __inline __asm uint32_t __REV16(uint32_t value) { rev16 r0, r0 bx lr } __attribute__((section(".revsh_text"))) static __inline __asm int16_t __REVSH(int16_t value) { revsh r0, r0 bx lr } __attribute__((always_inline)) static __inline uint32_t __RBIT(uint32_t value) { uint32_t result; uint32_t s = (4U * 8U) - 1U; result = value; for (value >>= 1U; value != 0U; value >>= 1U) { result <<= 1U; result |= value & 1U; s--; } result <<= s; return result; } # 732 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\cmsis_armcc.h" __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; } __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; } # 866 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\cmsis_armcc.h" # 35 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\cmsis_compiler.h" # 268 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\cmsis_compiler.h" # 116 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\core_cm0.h" # 150 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\core_cm0.h" # 166 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\core_cm0.h" typedef union { struct { uint32_t _reserved0:28; uint32_t V:1; uint32_t C:1; uint32_t Z:1; uint32_t N:1; } b; uint32_t w; } APSR_Type; typedef union { struct { uint32_t ISR:9; uint32_t _reserved0:23; } b; uint32_t w; } IPSR_Type; typedef union { struct { uint32_t ISR:9; uint32_t _reserved0:15; uint32_t T:1; uint32_t _reserved1:3; uint32_t V:1; uint32_t C:1; uint32_t Z:1; uint32_t N:1; } b; uint32_t w; } xPSR_Type; typedef union { struct { uint32_t _reserved0:1; uint32_t SPSEL:1; uint32_t _reserved1:30; } b; uint32_t w; } CONTROL_Type; typedef struct { volatile uint32_t ISER[1U]; uint32_t RESERVED0[31U]; volatile uint32_t ICER[1U]; uint32_t RESERVED1[31U]; volatile uint32_t ISPR[1U]; uint32_t RESERVED2[31U]; volatile uint32_t ICPR[1U]; uint32_t RESERVED3[31U]; uint32_t RESERVED4[64U]; volatile uint32_t IP[8U]; } NVIC_Type; typedef struct { volatile const uint32_t CPUID; volatile uint32_t ICSR; uint32_t RESERVED0; volatile uint32_t AIRCR; volatile uint32_t SCR; volatile uint32_t CCR; uint32_t RESERVED1; volatile uint32_t SHP[2U]; volatile uint32_t SHCSR; } SCB_Type; typedef struct { volatile uint32_t CTRL; volatile uint32_t LOAD; volatile uint32_t VAL; volatile const uint32_t CALIB; } SysTick_Type; # 583 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\core_cm0.h" # 598 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\CMSIS\\Core\\Include\\core_cm0.h" static __inline void __NVIC_EnableIRQ(IRQn_Type IRQn) { if ((int32_t)(IRQn) >= 0) { ((NVIC_Type *) ((0xE000E000UL) + 0x0100UL) )->ISER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); } } static __inline uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) { if ((int32_t)(IRQn) >= 0) { return((uint32_t)(((((NVIC_Type *) ((0xE000E000UL) + 0x0100UL) )->ISER[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); } else { return(0U); } } static __inline void __NVIC_DisableIRQ(IRQn_Type IRQn) { if ((int32_t)(IRQn) >= 0) { ((NVIC_Type *) ((0xE000E000UL) + 0x0100UL) )->ICER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); do { __schedule_barrier(); __dsb(0xF); __schedule_barrier(); } while (0U); do { __schedule_barrier(); __isb(0xF); __schedule_barrier(); } while (0U); } } static __inline uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) { if ((int32_t)(IRQn) >= 0) { return((uint32_t)(((((NVIC_Type *) ((0xE000E000UL) + 0x0100UL) )->ISPR[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); } else { return(0U); } } static __inline void __NVIC_SetPendingIRQ(IRQn_Type IRQn) { if ((int32_t)(IRQn) >= 0) { ((NVIC_Type *) ((0xE000E000UL) + 0x0100UL) )->ISPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); } } static __inline void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) { if ((int32_t)(IRQn) >= 0) { ((NVIC_Type *) ((0xE000E000UL) + 0x0100UL) )->ICPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); } } static __inline void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) { if ((int32_t)(IRQn) >= 0) { ((NVIC_Type *) ((0xE000E000UL) + 0x0100UL) )->IP[( (((uint32_t)(int32_t)(IRQn)) >> 2UL) )] = ((uint32_t)(((NVIC_Type *) ((0xE000E000UL) + 0x0100UL) )->IP[( (((uint32_t)(int32_t)(IRQn)) >> 2UL) )] & ~(0xFFUL << ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL))) | (((priority << (8U - 2U)) & (uint32_t)0xFFUL) << ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL))); } else { ((SCB_Type *) ((0xE000E000UL) + 0x0D00UL) )->SHP[( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) )] = ((uint32_t)(((SCB_Type *) ((0xE000E000UL) + 0x0D00UL) )->SHP[( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) )] & ~(0xFFUL << ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL))) | (((priority << (8U - 2U)) & (uint32_t)0xFFUL) << ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL))); } } static __inline uint32_t __NVIC_GetPriority(IRQn_Type IRQn) { if ((int32_t)(IRQn) >= 0) { return((uint32_t)(((((NVIC_Type *) ((0xE000E000UL) + 0x0100UL) )->IP[ ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) )] >> ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) ) & (uint32_t)0xFFUL) >> (8U - 2U))); } else { return((uint32_t)(((((SCB_Type *) ((0xE000E000UL) + 0x0D00UL) )->SHP[( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) )] >> ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) ) & (uint32_t)0xFFUL) >> (8U - 2U))); } } static __inline uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) { uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); uint32_t PreemptPriorityBits; uint32_t SubPriorityBits; PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(2U)) ? (uint32_t)(2U) : (uint32_t)(7UL - PriorityGroupTmp); SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(2U)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(2U)); return ( ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) ); } 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); uint32_t PreemptPriorityBits; uint32_t SubPriorityBits; PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(2U)) ? (uint32_t)(2U) : (uint32_t)(7UL - PriorityGroupTmp); SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(2U)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(2U)); *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); } static __inline void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) { uint32_t vectors = 0x0U; (* (int *) (vectors + ((int32_t)IRQn + 16) * 4)) = vector; } static __inline uint32_t __NVIC_GetVector(IRQn_Type IRQn) { uint32_t vectors = 0x0U; return (uint32_t)(* (int *) (vectors + ((int32_t)IRQn + 16) * 4)); } __declspec(noreturn) static __inline void __NVIC_SystemReset(void) { do { __schedule_barrier(); __dsb(0xF); __schedule_barrier(); } while (0U); ((SCB_Type *) ((0xE000E000UL) + 0x0D00UL) )->AIRCR = ((0x5FAUL << 16U) | (1UL << 2U)); do { __schedule_barrier(); __dsb(0xF); __schedule_barrier(); } while (0U); for(;;) { __nop(); } } static __inline uint32_t SCB_GetFPUType(void) { return 0U; } static __inline uint32_t SysTick_Config(uint32_t ticks) { if ((ticks - 1UL) > (0xFFFFFFUL )) { return (1UL); } ((SysTick_Type *) ((0xE000E000UL) + 0x0010UL) )->LOAD = (uint32_t)(ticks - 1UL); __NVIC_SetPriority (SysTick_IRQn, (1UL << 2U) - 1UL); ((SysTick_Type *) ((0xE000E000UL) + 0x0010UL) )->VAL = 0UL; ((SysTick_Type *) ((0xE000E000UL) + 0x0010UL) )->CTRL = (1UL << 2U) | (1UL << 1U) | (1UL ); return (0UL); } # 129 "..\\src\\sdk\\include\\M0\\ArmCM0.h" # 1 "C:\\Users\\Markin\\AppData\\Local\\Arm\\Packs\\ARM\\CMSIS\\5.5.1\\Device\\ARM\\ARMCM0\\Include\\system_ARMCM0.h" extern uint32_t SystemCoreClock; extern void SystemInit (void); extern void SystemCoreClockUpdate (void); # 130 "..\\src\\sdk\\include\\M0\\ArmCM0.h" # 150 "..\\src\\sdk\\include\\M0\\ArmCM0.h" #pragma pop # 169 "..\\src\\sdk\\include\\M0\\ArmCM0.h" # 194 "..\\src\\sdk\\include\\M0\\ArmCM0.h" # 206 "..\\src\\sdk\\include\\M0\\ArmCM0.h" # 13 "..\\src\\board\\board.c" void board_Init(void) { hal_system_init((80000000U)); hal_system_enable_systick(1); hal_system_init_console(115200); hal_system_set_phy_calibration(1); }