diff --git a/Doc/Bleeper-72-schematic.pdf b/Doc/Bleeper-72-schematic.pdf deleted file mode 100644 index 478488214..000000000 Binary files a/Doc/Bleeper-72-schematic.pdf and /dev/null differ diff --git a/Doc/Bleeper-76-schematic.pdf b/Doc/Bleeper-76-schematic.pdf deleted file mode 100644 index 0b0abfa71..000000000 Binary files a/Doc/Bleeper-76-schematic.pdf and /dev/null differ diff --git a/Keil/Bleeper-72/LoRaMac/classA/LoRaMac-api-v3.uvopt b/Keil/Bleeper-72/LoRaMac/classA/LoRaMac-api-v3.uvopt deleted file mode 100644 index 445fa33c9..000000000 --- a/Keil/Bleeper-72/LoRaMac/classA/LoRaMac-api-v3.uvopt +++ /dev/null @@ -1,742 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - LoRaMac - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 0 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ULP2CM3 - -O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S8 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - -O14 -S0 -C0 -N00("ARM Cortex-M3") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000) - - - - - 0 - - - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-72\main-api-v3.c - main-api-v3.c - 0 - 0 - - - - - boards\Bleeper-72 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - sx1272-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-72\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - LoRaMac-api-v3.c - 0 - 0 - - - 6 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1272\sx1272.c - sx1272.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 37 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/classA/LoRaMac-api-v3.uvproj b/Keil/Bleeper-72/LoRaMac/classA/LoRaMac-api-v3.uvproj deleted file mode 100644 index ba812dbba..000000000 --- a/Keil/Bleeper-72/LoRaMac/classA/LoRaMac-api-v3.uvproj +++ /dev/null @@ -1,688 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - LoRaMac - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-72;..\..\..\..\src\boards\Bleeper-72\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-72\main-api-v3.c - - - - - boards\Bleeper-72 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - - - sx1272-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - - - - - boards\Bleeper-72\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1272.c - 1 - ..\..\..\..\src\radio\sx1272\sx1272.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/classA/LoRaMac.uvopt b/Keil/Bleeper-72/LoRaMac/classA/LoRaMac.uvopt deleted file mode 100644 index ca0ad046c..000000000 --- a/Keil/Bleeper-72/LoRaMac/classA/LoRaMac.uvopt +++ /dev/null @@ -1,729 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - LoRaMac - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 0 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ULP2CM3 - -O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S8 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - -O14 -S0 -C0 -N00("ARM Cortex-M3") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000) - - - - - 0 - - - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-72\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-72 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - sx1272-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-72\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1272\sx1272.c - sx1272.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/classA/LoRaMac.uvproj b/Keil/Bleeper-72/LoRaMac/classA/LoRaMac.uvproj deleted file mode 100644 index c285111fa..000000000 --- a/Keil/Bleeper-72/LoRaMac/classA/LoRaMac.uvproj +++ /dev/null @@ -1,683 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - LoRaMac - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-72;..\..\..\..\src\boards\Bleeper-72\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-72\main.c - - - - - boards\Bleeper-72 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - - - sx1272-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - - - - - boards\Bleeper-72\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1272.c - 1 - ..\..\..\..\src\radio\sx1272\sx1272.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/classB/LoRaMac-api-v3.uvopt b/Keil/Bleeper-72/LoRaMac/classB/LoRaMac-api-v3.uvopt deleted file mode 100644 index 8d93dfcb2..000000000 --- a/Keil/Bleeper-72/LoRaMac/classB/LoRaMac-api-v3.uvopt +++ /dev/null @@ -1,742 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - LoRaMac - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 0 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ULP2CM3 - -O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S8 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - -O14 -S0 -C0 -N00("ARM Cortex-M3") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000) - - - - - 0 - - - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-72\main-api-v3.c - main-api-v3.c - 0 - 0 - - - - - boards\Bleeper-72 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - sx1272-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-72\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - LoRaMac-api-v3.c - 0 - 0 - - - 6 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1272\sx1272.c - sx1272.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 37 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/classB/LoRaMac-api-v3.uvproj b/Keil/Bleeper-72/LoRaMac/classB/LoRaMac-api-v3.uvproj deleted file mode 100644 index 24724388f..000000000 --- a/Keil/Bleeper-72/LoRaMac/classB/LoRaMac-api-v3.uvproj +++ /dev/null @@ -1,688 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - LoRaMac - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-72;..\..\..\..\src\boards\Bleeper-72\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-72\main-api-v3.c - - - - - boards\Bleeper-72 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - - - sx1272-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - - - - - boards\Bleeper-72\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1272.c - 1 - ..\..\..\..\src\radio\sx1272\sx1272.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/classB/LoRaMac.uvopt b/Keil/Bleeper-72/LoRaMac/classB/LoRaMac.uvopt deleted file mode 100644 index c4077728e..000000000 --- a/Keil/Bleeper-72/LoRaMac/classB/LoRaMac.uvopt +++ /dev/null @@ -1,729 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - LoRaMac - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 0 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ULP2CM3 - -O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S8 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - -O14 -S0 -C0 -N00("ARM Cortex-M3") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000) - - - - - 0 - - - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-72\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-72 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - sx1272-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-72\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1272\sx1272.c - sx1272.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/classB/LoRaMac.uvproj b/Keil/Bleeper-72/LoRaMac/classB/LoRaMac.uvproj deleted file mode 100644 index 1e7267694..000000000 --- a/Keil/Bleeper-72/LoRaMac/classB/LoRaMac.uvproj +++ /dev/null @@ -1,683 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - LoRaMac - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-72;..\..\..\..\src\boards\Bleeper-72\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-72\main.c - - - - - boards\Bleeper-72 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - - - sx1272-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - - - - - boards\Bleeper-72\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1272.c - 1 - ..\..\..\..\src\radio\sx1272\sx1272.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/classC/LoRaMac-api-v3.uvopt b/Keil/Bleeper-72/LoRaMac/classC/LoRaMac-api-v3.uvopt deleted file mode 100644 index 27c4818bf..000000000 --- a/Keil/Bleeper-72/LoRaMac/classC/LoRaMac-api-v3.uvopt +++ /dev/null @@ -1,742 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - LoRaMac - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 0 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ULP2CM3 - -O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S8 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - -O14 -S0 -C0 -N00("ARM Cortex-M3") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000) - - - - - 0 - - - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-72\main-api-v3.c - main-api-v3.c - 0 - 0 - - - - - boards\Bleeper-72 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - sx1272-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-72\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - LoRaMac-api-v3.c - 0 - 0 - - - 6 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1272\sx1272.c - sx1272.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 37 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/classC/LoRaMac-api-v3.uvproj b/Keil/Bleeper-72/LoRaMac/classC/LoRaMac-api-v3.uvproj deleted file mode 100644 index 3ca84d2c3..000000000 --- a/Keil/Bleeper-72/LoRaMac/classC/LoRaMac-api-v3.uvproj +++ /dev/null @@ -1,688 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - LoRaMac - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-72;..\..\..\..\src\boards\Bleeper-72\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-72\main-api-v3.c - - - - - boards\Bleeper-72 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - - - sx1272-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - - - - - boards\Bleeper-72\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1272.c - 1 - ..\..\..\..\src\radio\sx1272\sx1272.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/classC/LoRaMac.uvopt b/Keil/Bleeper-72/LoRaMac/classC/LoRaMac.uvopt deleted file mode 100644 index 34b235579..000000000 --- a/Keil/Bleeper-72/LoRaMac/classC/LoRaMac.uvopt +++ /dev/null @@ -1,729 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - LoRaMac - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 0 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ULP2CM3 - -O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S8 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - -O14 -S0 -C0 -N00("ARM Cortex-M3") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000) - - - - - 0 - - - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-72\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-72 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - sx1272-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-72\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1272\sx1272.c - sx1272.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/classC/LoRaMac.uvproj b/Keil/Bleeper-72/LoRaMac/classC/LoRaMac.uvproj deleted file mode 100644 index 83c80c5ee..000000000 --- a/Keil/Bleeper-72/LoRaMac/classC/LoRaMac.uvproj +++ /dev/null @@ -1,683 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - LoRaMac - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-72;..\..\..\..\src\boards\Bleeper-72\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-72\main.c - - - - - boards\Bleeper-72 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - - - sx1272-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - - - - - boards\Bleeper-72\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1272.c - 1 - ..\..\..\..\src\radio\sx1272\sx1272.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/radioCoverageTest/radioCoverageTest.uvopt b/Keil/Bleeper-72/LoRaMac/radioCoverageTest/radioCoverageTest.uvopt deleted file mode 100644 index f306f931e..000000000 --- a/Keil/Bleeper-72/LoRaMac/radioCoverageTest/radioCoverageTest.uvopt +++ /dev/null @@ -1,742 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - radioCoverageTest - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\radioCoverageTest\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 0 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ULP2CM3 - -O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S8 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - -O14 -S0 -C0 -N00("ARM Cortex-M3") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000) - - - - - 0 - - - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\radioCoverageTest\Bleeper-72\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-72 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - sx1272-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-72\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - LoRaMac-api-v3.c - 0 - 0 - - - 6 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1272\sx1272.c - sx1272.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 37 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-72/LoRaMac/radioCoverageTest/radioCoverageTest.uvproj b/Keil/Bleeper-72/LoRaMac/radioCoverageTest/radioCoverageTest.uvproj deleted file mode 100644 index 8d2f5deaa..000000000 --- a/Keil/Bleeper-72/LoRaMac/radioCoverageTest/radioCoverageTest.uvproj +++ /dev/null @@ -1,688 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - radioCoverageTest - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\radioCoverageTest\ - radioCoverageTest - 1 - 0 - 1 - 1 - 1 - .\lst\radioCoverageTest\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-72;..\..\..\..\src\boards\Bleeper-72\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\radioCoverageTest\Bleeper-72\main.c - - - - - boards\Bleeper-72 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\spi-board.c - - - sx1272-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\sx1272-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-72\timer-board.c - - - - - boards\Bleeper-72\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1272.c - 1 - ..\..\..\..\src\radio\sx1272\sx1272.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-72/ping-pong/Ping-Pong.uvopt b/Keil/Bleeper-72/ping-pong/Ping-Pong.uvopt deleted file mode 100644 index 268311af5..000000000 --- a/Keil/Bleeper-72/ping-pong/Ping-Pong.uvopt +++ /dev/null @@ -1,819 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - Ping-Pong-lora - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 1 - 0 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\Ping-Pong-lora\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ULP2CM3 - -O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S8 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000 - - - 0 - UL2CM3 - -O14 -S0 -C0 -N00("ARM Cortex-M3") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000) - - - - - 0 - - - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - Ping-Pong-fsk - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 1 - 0 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\Ping-Pong-fsk\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ULP2CM3 - -O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S8 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000 - - - 0 - UL2CM3 - -O14 -S0 -C0 -N00("ARM Cortex-M3") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000) - - - - - 0 - - - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\apps\ping-pong\Bleeper-72\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-72 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\sx1272-board.c - sx1272-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-72\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 7 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\radio\sx1272\sx1272.c - sx1272.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 8 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 8 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 8 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-72/ping-pong/Ping-Pong.uvproj b/Keil/Bleeper-72/ping-pong/Ping-Pong.uvproj deleted file mode 100644 index 3f4aed5a0..000000000 --- a/Keil/Bleeper-72/ping-pong/Ping-Pong.uvproj +++ /dev/null @@ -1,1295 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - Ping-Pong-lora - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\Ping-Pong-lora\ - Ping-Pong - 1 - 0 - 1 - 1 - 1 - .\lst\Ping-Pong-lora\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4104 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_MODEM_LORA - - ..\..\..\src;..\..\..\src\boards\Bleeper-72;..\..\..\src\boards\Bleeper-72\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\ping-pong\Bleeper-72\main.c - - - - - boards\Bleeper-72 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-72\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-72\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-72\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-72\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-72\spi-board.c - - - sx1272-board.c - 1 - ..\..\..\src\boards\Bleeper-72\sx1272-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-72\timer-board.c - - - - - boards\Bleeper-72\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1272.c - 1 - ..\..\..\src\radio\sx1272\sx1272.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - Ping-Pong-fsk - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\Ping-Pong-fsk\ - Ping-Pong - 1 - 0 - 1 - 1 - 1 - .\lst\Ping-Pong-fsk\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4104 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_MODEM_FSK - - ..\..\..\src;..\..\..\src\boards\Bleeper-72;..\..\..\src\boards\Bleeper-72\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\ping-pong\Bleeper-72\main.c - - - - - boards\Bleeper-72 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-72\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-72\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-72\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-72\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-72\spi-board.c - - - sx1272-board.c - 1 - ..\..\..\src\boards\Bleeper-72\sx1272-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-72\timer-board.c - - - - - boards\Bleeper-72\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1272.c - 1 - ..\..\..\src\radio\sx1272\sx1272.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - -
diff --git a/Keil/Bleeper-72/rx-sensi/rx-sensi.uvopt b/Keil/Bleeper-72/rx-sensi/rx-sensi.uvopt deleted file mode 100644 index 1c33b050e..000000000 --- a/Keil/Bleeper-72/rx-sensi/rx-sensi.uvopt +++ /dev/null @@ -1,819 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - rx-sensi-lora - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 1 - 0 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\rx-sensi-lora\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ULP2CM3 - -O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S8 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000 - - - 0 - UL2CM3 - -O14 -S0 -C0 -N00("ARM Cortex-M3") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000) - - - - - 0 - - - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - rx-sensi-fsk - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 1 - 0 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\rx-sensi-fsk\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ULP2CM3 - -O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S8 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000 - - - 0 - UL2CM3 - -O14 -S0 -C0 -N00("ARM Cortex-M3") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000) - - - - - 0 - - - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\apps\rx-sensi\Bleeper-72\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-72 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\sx1272-board.c - sx1272-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-72\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 7 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\radio\sx1272\sx1272.c - sx1272.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 8 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 8 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 8 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-72/rx-sensi/rx-sensi.uvproj b/Keil/Bleeper-72/rx-sensi/rx-sensi.uvproj deleted file mode 100644 index bb42aab5f..000000000 --- a/Keil/Bleeper-72/rx-sensi/rx-sensi.uvproj +++ /dev/null @@ -1,1295 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - rx-sensi-lora - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\rx-sensi-lora\ - rx-sensi - 1 - 0 - 1 - 1 - 1 - .\lst\rx-sensi-lora\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4104 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_MODEM_LORA - - ..\..\..\src;..\..\..\src\boards\Bleeper-72;..\..\..\src\boards\Bleeper-72\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\rx-sensi\Bleeper-72\main.c - - - - - boards\Bleeper-72 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-72\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-72\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-72\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-72\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-72\spi-board.c - - - sx1272-board.c - 1 - ..\..\..\src\boards\Bleeper-72\sx1272-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-72\timer-board.c - - - - - boards\Bleeper-72\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1272.c - 1 - ..\..\..\src\radio\sx1272\sx1272.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - rx-sensi-fsk - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\rx-sensi-fsk\ - rx-sensi - 1 - 0 - 1 - 1 - 1 - .\lst\rx-sensi-fsk\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4104 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_MODEM_FSK - - ..\..\..\src;..\..\..\src\boards\Bleeper-72;..\..\..\src\boards\Bleeper-72\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\rx-sensi\Bleeper-72\main.c - - - - - boards\Bleeper-72 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-72\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-72\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-72\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-72\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-72\spi-board.c - - - sx1272-board.c - 1 - ..\..\..\src\boards\Bleeper-72\sx1272-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-72\timer-board.c - - - - - boards\Bleeper-72\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1272.c - 1 - ..\..\..\src\radio\sx1272\sx1272.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - -
diff --git a/Keil/Bleeper-72/tx-cw/tx-cw.uvopt b/Keil/Bleeper-72/tx-cw/tx-cw.uvopt deleted file mode 100644 index a73e568d0..000000000 --- a/Keil/Bleeper-72/tx-cw/tx-cw.uvopt +++ /dev/null @@ -1,661 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - tx-cw - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\tx-cw\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 0 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ULP2CM3 - -O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_128 -FS08000000 -FL020000) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S8 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - -O14 -S0 -C0 -N00("ARM Cortex-M3") -D00(1BA00477) -L00(4) -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_1024 -FS08000000 -FL0100000) - - - - - 0 - - - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\apps\tx-cw\Bleeper-72\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-72 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\sx1272-board.c - sx1272-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-72\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 7 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\radio\sx1272\sx1272.c - sx1272.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 8 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 8 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 8 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-72/tx-cw/tx-cw.uvproj b/Keil/Bleeper-72/tx-cw/tx-cw.uvproj deleted file mode 100644 index 059e969d0..000000000 --- a/Keil/Bleeper-72/tx-cw/tx-cw.uvproj +++ /dev/null @@ -1,653 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - tx-cw - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\tx-cw\ - tx-cw - 1 - 0 - 1 - 1 - 1 - .\lst\tx-cw\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER - - ..\..\..\src;..\..\..\src\boards\Bleeper-72;..\..\..\src\boards\Bleeper-72\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\tx-cw\Bleeper-72\main.c - - - - - boards\Bleeper-72 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-72\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-72\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-72\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-72\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-72\spi-board.c - - - sx1272-board.c - 1 - ..\..\..\src\boards\Bleeper-72\sx1272-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-72\timer-board.c - - - - - boards\Bleeper-72\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-72\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-72\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-72\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1272.c - 1 - ..\..\..\src\radio\sx1272\sx1272.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/classA/LoRaMac-api-v3.uvopt b/Keil/Bleeper-76/LoRaMac/classA/LoRaMac-api-v3.uvopt deleted file mode 100644 index bb7b41e3c..000000000 --- a/Keil/Bleeper-76/LoRaMac/classA/LoRaMac-api-v3.uvopt +++ /dev/null @@ -1,1201 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - LoRaMac-433 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-433\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-780 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-780\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-868 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-868\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-915 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-915\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-76\main-api-v3.c - main-api-v3.c - 0 - 0 - - - - - boards\Bleeper-76 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - sx1276-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-76\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - LoRaMac-api-v3.c - 0 - 0 - - - 6 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1276\sx1276.c - sx1276.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 37 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/classA/LoRaMac-api-v3.uvproj b/Keil/Bleeper-76/LoRaMac/classA/LoRaMac-api-v3.uvproj deleted file mode 100644 index a51029d50..000000000 --- a/Keil/Bleeper-76/LoRaMac/classA/LoRaMac-api-v3.uvproj +++ /dev/null @@ -1,2719 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - LoRaMac-433 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-433\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-433\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_433 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-76\main-api-v3.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-780 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-780\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-780\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_780 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-76\main-api-v3.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-868 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-868\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-868\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-76\main-api-v3.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-915 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-915\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-915\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_915 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-76\main-api-v3.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/classA/LoRaMac.uvopt b/Keil/Bleeper-76/LoRaMac/classA/LoRaMac.uvopt deleted file mode 100644 index d9e715732..000000000 --- a/Keil/Bleeper-76/LoRaMac/classA/LoRaMac.uvopt +++ /dev/null @@ -1,1188 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - LoRaMac-433 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-433\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-780 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-780\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-868 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-868\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-915 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-915\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-76\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-76 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - sx1276-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-76\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1276\sx1276.c - sx1276.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/classA/LoRaMac.uvproj b/Keil/Bleeper-76/LoRaMac/classA/LoRaMac.uvproj deleted file mode 100644 index 7570fed9a..000000000 --- a/Keil/Bleeper-76/LoRaMac/classA/LoRaMac.uvproj +++ /dev/null @@ -1,2699 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - LoRaMac-433 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-433\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-433\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_433 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-780 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-780\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-780\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_780 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-868 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-868\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-868\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-915 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-915\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-915\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_915 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classA\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/classB/LoRaMac-api-v3.uvopt b/Keil/Bleeper-76/LoRaMac/classB/LoRaMac-api-v3.uvopt deleted file mode 100644 index 8f016c268..000000000 --- a/Keil/Bleeper-76/LoRaMac/classB/LoRaMac-api-v3.uvopt +++ /dev/null @@ -1,1201 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - LoRaMac-433 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-433\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-780 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-780\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-868 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-868\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-915 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-915\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-76\main-api-v3.c - main-api-v3.c - 0 - 0 - - - - - boards\Bleeper-76 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - sx1276-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-76\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - LoRaMac-api-v3.c - 0 - 0 - - - 6 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1276\sx1276.c - sx1276.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 37 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/classB/LoRaMac-api-v3.uvproj b/Keil/Bleeper-76/LoRaMac/classB/LoRaMac-api-v3.uvproj deleted file mode 100644 index ab56503f6..000000000 --- a/Keil/Bleeper-76/LoRaMac/classB/LoRaMac-api-v3.uvproj +++ /dev/null @@ -1,2719 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - LoRaMac-433 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-433\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-433\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_433 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-76\main-api-v3.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-780 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-780\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-780\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_780 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-76\main-api-v3.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-868 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-868\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-868\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-76\main-api-v3.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-915 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-915\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-915\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_915 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-76\main-api-v3.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/classB/LoRaMac.uvopt b/Keil/Bleeper-76/LoRaMac/classB/LoRaMac.uvopt deleted file mode 100644 index 53f87ccff..000000000 --- a/Keil/Bleeper-76/LoRaMac/classB/LoRaMac.uvopt +++ /dev/null @@ -1,1188 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - LoRaMac-433 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-433\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-780 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-780\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-868 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-868\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-915 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-915\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-76\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-76 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - sx1276-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-76\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1276\sx1276.c - sx1276.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/classB/LoRaMac.uvproj b/Keil/Bleeper-76/LoRaMac/classB/LoRaMac.uvproj deleted file mode 100644 index bed5b0ca3..000000000 --- a/Keil/Bleeper-76/LoRaMac/classB/LoRaMac.uvproj +++ /dev/null @@ -1,2699 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - LoRaMac-433 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-433\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-433\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_433 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-780 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-780\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-780\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_780 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-868 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-868\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-868\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-915 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-915\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-915\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_915 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classB\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/classC/LoRaMac-api-v3.uvopt b/Keil/Bleeper-76/LoRaMac/classC/LoRaMac-api-v3.uvopt deleted file mode 100644 index 5b4ded269..000000000 --- a/Keil/Bleeper-76/LoRaMac/classC/LoRaMac-api-v3.uvopt +++ /dev/null @@ -1,1201 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - LoRaMac-433 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-433\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-780 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-780\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-868 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-868\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-915 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-915\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-76\main-api-v3.c - main-api-v3.c - 0 - 0 - - - - - boards\Bleeper-76 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - sx1276-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-76\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - LoRaMac-api-v3.c - 0 - 0 - - - 6 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1276\sx1276.c - sx1276.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 37 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/classC/LoRaMac-api-v3.uvproj b/Keil/Bleeper-76/LoRaMac/classC/LoRaMac-api-v3.uvproj deleted file mode 100644 index 56531c1e8..000000000 --- a/Keil/Bleeper-76/LoRaMac/classC/LoRaMac-api-v3.uvproj +++ /dev/null @@ -1,2719 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - LoRaMac-433 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-433\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-433\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_433 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-76\main-api-v3.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-780 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-780\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-780\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_780 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-76\main-api-v3.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-868 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-868\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-868\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-76\main-api-v3.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-915 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-915\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-915\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_915 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main-api-v3.c - 1 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-76\main-api-v3.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/classC/LoRaMac.uvopt b/Keil/Bleeper-76/LoRaMac/classC/LoRaMac.uvopt deleted file mode 100644 index de4dd112c..000000000 --- a/Keil/Bleeper-76/LoRaMac/classC/LoRaMac.uvopt +++ /dev/null @@ -1,1188 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - LoRaMac-433 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-433\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-780 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-780\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-868 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-868\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - LoRaMac-915 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\LoRaMac-915\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-76\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-76 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - sx1276-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-76\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1276\sx1276.c - sx1276.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/classC/LoRaMac.uvproj b/Keil/Bleeper-76/LoRaMac/classC/LoRaMac.uvproj deleted file mode 100644 index ab2fbb901..000000000 --- a/Keil/Bleeper-76/LoRaMac/classC/LoRaMac.uvproj +++ /dev/null @@ -1,2699 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - LoRaMac-433 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-433\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-433\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_433 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-780 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-780\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-780\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_780 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-868 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-868\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-868\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - LoRaMac-915 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\LoRaMac-915\ - LoRaMac - 1 - 0 - 1 - 1 - 1 - .\lst\LoRaMac-915\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_915 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\classC\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/radioCoverageTest/radioCoverageTest.uvopt b/Keil/Bleeper-76/LoRaMac/radioCoverageTest/radioCoverageTest.uvopt deleted file mode 100644 index 54bd3f569..000000000 --- a/Keil/Bleeper-76/LoRaMac/radioCoverageTest/radioCoverageTest.uvopt +++ /dev/null @@ -1,1201 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - radioCoverageTest-433 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\radioCoverageTest-433\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - radioCoverageTest-780 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\radioCoverageTest-780\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - radioCoverageTest-868 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\radioCoverageTest-868\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - radioCoverageTest-915 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\radioCoverageTest-915\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\apps\LoRaMac\radioCoverageTest\Bleeper-76\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-76 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - sx1276-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-76\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - mac - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac.c - LoRaMac.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - LoRaMac-api-v3.c - 0 - 0 - - - 6 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\mac\LoRaMacCrypto.c - LoRaMacCrypto.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 7 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 7 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\radio\sx1276\sx1276.c - sx1276.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 9 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 9 - 33 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 9 - 34 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 9 - 35 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - - - system\crypto - 1 - 0 - 0 - 0 - - 10 - 36 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\aes.c - aes.c - 0 - 0 - - - 10 - 37 - 1 - 0 - 0 - 0 - 0 - ..\..\..\..\src\system\crypto\cmac.c - cmac.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-76/LoRaMac/radioCoverageTest/radioCoverageTest.uvproj b/Keil/Bleeper-76/LoRaMac/radioCoverageTest/radioCoverageTest.uvproj deleted file mode 100644 index 307f3ce6f..000000000 --- a/Keil/Bleeper-76/LoRaMac/radioCoverageTest/radioCoverageTest.uvproj +++ /dev/null @@ -1,2719 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - radioCoverageTest-433 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\radioCoverageTest-433\ - radioCoverageTest - 1 - 0 - 1 - 1 - 1 - .\lst\radioCoverageTest-433\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_433 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\radioCoverageTest\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - radioCoverageTest-780 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\radioCoverageTest-780\ - radioCoverageTest - 1 - 0 - 1 - 1 - 1 - .\lst\radioCoverageTest-780\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_780 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\radioCoverageTest\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - radioCoverageTest-868 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\radioCoverageTest-868\ - radioCoverageTest - 1 - 0 - 1 - 1 - 1 - .\lst\radioCoverageTest-868\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_868 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\radioCoverageTest\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - radioCoverageTest-915 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\radioCoverageTest-915\ - radioCoverageTest - 1 - 0 - 1 - 1 - 1 - .\lst\radioCoverageTest-915\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER LOW_POWER_MODE_ENABLE USE_BAND_915 - - ..\..\..\..\src;..\..\..\..\src\boards\Bleeper-76;..\..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\..\src\boards\mcu\stm32;..\..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\..\src\mac;..\..\..\..\src\peripherals;..\..\..\..\src\radio;..\..\..\..\src\system;..\..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\..\src\apps\LoRaMac\radioCoverageTest\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\..\src\boards\mcu\stm32\utilities.c - - - - - mac - - - LoRaMac.c - 1 - ..\..\..\..\src\mac\LoRaMac.c - - - LoRaMac-api-v3.c - 1 - ..\..\..\..\src\mac\LoRaMac-api-v3.c - - - LoRaMacCrypto.c - 1 - ..\..\..\..\src\mac\LoRaMacCrypto.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\..\src\system\timer.c - - - - - system\crypto - - - aes.c - 1 - ..\..\..\..\src\system\crypto\aes.c - - - cmac.c - 1 - ..\..\..\..\src\system\crypto\cmac.c - - - - - - - -
diff --git a/Keil/Bleeper-76/ping-pong/Ping-Pong.uvopt b/Keil/Bleeper-76/ping-pong/Ping-Pong.uvopt deleted file mode 100644 index 47a0db128..000000000 --- a/Keil/Bleeper-76/ping-pong/Ping-Pong.uvopt +++ /dev/null @@ -1,1727 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - Ping-Pong-433-lora - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\Ping-Pong-433-lora\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - Ping-Pong-433-fsk - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\Ping-Pong-433-fsk\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - Ping-Pong-780-lora - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\Ping-Pong-780-lora\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - Ping-Pong-780-fsk - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\Ping-Pong-780-fsk\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - Ping-Pong-868-lora - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\Ping-Pong-868-lora\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - Ping-Pong-868-fsk - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\Ping-Pong-868-fsk\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - Ping-Pong-915-lora - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\Ping-Pong-915-lora\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - Ping-Pong-915-fsk - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\Ping-Pong-915-fsk\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\apps\ping-pong\Bleeper-76\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-76 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - sx1276-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-76\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 7 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\radio\sx1276\sx1276.c - sx1276.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 8 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 8 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 8 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-76/ping-pong/Ping-Pong.uvproj b/Keil/Bleeper-76/ping-pong/Ping-Pong.uvproj deleted file mode 100644 index f39305400..000000000 --- a/Keil/Bleeper-76/ping-pong/Ping-Pong.uvproj +++ /dev/null @@ -1,5147 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - Ping-Pong-433-lora - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\Ping-Pong-433-lora\ - Ping-Pong - 1 - 0 - 1 - 1 - 1 - .\lst\Ping-Pong-433-lora\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_433 USE_MODEM_LORA - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\ping-pong\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - Ping-Pong-433-fsk - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\Ping-Pong-433-fsk\ - Ping-Pong - 1 - 0 - 1 - 1 - 1 - .\lst\Ping-Pong-433-fsk\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_433 USE_MODEM_FSK - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\ping-pong\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - Ping-Pong-780-lora - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\Ping-Pong-780-lora\ - Ping-Pong - 1 - 0 - 1 - 1 - 1 - .\lst\Ping-Pong-780-lora\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_780 USE_MODEM_LORA - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\ping-pong\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - Ping-Pong-780-fsk - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\Ping-Pong-780-fsk\ - Ping-Pong - 1 - 0 - 1 - 1 - 1 - .\lst\Ping-Pong-780-fsk\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_780 USE_MODEM_FSK - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\ping-pong\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - Ping-Pong-868-lora - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\Ping-Pong-868-lora\ - Ping-Pong - 1 - 0 - 1 - 1 - 1 - .\lst\Ping-Pong-868-lora\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_868 USE_MODEM_LORA - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\ping-pong\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - Ping-Pong-868-fsk - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\Ping-Pong-868-fsk\ - Ping-Pong - 1 - 0 - 1 - 1 - 1 - .\lst\Ping-Pong-868-fsk\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_868 USE_MODEM_FSK - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\ping-pong\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - Ping-Pong-915-lora - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\Ping-Pong-915-lora\ - Ping-Pong - 1 - 0 - 1 - 1 - 1 - .\lst\Ping-Pong-915-lora\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_915 USE_MODEM_LORA - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\ping-pong\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - Ping-Pong-915-fsk - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\Ping-Pong-915-fsk\ - Ping-Pong - 1 - 0 - 1 - 1 - 1 - .\lst\Ping-Pong-915-fsk\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_915 USE_MODEM_FSK - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\ping-pong\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - -
diff --git a/Keil/Bleeper-76/rx-sensi/rx-sensi.uvopt b/Keil/Bleeper-76/rx-sensi/rx-sensi.uvopt deleted file mode 100644 index d27dc24cc..000000000 --- a/Keil/Bleeper-76/rx-sensi/rx-sensi.uvopt +++ /dev/null @@ -1,1727 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - rx-sensi-433-lora - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\rx-sensi-433-lora\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - rx-sensi-433-fsk - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\rx-sensi-433-fsk\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - rx-sensi-780-lora - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\rx-sensi-780-lora\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - rx-sensi-780-fsk - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\rx-sensi-780-fsk\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - rx-sensi-868-lora - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\rx-sensi-868-lora\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - rx-sensi-868-fsk - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\rx-sensi-868-fsk\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - rx-sensi-915-lora - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\rx-sensi-915-lora\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - rx-sensi-915-fsk - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\rx-sensi-915-fsk\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\apps\rx-sensi\Bleeper-76\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-76 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - sx1276-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-76\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 7 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\radio\sx1276\sx1276.c - sx1276.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 8 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 8 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 8 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-76/rx-sensi/rx-sensi.uvproj b/Keil/Bleeper-76/rx-sensi/rx-sensi.uvproj deleted file mode 100644 index aed83db27..000000000 --- a/Keil/Bleeper-76/rx-sensi/rx-sensi.uvproj +++ /dev/null @@ -1,5147 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - rx-sensi-433-lora - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\rx-sensi-433-lora\ - rx-sensi - 1 - 0 - 1 - 1 - 1 - .\lst\rx-sensi-433-lora\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_433 USE_MODEM_LORA - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\rx-sensi\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - rx-sensi-433-fsk - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\rx-sensi-433-fsk\ - rx-sensi - 1 - 0 - 1 - 1 - 1 - .\lst\rx-sensi-433-fsk\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_433 USE_MODEM_FSK - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\rx-sensi\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - rx-sensi-780-lora - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\rx-sensi-780-lora\ - rx-sensi - 1 - 0 - 1 - 1 - 1 - .\lst\rx-sensi-780-lora\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_780 USE_MODEM_LORA - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\rx-sensi\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - rx-sensi-780-fsk - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\rx-sensi-780-fsk\ - rx-sensi - 1 - 0 - 1 - 1 - 1 - .\lst\rx-sensi-780-fsk\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_780 USE_MODEM_FSK - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\rx-sensi\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - rx-sensi-868-lora - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\rx-sensi-868-lora\ - rx-sensi - 1 - 0 - 1 - 1 - 1 - .\lst\rx-sensi-868-lora\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_868 USE_MODEM_LORA - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\rx-sensi\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - rx-sensi-868-fsk - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\rx-sensi-868-fsk\ - rx-sensi - 1 - 0 - 1 - 1 - 1 - .\lst\rx-sensi-868-fsk\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_868 USE_MODEM_FSK - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\rx-sensi\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - rx-sensi-915-lora - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\rx-sensi-915-lora\ - rx-sensi - 1 - 0 - 1 - 1 - 1 - .\lst\rx-sensi-915-lora\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_915 USE_MODEM_LORA - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\rx-sensi\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - rx-sensi-915-fsk - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\rx-sensi-915-fsk\ - rx-sensi - 1 - 0 - 1 - 1 - 1 - .\lst\rx-sensi-915-fsk\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_915 USE_MODEM_FSK - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\rx-sensi\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - -
diff --git a/Keil/Bleeper-76/tx-cw/tx-cw.uvopt b/Keil/Bleeper-76/tx-cw/tx-cw.uvopt deleted file mode 100644 index 06948638f..000000000 --- a/Keil/Bleeper-76/tx-cw/tx-cw.uvopt +++ /dev/null @@ -1,1115 +0,0 @@ - - - - 1.0 - -
### uVision Project, (C) Keil Software
- - - *.c - *.s*; *.src; *.a* - *.obj - *.lib - *.txt; *.h; *.inc - *.plm - *.cpp - - - - 0 - 0 - - - - tx-cw-433 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\tx-cw-433\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - tx-cw-780 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\tx-cw-780\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - tx-cw-868 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\tx-cw-868\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 1 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - tx-cw-915 - 0x4 - ARM-ADS - - 12000000 - - 1 - 1 - 0 - 1 - - - 1 - 65535 - 0 - 0 - 0 - - - 79 - 66 - 8 - .\lst\tx-cw-915\ - - - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - - - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - - - 1 - 0 - 0 - - 255 - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 11 - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - 0 - DLGTARM - (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0) - - - 0 - ARMDBGFLAGS - - - - 0 - DLGUARM - (105=-1,-1,-1,-1,0) - - - 0 - ST-LINKIII-KEIL_SWO - -U-O2255 -O10447 -S3 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8004 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384.FLM -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM) - - - 0 - UL2CM3 - UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000 -FP0($$Device:STM32L151RD$Flash\STM32L1xx_384.FLM)) - - - - - 0 - - - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - apps - 1 - 0 - 0 - 0 - - 1 - 1 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\apps\tx-cw\Bleeper-76\main.c - main.c - 0 - 0 - - - - - boards\Bleeper-76 - 1 - 0 - 0 - 0 - - 2 - 2 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\board.c - board.c - 0 - 0 - - - 2 - 3 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - gpio-board.c - 0 - 0 - - - 2 - 4 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - i2c-board.c - 0 - 0 - - - 2 - 5 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - rtc-board.c - 0 - 0 - - - 2 - 6 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\spi-board.c - spi-board.c - 0 - 0 - - - 2 - 7 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - sx1276-board.c - 0 - 0 - - - 2 - 8 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\timer-board.c - timer-board.c - 0 - 0 - - - - - boards\Bleeper-76\cmsis - 0 - 0 - 0 - 0 - - 3 - 9 - 2 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - startup_stm32l1xx_hd.s - 0 - 0 - - - 3 - 10 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - system_stm32l1xx.c - 0 - 0 - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - 0 - 0 - 0 - 0 - - 4 - 11 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - misc.c - 0 - 0 - - - 4 - 12 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - stm32l1xx_dbgmcu.c - 0 - 0 - - - 4 - 13 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - stm32l1xx_dma.c - 0 - 0 - - - 4 - 14 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - stm32l1xx_exti.c - 0 - 0 - - - 4 - 15 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - stm32l1xx_gpio.c - 0 - 0 - - - 4 - 16 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - stm32l1xx_i2c.c - 0 - 0 - - - 4 - 17 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - stm32l1xx_pwr.c - 0 - 0 - - - 4 - 18 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - stm32l1xx_rcc.c - 0 - 0 - - - 4 - 19 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - stm32l1xx_rtc.c - 0 - 0 - - - 4 - 20 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - stm32l1xx_spi.c - 0 - 0 - - - 4 - 21 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - stm32l1xx_syscfg.c - 0 - 0 - - - 4 - 22 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - stm32l1xx_tim.c - 0 - 0 - - - 4 - 23 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - stm32l1xx_usart.c - 0 - 0 - - - - - boards\mcu\stm32 - 0 - 0 - 0 - 0 - - 5 - 24 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - sysIrqHandlers.c - 0 - 0 - - - 5 - 25 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\boards\mcu\stm32\utilities.c - utilities.c - 0 - 0 - - - - - peripherals - 1 - 0 - 0 - 0 - - 6 - 26 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\peripherals\mpl3115.c - mpl3115.c - 0 - 0 - - - 6 - 27 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\peripherals\selector.c - selector.c - 0 - 0 - - - - - radio - 1 - 0 - 0 - 0 - - 7 - 28 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\radio\sx1276\sx1276.c - sx1276.c - 0 - 0 - - - - - system - 1 - 0 - 0 - 0 - - 8 - 29 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\delay.c - delay.c - 0 - 0 - - - 8 - 30 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\gpio.c - gpio.c - 0 - 0 - - - 8 - 31 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\i2c.c - i2c.c - 0 - 0 - - - 8 - 32 - 1 - 0 - 0 - 0 - 0 - ..\..\..\src\system\timer.c - timer.c - 0 - 0 - - - -
diff --git a/Keil/Bleeper-76/tx-cw/tx-cw.uvproj b/Keil/Bleeper-76/tx-cw/tx-cw.uvproj deleted file mode 100644 index b0f61e085..000000000 --- a/Keil/Bleeper-76/tx-cw/tx-cw.uvproj +++ /dev/null @@ -1,2579 +0,0 @@ - - - - 1.1 - -
### uVision Project, (C) Keil Software
- - - - tx-cw-433 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\tx-cw-433\ - tx-cw - 1 - 0 - 1 - 1 - 1 - .\lst\tx-cw-433\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 0 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_433 - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\tx-cw\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - tx-cw-780 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\tx-cw-780\ - tx-cw - 1 - 0 - 1 - 1 - 1 - .\lst\tx-cw-780\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_780 - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\tx-cw\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - tx-cw-868 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\tx-cw-868\ - tx-cw - 1 - 0 - 1 - 1 - 1 - .\lst\tx-cw-868\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_868 - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\tx-cw\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - tx-cw-915 - 0x4 - ARM-ADS - - - STM32L151RD - STMicroelectronics - IRAM(0x20000000-0x2000BFFF) IROM(0x8000000-0x805FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") - - "STARTUP\ST\STM32L1xx\startup_stm32l1xx_hd.s" ("STM32L1xx High density Startup Code") - ULP2CM3(-O207 -S8 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32L1xx_384 -FS08000000 -FL060000) - 6516 - stm32l1xx.h - - - - - - - - - - SFD\ST\STM32L1xx\STM32L15x.sfr - 0 - 0 - - - - ST\STM32L1xx\ - ST\STM32L1xx\ - - 0 - 0 - 0 - 0 - 1 - - .\obj\tx-cw-915\ - tx-cw - 1 - 0 - 1 - 1 - 1 - .\lst\tx-cw-915\ - 1 - 0 - 0 - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - 0 - 0 - - - 0 - 0 - - - 0 - 0 - - 0 - - - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 3 - - - 1 - - - SARMCM3.DLL - -MPU -REMAP - DCM.DLL - -pCM3 - SARMCM3.DLL - -MPU - TCM.DLL - -pCM3 - - - - 1 - 0 - 0 - 0 - 16 - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - - - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - 1 - 1 - - 0 - 11 - - - - - - - - - - - - - - STLink\ST-LINKIII-KEIL_SWO.dll - - - - - 1 - 0 - 0 - 1 - 1 - 4103 - - 1 - STLink\ST-LINKIII-KEIL_SWO.dll - "" () - - - - - 0 - - - - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 1 - 1 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 1 - 0 - 0 - "Cortex-M3" - - 0 - 0 - 0 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 8 - 1 - 0 - 0 - 3 - 3 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 1 - 0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 1 - 0x8000000 - 0x60000 - - - 0 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x0 - 0x0 - - - 1 - 0x8000000 - 0x60000 - - - 1 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x0 - 0x0 - - - 0 - 0x20000000 - 0xc000 - - - 0 - 0x0 - 0x0 - - - - - - 1 - 2 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - - - USE_DEBUGGER USE_BAND_915 - - ..\..\..\src;..\..\..\src\boards\Bleeper-76;..\..\..\src\boards\Bleeper-76\cmsis;..\..\..\src\boards\mcu\stm32;..\..\..\src\boards\mcu\stm32\cmsis;..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\inc;..\..\..\src\mac;..\..\..\src\peripherals;..\..\..\src\radio;..\..\..\src\system;..\..\..\src\system\crypto - - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - - - - - - 1 - 0 - 0 - 0 - 1 - 0 - 0x08000000 - 0x20000000 - - - - - - - - - - - - - apps - - - main.c - 1 - ..\..\..\src\apps\tx-cw\Bleeper-76\main.c - - - - - boards\Bleeper-76 - - - board.c - 1 - ..\..\..\src\boards\Bleeper-76\board.c - - - gpio-board.c - 1 - ..\..\..\src\boards\Bleeper-76\gpio-board.c - - - i2c-board.c - 1 - ..\..\..\src\boards\Bleeper-76\i2c-board.c - - - 2 - 0 - 0 - 0 - 0 - 2 - 2 - 2 - 2 - 2 - 11 - - - 1 - - - - 2 - 1 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - 2 - - - - - - - - - - - - rtc-board.c - 1 - ..\..\..\src\boards\Bleeper-76\rtc-board.c - - - spi-board.c - 1 - ..\..\..\src\boards\Bleeper-76\spi-board.c - - - sx1276-board.c - 1 - ..\..\..\src\boards\Bleeper-76\sx1276-board.c - - - timer-board.c - 1 - ..\..\..\src\boards\Bleeper-76\timer-board.c - - - - - boards\Bleeper-76\cmsis - - - startup_stm32l1xx_hd.s - 2 - ..\..\..\src\boards\Bleeper-76\cmsis\arm-std\startup_stm32l1xx_hd.s - - - system_stm32l1xx.c - 1 - ..\..\..\src\boards\Bleeper-76\cmsis\system_stm32l1xx.c - - - - - boards\Bleeper-76\STM32L1xx_StdPeriph_Driver - - - misc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\misc.c - - - stm32l1xx_dbgmcu.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dbgmcu.c - - - stm32l1xx_dma.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_dma.c - - - stm32l1xx_exti.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_exti.c - - - stm32l1xx_gpio.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_gpio.c - - - stm32l1xx_i2c.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_i2c.c - - - stm32l1xx_pwr.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_pwr.c - - - stm32l1xx_rcc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rcc.c - - - stm32l1xx_rtc.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_rtc.c - - - stm32l1xx_spi.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_spi.c - - - stm32l1xx_syscfg.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_syscfg.c - - - stm32l1xx_tim.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_tim.c - - - stm32l1xx_usart.c - 1 - ..\..\..\src\boards\mcu\stm32\STM32L1xx_StdPeriph_Driver\src\stm32l1xx_usart.c - - - - - boards\mcu\stm32 - - - sysIrqHandlers.c - 1 - ..\..\..\src\boards\mcu\stm32\sysIrqHandlers.c - - - utilities.c - 1 - ..\..\..\src\boards\mcu\stm32\utilities.c - - - - - peripherals - - - mpl3115.c - 1 - ..\..\..\src\peripherals\mpl3115.c - - - selector.c - 1 - ..\..\..\src\peripherals\selector.c - - - - - radio - - - sx1276.c - 1 - ..\..\..\src\radio\sx1276\sx1276.c - - - - - system - - - delay.c - 1 - ..\..\..\src\system\delay.c - - - gpio.c - 1 - ..\..\..\src\system\gpio.c - - - i2c.c - 1 - ..\..\..\src\system\i2c.c - - - timer.c - 1 - ..\..\..\src\system\timer.c - - - - - - - -
diff --git a/Ride/Bleeper-72/LoRaMac/classA/LoRaMac-api-v3.rapp b/Ride/Bleeper-72/LoRaMac/classA/LoRaMac-api-v3.rapp deleted file mode 100644 index 6a59035d5..000000000 --- a/Ride/Bleeper-72/LoRaMac/classA/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,157 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/classA/LoRaMac-api-v3.rprj b/Ride/Bleeper-72/LoRaMac/classA/LoRaMac-api-v3.rprj deleted file mode 100644 index 35a6eece8..000000000 --- a/Ride/Bleeper-72/LoRaMac/classA/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/classA/LoRaMac.rapp b/Ride/Bleeper-72/LoRaMac/classA/LoRaMac.rapp deleted file mode 100644 index 297098d57..000000000 --- a/Ride/Bleeper-72/LoRaMac/classA/LoRaMac.rapp +++ /dev/null @@ -1,156 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/classA/LoRaMac.rprj b/Ride/Bleeper-72/LoRaMac/classA/LoRaMac.rprj deleted file mode 100644 index 55423f815..000000000 --- a/Ride/Bleeper-72/LoRaMac/classA/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/classB/LoRaMac-api-v3.rapp b/Ride/Bleeper-72/LoRaMac/classB/LoRaMac-api-v3.rapp deleted file mode 100644 index 7bfb296e2..000000000 --- a/Ride/Bleeper-72/LoRaMac/classB/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,157 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/classB/LoRaMac-api-v3.rprj b/Ride/Bleeper-72/LoRaMac/classB/LoRaMac-api-v3.rprj deleted file mode 100644 index 41066e481..000000000 --- a/Ride/Bleeper-72/LoRaMac/classB/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/classB/LoRaMac.rapp b/Ride/Bleeper-72/LoRaMac/classB/LoRaMac.rapp deleted file mode 100644 index 2e4b580bc..000000000 --- a/Ride/Bleeper-72/LoRaMac/classB/LoRaMac.rapp +++ /dev/null @@ -1,156 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/classB/LoRaMac.rprj b/Ride/Bleeper-72/LoRaMac/classB/LoRaMac.rprj deleted file mode 100644 index 97cd3f673..000000000 --- a/Ride/Bleeper-72/LoRaMac/classB/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/classC/LoRaMac-api-v3.rapp b/Ride/Bleeper-72/LoRaMac/classC/LoRaMac-api-v3.rapp deleted file mode 100644 index 1dd489a9f..000000000 --- a/Ride/Bleeper-72/LoRaMac/classC/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,157 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/classC/LoRaMac-api-v3.rprj b/Ride/Bleeper-72/LoRaMac/classC/LoRaMac-api-v3.rprj deleted file mode 100644 index ebd36a80e..000000000 --- a/Ride/Bleeper-72/LoRaMac/classC/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/classC/LoRaMac.rapp b/Ride/Bleeper-72/LoRaMac/classC/LoRaMac.rapp deleted file mode 100644 index 4b66753c7..000000000 --- a/Ride/Bleeper-72/LoRaMac/classC/LoRaMac.rapp +++ /dev/null @@ -1,156 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/classC/LoRaMac.rprj b/Ride/Bleeper-72/LoRaMac/classC/LoRaMac.rprj deleted file mode 100644 index 588797210..000000000 --- a/Ride/Bleeper-72/LoRaMac/classC/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/radioCoverageTest/radioCoverageTest.rapp b/Ride/Bleeper-72/LoRaMac/radioCoverageTest/radioCoverageTest.rapp deleted file mode 100644 index 5fdc987c2..000000000 --- a/Ride/Bleeper-72/LoRaMac/radioCoverageTest/radioCoverageTest.rapp +++ /dev/null @@ -1,157 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/Bleeper-72/LoRaMac/radioCoverageTest/radioCoverageTest.rprj b/Ride/Bleeper-72/LoRaMac/radioCoverageTest/radioCoverageTest.rprj deleted file mode 100644 index 0af616d02..000000000 --- a/Ride/Bleeper-72/LoRaMac/radioCoverageTest/radioCoverageTest.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-72/ping-pong/Ping-Pong.rapp b/Ride/Bleeper-72/ping-pong/Ping-Pong.rapp deleted file mode 100644 index 75ed17b30..000000000 --- a/Ride/Bleeper-72/ping-pong/Ping-Pong.rapp +++ /dev/null @@ -1,267 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-72/ping-pong/Ping-Pong.rprj b/Ride/Bleeper-72/ping-pong/Ping-Pong.rprj deleted file mode 100644 index d8b8aede8..000000000 --- a/Ride/Bleeper-72/ping-pong/Ping-Pong.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-72/rx-sensi/rx-sensi.rapp b/Ride/Bleeper-72/rx-sensi/rx-sensi.rapp deleted file mode 100644 index 91ea260e2..000000000 --- a/Ride/Bleeper-72/rx-sensi/rx-sensi.rapp +++ /dev/null @@ -1,267 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-72/rx-sensi/rx-sensi.rprj b/Ride/Bleeper-72/rx-sensi/rx-sensi.rprj deleted file mode 100644 index c78744811..000000000 --- a/Ride/Bleeper-72/rx-sensi/rx-sensi.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-72/tx-cw/tx-cw.rapp b/Ride/Bleeper-72/tx-cw/tx-cw.rapp deleted file mode 100644 index 537a6d137..000000000 --- a/Ride/Bleeper-72/tx-cw/tx-cw.rapp +++ /dev/null @@ -1,190 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-72/tx-cw/tx-cw.rprj b/Ride/Bleeper-72/tx-cw/tx-cw.rprj deleted file mode 100644 index 3163e8e72..000000000 --- a/Ride/Bleeper-72/tx-cw/tx-cw.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/classA/LoRaMac-api-v3.rapp b/Ride/Bleeper-76/LoRaMac/classA/LoRaMac-api-v3.rapp deleted file mode 100644 index ea7b3fb38..000000000 --- a/Ride/Bleeper-76/LoRaMac/classA/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,432 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/classA/LoRaMac-api-v3.rprj b/Ride/Bleeper-76/LoRaMac/classA/LoRaMac-api-v3.rprj deleted file mode 100644 index b7bf92dea..000000000 --- a/Ride/Bleeper-76/LoRaMac/classA/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/classA/LoRaMac.rapp b/Ride/Bleeper-76/LoRaMac/classA/LoRaMac.rapp deleted file mode 100644 index 8da2f69ed..000000000 --- a/Ride/Bleeper-76/LoRaMac/classA/LoRaMac.rapp +++ /dev/null @@ -1,431 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/classA/LoRaMac.rprj b/Ride/Bleeper-76/LoRaMac/classA/LoRaMac.rprj deleted file mode 100644 index 33db9b994..000000000 --- a/Ride/Bleeper-76/LoRaMac/classA/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/classB/LoRaMac-api-v3.rapp b/Ride/Bleeper-76/LoRaMac/classB/LoRaMac-api-v3.rapp deleted file mode 100644 index 51b588e4d..000000000 --- a/Ride/Bleeper-76/LoRaMac/classB/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,432 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/classB/LoRaMac-api-v3.rprj b/Ride/Bleeper-76/LoRaMac/classB/LoRaMac-api-v3.rprj deleted file mode 100644 index b639834ea..000000000 --- a/Ride/Bleeper-76/LoRaMac/classB/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/classB/LoRaMac.rapp b/Ride/Bleeper-76/LoRaMac/classB/LoRaMac.rapp deleted file mode 100644 index 9fd9318db..000000000 --- a/Ride/Bleeper-76/LoRaMac/classB/LoRaMac.rapp +++ /dev/null @@ -1,431 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/classB/LoRaMac.rprj b/Ride/Bleeper-76/LoRaMac/classB/LoRaMac.rprj deleted file mode 100644 index 53f614df6..000000000 --- a/Ride/Bleeper-76/LoRaMac/classB/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/classC/LoRaMac-api-v3.rapp b/Ride/Bleeper-76/LoRaMac/classC/LoRaMac-api-v3.rapp deleted file mode 100644 index a45e0271d..000000000 --- a/Ride/Bleeper-76/LoRaMac/classC/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,432 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/classC/LoRaMac-api-v3.rprj b/Ride/Bleeper-76/LoRaMac/classC/LoRaMac-api-v3.rprj deleted file mode 100644 index 82d84f8c5..000000000 --- a/Ride/Bleeper-76/LoRaMac/classC/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/classC/LoRaMac.rapp b/Ride/Bleeper-76/LoRaMac/classC/LoRaMac.rapp deleted file mode 100644 index fb2dc89e3..000000000 --- a/Ride/Bleeper-76/LoRaMac/classC/LoRaMac.rapp +++ /dev/null @@ -1,431 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/classC/LoRaMac.rprj b/Ride/Bleeper-76/LoRaMac/classC/LoRaMac.rprj deleted file mode 100644 index ae4a9288e..000000000 --- a/Ride/Bleeper-76/LoRaMac/classC/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/radioCoverageTest/radioCoverageTest.rapp b/Ride/Bleeper-76/LoRaMac/radioCoverageTest/radioCoverageTest.rapp deleted file mode 100644 index c857d7189..000000000 --- a/Ride/Bleeper-76/LoRaMac/radioCoverageTest/radioCoverageTest.rapp +++ /dev/null @@ -1,432 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-76/LoRaMac/radioCoverageTest/radioCoverageTest.rprj b/Ride/Bleeper-76/LoRaMac/radioCoverageTest/radioCoverageTest.rprj deleted file mode 100644 index 98a99b792..000000000 --- a/Ride/Bleeper-76/LoRaMac/radioCoverageTest/radioCoverageTest.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-76/ping-pong/Ping-Pong.rapp b/Ride/Bleeper-76/ping-pong/Ping-Pong.rapp deleted file mode 100644 index bec1f45be..000000000 --- a/Ride/Bleeper-76/ping-pong/Ping-Pong.rapp +++ /dev/null @@ -1,729 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-76/ping-pong/Ping-Pong.rprj b/Ride/Bleeper-76/ping-pong/Ping-Pong.rprj deleted file mode 100644 index be551979c..000000000 --- a/Ride/Bleeper-76/ping-pong/Ping-Pong.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-76/rx-sensi/rx-sensi.rapp b/Ride/Bleeper-76/rx-sensi/rx-sensi.rapp deleted file mode 100644 index 9b4252970..000000000 --- a/Ride/Bleeper-76/rx-sensi/rx-sensi.rapp +++ /dev/null @@ -1,729 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-76/rx-sensi/rx-sensi.rprj b/Ride/Bleeper-76/rx-sensi/rx-sensi.rprj deleted file mode 100644 index ade0dc466..000000000 --- a/Ride/Bleeper-76/rx-sensi/rx-sensi.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/Bleeper-76/tx-cw/tx-cw.rapp b/Ride/Bleeper-76/tx-cw/tx-cw.rapp deleted file mode 100644 index db1c2de90..000000000 --- a/Ride/Bleeper-76/tx-cw/tx-cw.rapp +++ /dev/null @@ -1,421 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/Bleeper-76/tx-cw/tx-cw.rprj b/Ride/Bleeper-76/tx-cw/tx-cw.rprj deleted file mode 100644 index 9d0b4b295..000000000 --- a/Ride/Bleeper-76/tx-cw/tx-cw.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/LoRaMote/Bootloader/Bootloader.rapp b/Ride/LoRaMote/Bootloader/Bootloader.rapp deleted file mode 100644 index 7e57c99c4..000000000 --- a/Ride/LoRaMote/Bootloader/Bootloader.rapp +++ /dev/null @@ -1,168 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
-
-
-
- - - - - - - - - -
-
- - - - - -
- - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/LoRaMote/Bootloader/Bootloader.rprj b/Ride/LoRaMote/Bootloader/Bootloader.rprj deleted file mode 100644 index 1c706d165..000000000 --- a/Ride/LoRaMote/Bootloader/Bootloader.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/LoRaMote/LoRaMac/classA/LoRaMac-api-v3.rapp b/Ride/LoRaMote/LoRaMac/classA/LoRaMac-api-v3.rapp deleted file mode 100644 index adf18ca80..000000000 --- a/Ride/LoRaMote/LoRaMac/classA/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,343 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/LoRaMote/LoRaMac/classA/LoRaMac-api-v3.rprj b/Ride/LoRaMote/LoRaMac/classA/LoRaMac-api-v3.rprj deleted file mode 100644 index 97f9d19d2..000000000 --- a/Ride/LoRaMote/LoRaMac/classA/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/LoRaMote/LoRaMac/classA/LoRaMac.rapp b/Ride/LoRaMote/LoRaMac/classA/LoRaMac.rapp deleted file mode 100644 index c44bdf426..000000000 --- a/Ride/LoRaMote/LoRaMac/classA/LoRaMac.rapp +++ /dev/null @@ -1,342 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/LoRaMote/LoRaMac/classA/LoRaMac.rprj b/Ride/LoRaMote/LoRaMac/classA/LoRaMac.rprj deleted file mode 100644 index 25c3f431e..000000000 --- a/Ride/LoRaMote/LoRaMac/classA/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/LoRaMote/LoRaMac/classB/LoRaMac-api-v3.rapp b/Ride/LoRaMote/LoRaMac/classB/LoRaMac-api-v3.rapp deleted file mode 100644 index bdfe02599..000000000 --- a/Ride/LoRaMote/LoRaMac/classB/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,343 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/LoRaMote/LoRaMac/classB/LoRaMac-api-v3.rprj b/Ride/LoRaMote/LoRaMac/classB/LoRaMac-api-v3.rprj deleted file mode 100644 index e6de6bdd5..000000000 --- a/Ride/LoRaMote/LoRaMac/classB/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/LoRaMote/LoRaMac/classB/LoRaMac.rapp b/Ride/LoRaMote/LoRaMac/classB/LoRaMac.rapp deleted file mode 100644 index 3d3a6b076..000000000 --- a/Ride/LoRaMote/LoRaMac/classB/LoRaMac.rapp +++ /dev/null @@ -1,342 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/LoRaMote/LoRaMac/classB/LoRaMac.rprj b/Ride/LoRaMote/LoRaMac/classB/LoRaMac.rprj deleted file mode 100644 index f3fb9002c..000000000 --- a/Ride/LoRaMote/LoRaMac/classB/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/LoRaMote/LoRaMac/classC/LoRaMac-api-v3.rapp b/Ride/LoRaMote/LoRaMac/classC/LoRaMac-api-v3.rapp deleted file mode 100644 index 7e6b9145d..000000000 --- a/Ride/LoRaMote/LoRaMac/classC/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,343 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/LoRaMote/LoRaMac/classC/LoRaMac-api-v3.rprj b/Ride/LoRaMote/LoRaMac/classC/LoRaMac-api-v3.rprj deleted file mode 100644 index d45be66fd..000000000 --- a/Ride/LoRaMote/LoRaMac/classC/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/LoRaMote/LoRaMac/classC/LoRaMac.rapp b/Ride/LoRaMote/LoRaMac/classC/LoRaMac.rapp deleted file mode 100644 index 52cb009e3..000000000 --- a/Ride/LoRaMote/LoRaMac/classC/LoRaMac.rapp +++ /dev/null @@ -1,342 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/LoRaMote/LoRaMac/classC/LoRaMac.rprj b/Ride/LoRaMote/LoRaMac/classC/LoRaMac.rprj deleted file mode 100644 index 0ffdb683c..000000000 --- a/Ride/LoRaMote/LoRaMac/classC/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/LoRaMote/ping-pong/Ping-Pong.rapp b/Ride/LoRaMote/ping-pong/Ping-Pong.rapp deleted file mode 100644 index 7ccd057d5..000000000 --- a/Ride/LoRaMote/ping-pong/Ping-Pong.rapp +++ /dev/null @@ -1,741 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/LoRaMote/ping-pong/Ping-Pong.rprj b/Ride/LoRaMote/ping-pong/Ping-Pong.rprj deleted file mode 100644 index be551979c..000000000 --- a/Ride/LoRaMote/ping-pong/Ping-Pong.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/LoRaMote/rx-sensi/rx-sensi.rapp b/Ride/LoRaMote/rx-sensi/rx-sensi.rapp deleted file mode 100644 index 9670c1a12..000000000 --- a/Ride/LoRaMote/rx-sensi/rx-sensi.rapp +++ /dev/null @@ -1,741 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/LoRaMote/rx-sensi/rx-sensi.rprj b/Ride/LoRaMote/rx-sensi/rx-sensi.rprj deleted file mode 100644 index ade0dc466..000000000 --- a/Ride/LoRaMote/rx-sensi/rx-sensi.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/LoRaMote/tx-cw/tx-cw.rapp b/Ride/LoRaMote/tx-cw/tx-cw.rapp deleted file mode 100644 index ae5f3ec06..000000000 --- a/Ride/LoRaMote/tx-cw/tx-cw.rapp +++ /dev/null @@ -1,433 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/LoRaMote/tx-cw/tx-cw.rprj b/Ride/LoRaMote/tx-cw/tx-cw.rprj deleted file mode 100644 index 9d0b4b295..000000000 --- a/Ride/LoRaMote/tx-cw/tx-cw.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SK-iM880A/LoRaMac/classA/LoRaMac-api-v3.rapp b/Ride/SK-iM880A/LoRaMac/classA/LoRaMac-api-v3.rapp deleted file mode 100644 index 7ed21d29f..000000000 --- a/Ride/SK-iM880A/LoRaMac/classA/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/SK-iM880A/LoRaMac/classA/LoRaMac-api-v3.rprj b/Ride/SK-iM880A/LoRaMac/classA/LoRaMac-api-v3.rprj deleted file mode 100644 index b54dcb95d..000000000 --- a/Ride/SK-iM880A/LoRaMac/classA/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SK-iM880A/LoRaMac/classA/LoRaMac.rapp b/Ride/SK-iM880A/LoRaMac/classA/LoRaMac.rapp deleted file mode 100644 index c19b9c67d..000000000 --- a/Ride/SK-iM880A/LoRaMac/classA/LoRaMac.rapp +++ /dev/null @@ -1,158 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/SK-iM880A/LoRaMac/classA/LoRaMac.rprj b/Ride/SK-iM880A/LoRaMac/classA/LoRaMac.rprj deleted file mode 100644 index d9e6dc4ca..000000000 --- a/Ride/SK-iM880A/LoRaMac/classA/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SK-iM880A/LoRaMac/classB/LoRaMac-api-v3.rapp b/Ride/SK-iM880A/LoRaMac/classB/LoRaMac-api-v3.rapp deleted file mode 100644 index 055fa75cb..000000000 --- a/Ride/SK-iM880A/LoRaMac/classB/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/SK-iM880A/LoRaMac/classB/LoRaMac-api-v3.rprj b/Ride/SK-iM880A/LoRaMac/classB/LoRaMac-api-v3.rprj deleted file mode 100644 index 02448f8f8..000000000 --- a/Ride/SK-iM880A/LoRaMac/classB/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SK-iM880A/LoRaMac/classB/LoRaMac.rapp b/Ride/SK-iM880A/LoRaMac/classB/LoRaMac.rapp deleted file mode 100644 index d505e6a14..000000000 --- a/Ride/SK-iM880A/LoRaMac/classB/LoRaMac.rapp +++ /dev/null @@ -1,158 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/SK-iM880A/LoRaMac/classB/LoRaMac.rprj b/Ride/SK-iM880A/LoRaMac/classB/LoRaMac.rprj deleted file mode 100644 index c12f39634..000000000 --- a/Ride/SK-iM880A/LoRaMac/classB/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SK-iM880A/LoRaMac/classC/LoRaMac-api-v3.rapp b/Ride/SK-iM880A/LoRaMac/classC/LoRaMac-api-v3.rapp deleted file mode 100644 index 48cf53e72..000000000 --- a/Ride/SK-iM880A/LoRaMac/classC/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/SK-iM880A/LoRaMac/classC/LoRaMac-api-v3.rprj b/Ride/SK-iM880A/LoRaMac/classC/LoRaMac-api-v3.rprj deleted file mode 100644 index 4649969f7..000000000 --- a/Ride/SK-iM880A/LoRaMac/classC/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SK-iM880A/LoRaMac/classC/LoRaMac.rapp b/Ride/SK-iM880A/LoRaMac/classC/LoRaMac.rapp deleted file mode 100644 index 56f3205ce..000000000 --- a/Ride/SK-iM880A/LoRaMac/classC/LoRaMac.rapp +++ /dev/null @@ -1,158 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/SK-iM880A/LoRaMac/classC/LoRaMac.rprj b/Ride/SK-iM880A/LoRaMac/classC/LoRaMac.rprj deleted file mode 100644 index 22856ada9..000000000 --- a/Ride/SK-iM880A/LoRaMac/classC/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SK-iM880A/ping-pong/Ping-Pong.rapp b/Ride/SK-iM880A/ping-pong/Ping-Pong.rapp deleted file mode 100644 index b52a5d832..000000000 --- a/Ride/SK-iM880A/ping-pong/Ping-Pong.rapp +++ /dev/null @@ -1,268 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/SK-iM880A/ping-pong/Ping-Pong.rprj b/Ride/SK-iM880A/ping-pong/Ping-Pong.rprj deleted file mode 100644 index d8b8aede8..000000000 --- a/Ride/SK-iM880A/ping-pong/Ping-Pong.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SK-iM880A/rx-sensi/rx-sensi.rapp b/Ride/SK-iM880A/rx-sensi/rx-sensi.rapp deleted file mode 100644 index d030a819d..000000000 --- a/Ride/SK-iM880A/rx-sensi/rx-sensi.rapp +++ /dev/null @@ -1,268 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/SK-iM880A/rx-sensi/rx-sensi.rprj b/Ride/SK-iM880A/rx-sensi/rx-sensi.rprj deleted file mode 100644 index c78744811..000000000 --- a/Ride/SK-iM880A/rx-sensi/rx-sensi.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SK-iM880A/tx-cw/tx-cw.rapp b/Ride/SK-iM880A/tx-cw/tx-cw.rapp deleted file mode 100644 index 558633549..000000000 --- a/Ride/SK-iM880A/tx-cw/tx-cw.rapp +++ /dev/null @@ -1,191 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/SK-iM880A/tx-cw/tx-cw.rprj b/Ride/SK-iM880A/tx-cw/tx-cw.rprj deleted file mode 100644 index 3163e8e72..000000000 --- a/Ride/SK-iM880A/tx-cw/tx-cw.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SensorNode/Bootloader/Bootloader.rapp b/Ride/SensorNode/Bootloader/Bootloader.rapp deleted file mode 100644 index b2900be10..000000000 --- a/Ride/SensorNode/Bootloader/Bootloader.rapp +++ /dev/null @@ -1,168 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
-
-
-
- - - - - - - - - -
-
- - - - - -
- - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/SensorNode/Bootloader/Bootloader.rprj b/Ride/SensorNode/Bootloader/Bootloader.rprj deleted file mode 100644 index abbc8f812..000000000 --- a/Ride/SensorNode/Bootloader/Bootloader.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SensorNode/LoRaMac/classA/LoRaMac-api-v3.rapp b/Ride/SensorNode/LoRaMac/classA/LoRaMac-api-v3.rapp deleted file mode 100644 index 8ee0c2042..000000000 --- a/Ride/SensorNode/LoRaMac/classA/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,752 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/SensorNode/LoRaMac/classA/LoRaMac-api-v3.rprj b/Ride/SensorNode/LoRaMac/classA/LoRaMac-api-v3.rprj deleted file mode 100644 index 9f141be60..000000000 --- a/Ride/SensorNode/LoRaMac/classA/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SensorNode/LoRaMac/classA/LoRaMac.rapp b/Ride/SensorNode/LoRaMac/classA/LoRaMac.rapp deleted file mode 100644 index 2474346da..000000000 --- a/Ride/SensorNode/LoRaMac/classA/LoRaMac.rapp +++ /dev/null @@ -1,574 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/SensorNode/LoRaMac/classA/LoRaMac.rprj b/Ride/SensorNode/LoRaMac/classA/LoRaMac.rprj deleted file mode 100644 index ab9ad4f82..000000000 --- a/Ride/SensorNode/LoRaMac/classA/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SensorNode/LoRaMac/classB/LoRaMac-api-v3.rapp b/Ride/SensorNode/LoRaMac/classB/LoRaMac-api-v3.rapp deleted file mode 100644 index 58d29ff26..000000000 --- a/Ride/SensorNode/LoRaMac/classB/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,752 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/SensorNode/LoRaMac/classB/LoRaMac-api-v3.rprj b/Ride/SensorNode/LoRaMac/classB/LoRaMac-api-v3.rprj deleted file mode 100644 index c18c238a3..000000000 --- a/Ride/SensorNode/LoRaMac/classB/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SensorNode/LoRaMac/classB/LoRaMac.rapp b/Ride/SensorNode/LoRaMac/classB/LoRaMac.rapp deleted file mode 100644 index aa474e9a9..000000000 --- a/Ride/SensorNode/LoRaMac/classB/LoRaMac.rapp +++ /dev/null @@ -1,574 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/SensorNode/LoRaMac/classB/LoRaMac.rprj b/Ride/SensorNode/LoRaMac/classB/LoRaMac.rprj deleted file mode 100644 index 9f98749d3..000000000 --- a/Ride/SensorNode/LoRaMac/classB/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SensorNode/LoRaMac/classC/LoRaMac-api-v3.rapp b/Ride/SensorNode/LoRaMac/classC/LoRaMac-api-v3.rapp deleted file mode 100644 index 435cfb436..000000000 --- a/Ride/SensorNode/LoRaMac/classC/LoRaMac-api-v3.rapp +++ /dev/null @@ -1,752 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/SensorNode/LoRaMac/classC/LoRaMac-api-v3.rprj b/Ride/SensorNode/LoRaMac/classC/LoRaMac-api-v3.rprj deleted file mode 100644 index 8a65f83ad..000000000 --- a/Ride/SensorNode/LoRaMac/classC/LoRaMac-api-v3.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SensorNode/LoRaMac/classC/LoRaMac.rapp b/Ride/SensorNode/LoRaMac/classC/LoRaMac.rapp deleted file mode 100644 index f2956e387..000000000 --- a/Ride/SensorNode/LoRaMac/classC/LoRaMac.rapp +++ /dev/null @@ -1,574 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - - -
-
- -
- -
-
- -
-
- -
- -
-
- -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
- - -
- -
-
- - -
-
- -
- -
-
- -
- - -
-
- - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
-
- -
-
- - - - -
-
- -
- -
-
-
-
-
\ No newline at end of file diff --git a/Ride/SensorNode/LoRaMac/classC/LoRaMac.rprj b/Ride/SensorNode/LoRaMac/classC/LoRaMac.rprj deleted file mode 100644 index 2c4536f9a..000000000 --- a/Ride/SensorNode/LoRaMac/classC/LoRaMac.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SensorNode/ping-pong/Ping-Pong.rapp b/Ride/SensorNode/ping-pong/Ping-Pong.rapp deleted file mode 100644 index 917a96de7..000000000 --- a/Ride/SensorNode/ping-pong/Ping-Pong.rapp +++ /dev/null @@ -1,1357 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/SensorNode/ping-pong/Ping-Pong.rprj b/Ride/SensorNode/ping-pong/Ping-Pong.rprj deleted file mode 100644 index aa91488db..000000000 --- a/Ride/SensorNode/ping-pong/Ping-Pong.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SensorNode/rx-sensi/rx-sensi.rapp b/Ride/SensorNode/rx-sensi/rx-sensi.rapp deleted file mode 100644 index 5d5ad280f..000000000 --- a/Ride/SensorNode/rx-sensi/rx-sensi.rapp +++ /dev/null @@ -1,1357 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/SensorNode/rx-sensi/rx-sensi.rprj b/Ride/SensorNode/rx-sensi/rx-sensi.rprj deleted file mode 100644 index 6220fd37a..000000000 --- a/Ride/SensorNode/rx-sensi/rx-sensi.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Ride/SensorNode/tx-cw/tx-cw.rapp b/Ride/SensorNode/tx-cw/tx-cw.rapp deleted file mode 100644 index 2afdad146..000000000 --- a/Ride/SensorNode/tx-cw/tx-cw.rapp +++ /dev/null @@ -1,741 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - -
- -
- -
- - -
-
- - -
- -
- -
- - -
-
- - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- - -
- - -
-
- - - -
- -
- -
- - -
- -
- -
- - - -
-
- - - - -
-
- - -
- -
- -
- - -
- -
- -
- - -
-
- - -
-
- - -
-
- - - - - -
- -
- -
- - -
- -
- -
- -
-
\ No newline at end of file diff --git a/Ride/SensorNode/tx-cw/tx-cw.rprj b/Ride/SensorNode/tx-cw/tx-cw.rprj deleted file mode 100644 index 0d2b2b101..000000000 --- a/Ride/SensorNode/tx-cw/tx-cw.rprj +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/coIDE/SK-iM880A/LoRaMac/classA/LoRaMacClassA-api-v3.coproj b/coIDE/SK-iM880A/LoRaMac/classA/LoRaMacClassA-api-v3.coproj new file mode 100644 index 000000000..26d4d9511 --- /dev/null +++ b/coIDE/SK-iM880A/LoRaMac/classA/LoRaMacClassA-api-v3.coproj @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coIDE/SK-iM880A/LoRaMac/classA/LoRaMacClassA.coproj b/coIDE/SK-iM880A/LoRaMac/classA/LoRaMacClassA.coproj new file mode 100644 index 000000000..361b958e5 --- /dev/null +++ b/coIDE/SK-iM880A/LoRaMac/classA/LoRaMacClassA.coproj @@ -0,0 +1,137 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coIDE/SK-iM880A/LoRaMac/classB/LoRaMacClassB-api-v3.coproj b/coIDE/SK-iM880A/LoRaMac/classB/LoRaMacClassB-api-v3.coproj new file mode 100644 index 000000000..989c29495 --- /dev/null +++ b/coIDE/SK-iM880A/LoRaMac/classB/LoRaMacClassB-api-v3.coproj @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coIDE/SK-iM880A/LoRaMac/classB/LoRaMacClassB.coproj b/coIDE/SK-iM880A/LoRaMac/classB/LoRaMacClassB.coproj new file mode 100644 index 000000000..813ccd64c --- /dev/null +++ b/coIDE/SK-iM880A/LoRaMac/classB/LoRaMacClassB.coproj @@ -0,0 +1,137 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coIDE/SK-iM880A/LoRaMac/classC/LoRaMacClassC-api-v3.coproj b/coIDE/SK-iM880A/LoRaMac/classC/LoRaMacClassC-api-v3.coproj new file mode 100644 index 000000000..73f6279d5 --- /dev/null +++ b/coIDE/SK-iM880A/LoRaMac/classC/LoRaMacClassC-api-v3.coproj @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coIDE/SK-iM880A/LoRaMac/classC/LoRaMacClassC.coproj b/coIDE/SK-iM880A/LoRaMac/classC/LoRaMacClassC.coproj new file mode 100644 index 000000000..cc0ebb232 --- /dev/null +++ b/coIDE/SK-iM880A/LoRaMac/classC/LoRaMacClassC.coproj @@ -0,0 +1,137 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/coIDE/SK-iM880A/ping-pong/Ping-Pong.coproj b/coIDE/SK-iM880A/ping-pong/Ping-Pong.coproj new file mode 100644 index 000000000..b1f076e3e --- /dev/null +++ b/coIDE/SK-iM880A/ping-pong/Ping-Pong.coproj @@ -0,0 +1,132 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/readme.md b/readme.md index 9ade5c331..dd5924a50 100644 --- a/readme.md +++ b/readme.md @@ -5,47 +5,43 @@ (______/|_____)_|_|_| \__)_____)\____)_| |_| (C)2013 Semtech -SX1272/76 radio drivers plus Ping-Pong firmware and LoRaWAN node firmware implementation. +LoRaWAN endpoint stack implementation and example projects. ===================================== 1. Introduction ---------------- -The aim of this project is to show examples of the LoRaWAN specification endpoint firmware -implementation. +The aim of this project is to show an example of the endpoint LoRaWAN stack implementation. -**REMARK 1:** *The Semtech/STACKFORCE implementation is a EU868/US915 band Class A and Class C endpoint -implementation fully compatible with LoRaWAN 1.0 specification.* +This LoRaWAN stack is an EU868 and US915 bands Class A and Class C endpoint implementation +fully compatible with LoRaWAN 1.0 specification. +Each LoRaWAN application example includes the LoRaWAN certification protocol implementation. -**REMARK 2:** *Version 4.0 is the first version release maintained by STACKFORCE and Semtech. -This new version includes big changes on the LoRaMac API. The API documentation -can be found at : http://stackforce.github.io/LoRaMac-doc/ * +SX1272/76 radio drivers are also provided. +In case only point to point links are required a Ping-Pong application is provided as example. -*Please note that a version 3.x API to version 4.x API wrapper is available. -Thus, applications built using version 3.x API should work without modifications except that -one must include LoRaMac-api-v3.h instead of LoRaMac.h file* +*The LoRaWAN stack API documentation can be found at: http://stackforce.github.io/LoRaMac-doc/* + +**Note 1:** -**Now on the EUIs are to be entered as big endian byte arrays. The MAC layer will reverse the array when necessary. -Valid for 3.x and 4.x API** +*A version 3.x API to version 4.x API wrapper is available. +Applications built using version 3.x API should work without modifications except that +one must include LoRaMac-api-v3.h instead of LoRaMac.h file* -**REMARK 3:** *Each LoRaWAN application examples now include the LoRaWAN certification protocol implmentation.* +**Note 2:** -**REMARK 4:** *In order to ease the release process the Bleeper-72, Bleeper-76 and SK-iM880A platforms -will be removed in future releases, unless there are objections.* +*A port of this project can be found on [MBED Semtech Team page](http://developer.mbed.org/teams/Semtech/)* -**Note:** +*The example projects are:* -*The IBM 'LoRaWAN in C' implementation supports the Class A profile and partial -Class B support (beacon synchronization).* +1. [LoRaWAN-demo-72](http://developer.mbed.org/teams/Semtech/code/LoRaWAN-demo-72/) +2. [LoRaWAN-demo-76](http://developer.mbed.org/teams/Semtech/code/LoRaWAN-demo-76/) -*A port of the IBM 'LoRaWAN in C' can be found on [MBED Semtech Team page](http://developer.mbed.org/teams/Semtech/) -project [LoRaWAN-lmic-app](http://developer.mbed.org/teams/Semtech/code/LoRaWAN-lmic-app/)* 2. System schematic and definitions ------------------------------------ -The available supported hardware platforms schematics and LoRaMac specification -can be found in the Doc directory. +The available supported hardware platforms schematics can be found in the Doc directory. -3. Acknowledgements +3. Acknowledgments ------------------- The mbed (https://mbed.org/) project was used at the beginning as source of inspiration. @@ -62,36 +58,6 @@ Lander Casado, Philippas Tsigas. This program depends on specific hardware platforms. Currently the supported platforms are: - - Bleeper-72 - MCU : STM32L151RD - 384K FLASH, 48K RAM, Timers, SPI, I2C, - USART, - USB 2.0 full-speed device/host/OTG controller, - DAC, ADC, DMA - RADIO : SX1272 - ANTENNA : Connector for external antenna - BUTTONS : 1 Reset, 16 position encoder - LEDS : 3 - SENSORS : Temperature - GPS : Possible through pin header GPS module connection - SDCARD : Yes - EXTENSION HEADER : Yes, 12 pins - REMARK : None. - - - Bleeper-76 - MCU : STM32L151RD - 384K FLASH, 48K RAM, Timers, SPI, I2C, - USART, - USB 2.0 full-speed device/host/OTG controller, - DAC, ADC, DMA - RADIO : SX1276 - ANTENNA : Connector for external antennas (LF+HF) - BUTTONS : 1 Reset, 16 position encoder - LEDS : 3 - SENSORS : Temperature - GPS : Possible through pin header GPS module connection - SDCARD : No - EXTENSION HEADER : Yes, 12 pins - REMARK : None. - - LoRaMote MCU : STM32L151CB - 128K FLASH, 10K RAM, Timers, SPI, I2C, USART, @@ -141,7 +107,7 @@ platforms are: 5. Usage --------- -Projects for CooCox-CoIDE (partial), Ride7 and Keil Integrated Development Environments are available. +Projects for CooCox-CoIDE and Keil Integrated Development Environments are available. One project is available per application and for each hardware platform in each development environment. Different targets/configurations have been created in @@ -150,11 +116,39 @@ not of a bootloader and the radio frequency band to be used. 6. Changelog ------------- +2015-03-10, V4.1 +* General + 1. This version has passed all mandatory LoRa-Alliance compliance tests. + + *One of the optional tests is unsuccessful (FSK downlinks PER on Rx1 and Rx2 windows) and is currently under investigation.* + 2. Removed support for Raisonance Ride7 IDE (Reduces the amount of work to be done at each new release) + 3. Removed the Bleeper-72 and Bleeper-76 platforms support as these are now deprecated. + 4. Application state machine. Relocate setting sleep state and update the duty cycle in compliance test mode. + 5. Bug fix in TimerIrqHandler. Now, it is possible to insert timers in callback. + 6. Changed TimerHwDelayMs function to be re-entrant. + 7. Corrected FSK modem packets bigger than 64 bytes handling (Issue #36) + +* LoRaWAN + 1. Rename attribute nbRetries to NbTrials in structure McpsReqConfirmed_t. (Issue #37) + 2. Updated implementation of SetNextChannel. Added enabling default channels in case of join request. (Issue #39) + 3. Add missing documentation about MIB_REPEATER_SUPPORT. (Issue #42). + 4. Add a new LoRaMacState to allow adding channels during TX procedure. (Issue #43) + 5. Relocate the activation of LoRaMacFlags.Bits.McpsInd in OnRadioRxDone. + 6. Add a new function PrepareRxDoneAbort to prepare a break-out of OnRadioRxDone in case of an error + 7. Activate default channels in case all others are disabled. (Issue #39) + 8. Bug fix in setting the default channel in case none is enabled. + 9. SRV_MAC_NEW_CHANNEL_REQ MAC command added a fix to the macIndex variable on US915 band. + 10. Start the MacStateCheckTimer in OnRxDone and related error cases with a short interval to handle events promptly. (Issue #44) + 11. Reset status of NodeAckRequested if we received an ACK or in case of timeout. + 12. Removed additional EU868 channels from the LoRaWAN implementation files. GitHub (Issue #49) + The creation of these additional channels has been moved to the application example. + 13. Improved and corrected AdrNextDr function. + 2015-12-18, V4.0 * General 1. STACKFORCE new API integration 2. Reverse the EUIs arrays in the MAC layer. - 3. LoRaWAN certification protocol implmentation + 3. LoRaWAN certification protocol implementation 4. All reported issues and Pull requests have been addressed. 2015-10-06, V3.4.1 @@ -252,7 +246,7 @@ not of a bootloader and the radio frequency band to be used. * Added a new parameter to LoRaMacEventFlags structure that indicates on which Rx window the data has been received. * Added a new parameter to LoRaMacEventFlags structure that indicates if there is applicative data on the received payload. - * Corrected ADR MAC command behaviour + * Corrected ADR MAC command behavior * DutyCycle enforcement implementation (EU868 PHY only) **REMARK 1** *The regulatory duty cycle enforcement is enabled by default @@ -262,7 +256,7 @@ not of a bootloader and the radio frequency band to be used. *Toff = TimeOnAir / DutyCycle - TxTimeOnAir* - *Eaxample:* + *Example:* *A device just transmitted a 0.5 s long frame on one default channel. This channel is in a sub-band allowing 1% duty-cycle. Therefore this whole sub-band (868 MHz - 868.6 MHz) will be unavailable for 49.5 s.* @@ -313,7 +307,7 @@ not of a bootloader and the radio frequency band to be used. 5. Corrected the LoRaMacSetNextChannel function. 6. Corrected the port 0 MAC command decoding. 7. Changed all structures declarations to be packed. - 8. Corrected the Acknowledgement retries management when only 1 trial is needed. + 8. Corrected the Acknowledgment retries management when only 1 trial is needed. Before the device was issuing at least 2 trials. 9. Corrected server mac new channel req answer. 10. Added the functions to read the Up and Down Link sequence counters. @@ -363,7 +357,7 @@ not of a bootloader and the radio frequency band to be used. Possible by issuing DutyCycleReq MAC command. * Duty cycle management enforcement **NO** - * Acknowledgements retries **YES** + * Acknowledgments retries **YES** * Unconfirmed messages retries **YES** 2014-07-10, v2.3.RC2 @@ -402,7 +396,7 @@ not of a bootloader and the radio frequency band to be used. MSB nibble = SELECTOR (barometric) LSB bit = LED 9. Redefined rand() and srand() standard C functions. These functions are - redefined in order to get the same behaviour across different compiler + redefined in order to get the same behavior across different compiler tool chains implementations. 10. GPS driver improvements. Made independent of the board platform. 11. Simplified the RTC management. @@ -437,7 +431,7 @@ not of a bootloader and the radio frequency band to be used. Possible by issuing DutyCycleReq MAC command. * Duty cycle management enforcement **NO** - * Acknowledgements retries **WORK IN PROGRESS** + * Acknowledgments retries **WORK IN PROGRESS** Not fully debugged. Disabled by default. * Unconfirmed messages retries **WORK IN PROGRESS** (LoRaMac specification R2.2.1) @@ -495,12 +489,12 @@ not of a bootloader and the radio frequency band to be used. * DevStatusAns **YES** * JoinReq **YES** * JoinAccept **YES** - 2. Added acknowledgements retries management. + 2. Added acknowledgments retries management. Split the LoRaMacSendOnChannel function in LoRaMacPrepareFrame and LoRaMacSendFrameOnChannel. LoRaMacSendOnChannel now calls the 2 newly defined functions. - **WARNING**: By default the acknowledgement retries specific code isn't + **WARNING**: By default the acknowledgment retries specific code isn't enabled. The current http://iot.semtech.com server version doesn't support it. diff --git a/src/apps/LoRaMac/classA/Bleeper-72/Comissioning.h b/src/apps/LoRaMac/classA/Bleeper-72/Comissioning.h deleted file mode 100644 index f663ac2f8..000000000 --- a/src/apps/LoRaMac/classA/Bleeper-72/Comissioning.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2015 Semtech - -Description: End device comissioning parameters - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __LORA_COMISSIONING_H__ -#define __LORA_COMISSIONING_H__ - -/*! - * When set to 1 the application uses the Over-the-Air activation procedure - * When set to 0 the application uses the Personalization activation procedure - */ -#define OVER_THE_AIR_ACTIVATION 0 - -/*! - * Indicates if the end-device is to be connected to a private or public network - */ -#define LORAWAN_PUBLIC_NETWORK true - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Mote device IEEE EUI (big endian) - * - * \remark In this application the value is automatically generated by calling - * BoardGetUniqueId function - */ -#define LORAWAN_DEVICE_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * Application IEEE EUI (big endian) - */ -#define LORAWAN_APPLICATION_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * AES encryption/decryption cipher application key - */ -#define LORAWAN_APPLICATION_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#else - -/*! - * Current network ID - */ -#define LORAWAN_NETWORK_ID ( uint32_t )0 - -/*! - * Device address on the network (big endian) - * - * \remark In this application the value is automatically generated using - * a pseudo random generator seeded with a value derived from - * BoardUniqueId value - */ -#define LORAWAN_DEVICE_ADDRESS ( uint32_t )0x00000000 - -/*! - * AES encryption/decryption cipher network session key - */ -#define LORAWAN_NWKSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -/*! - * AES encryption/decryption cipher application session key - */ -#define LORAWAN_APPSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#endif - -#endif // __LORA_COMISSIONING_H__ diff --git a/src/apps/LoRaMac/classA/Bleeper-72/main-api-v3.c b/src/apps/LoRaMac/classA/Bleeper-72/main-api-v3.c deleted file mode 100644 index ab5e7e2b6..000000000 --- a/src/apps/LoRaMac/classA/Bleeper-72/main-api-v3.c +++ /dev/null @@ -1,572 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRaMac classA device implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include -#include "board.h" - -#include "LoRaMac-api-v3.h" -#include "Comissioning.h" - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptative Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -#if defined( USE_BAND_868 ) - -/*! - * LoRaWAN ETSI duty cycle control enable/disable - * - * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes - */ -#define LORAWAN_DUTYCYCLE_ON true - -#endif - -/*! - * LoRaWAN application port - */ -#define LORAWAN_APP_PORT 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 8 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Indicates if the MAC layer has already joined a network. - */ -static bool IsNetworkJoined = false; - -/*! - * Application port - */ -static uint8_t AppPort = LORAWAN_APP_PORT; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Indicates if the node is sending confirmed or unconfirmed messages - */ -static uint8_t IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - -/*! - * Defines the application data transmission duty cycle - */ -static uint32_t TxDutyCycleTime; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Defines the join request timer - */ -static TimerEvent_t JoinReqTimer; - -#endif - -/*! - * Indicates if a new packet can be sent - */ -static bool TxNextPacket = true; -static bool ScheduleNextTx = false; -static bool DownlinkStatusUpdate = false; - -static LoRaMacCallbacks_t LoRaMacCallbacks; - -static TimerEvent_t Led1Timer; -volatile bool Led1StateChanged = false; - -static TimerEvent_t Led2Timer; -volatile bool Led2StateChanged = false; - -static bool AppLedStateOn = false; -volatile bool Led3StateChanged = false; - -/*! - * LoRaWAN compliance tests support data - */ -struct ComplianceTest_s -{ - bool Running; - uint8_t State; - bool IsTxConfirmed; - uint8_t AppPort; - uint8_t AppDataSize; - uint8_t *AppDataBuffer; - uint16_t DownLinkCounter; - bool LinkCheck; - uint8_t DemodMargin; - uint8_t NbGateways; -}ComplianceTest; - -/*! - * Prepares the frame buffer to be sent - */ -static void PrepareTxFrame( uint8_t port ) -{ - switch( port ) - { - case 1: - { - uint16_t pressure = 0; - int16_t altitudeBar = 0; - int16_t temperature = 0; - uint8_t batteryLevel = 0; - - pressure = ( uint16_t )( MPL3115ReadPressure( ) / 10 ); // in hPa / 10 - temperature = ( int16_t )( MPL3115ReadTemperature( ) * 100 ); // in °C * 100 - altitudeBar = ( int16_t )( MPL3115ReadAltitude( ) * 10 ); // in m * 10 - batteryLevel = BoardGetBatteryLevel( ); // 1 (very low) to 254 (fully charged) - - AppData[0] = ( SelectorGetValue( ) << 4 ) | AppLedStateOn; - AppData[1] = ( pressure >> 8 ) & 0xFF; - AppData[2] = pressure & 0xFF; - AppData[3] = ( temperature >> 8 ) & 0xFF; - AppData[4] = temperature & 0xFF; - AppData[5] = ( altitudeBar >> 8 ) & 0xFF; - AppData[6] = altitudeBar & 0xFF; - AppData[7] = batteryLevel; - } - break; - case 224: - if( ComplianceTest.LinkCheck == true ) - { - ComplianceTest.LinkCheck = false; - AppDataSize = 3; - AppData[0] = 5; - AppData[1] = ComplianceTest.DemodMargin; - AppData[2] = ComplianceTest.NbGateways; - ComplianceTest.State = 1; - } - else - { - switch( ComplianceTest.State ) - { - case 4: - ComplianceTest.State = 1; - break; - case 1: - AppDataSize = 2; - AppData[0] = ComplianceTest.DownLinkCounter >> 8; - AppData[1] = ComplianceTest.DownLinkCounter; - break; - } - } - break; - default: - break; - } -} - -static void ProcessRxFrame( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - switch( info->RxPort ) // Check Rx port number - { - case 1: // The application LED can be controlled on port 1 or 2 - case 2: - if( info->RxBufferSize == 1 ) - { - AppLedStateOn = info->RxBuffer[0] & 0x01; - Led3StateChanged = true; - } - break; - case 224: - if( ComplianceTest.Running == false ) - { - // Check compliance test enable command (i) - if( ( info->RxBufferSize == 4 ) && - ( info->RxBuffer[0] == 0x01 ) && - ( info->RxBuffer[1] == 0x01 ) && - ( info->RxBuffer[2] == 0x01 ) && - ( info->RxBuffer[3] == 0x01 ) ) - { - IsTxConfirmed = false; - AppPort = 224; - AppDataSize = 2; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.LinkCheck = false; - ComplianceTest.DemodMargin = 0; - ComplianceTest.NbGateways = 0; - ComplianceTest.Running = true; - ComplianceTest.State = 1; - - LoRaMacSetAdrOn( true ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( false ); -#endif - } - } - else - { - ComplianceTest.State = info->RxBuffer[0]; - switch( ComplianceTest.State ) - { - case 0: // Check compliance test disable command (ii) - IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - AppPort = LORAWAN_APP_PORT; - AppDataSize = LORAWAN_APP_DATA_SIZE; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.Running = false; - LoRaMacSetAdrOn( LORAWAN_ADR_ON ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - break; - case 1: // (iii, iv) - AppDataSize = 2; - break; - case 2: // Enable confirmed messages (v) - IsTxConfirmed = true; - ComplianceTest.State = 1; - break; - case 3: // Disable confirmed messages (vi) - IsTxConfirmed = false; - ComplianceTest.State = 1; - break; - case 4: // (vii) - AppDataSize = info->RxBufferSize; - - AppData[0] = 4; - for( uint8_t i = 1; i < AppDataSize; i++ ) - { - AppData[i] = info->RxBuffer[i] + 1; - } - break; - case 5: // (viii) - LoRaMacLinkCheckReq( ); - break; - default: - break; - } - } - break; - default: - break; - } -} - -static bool SendFrame( void ) -{ - uint8_t sendFrameStatus = 0; - - if( IsTxConfirmed == false ) - { - sendFrameStatus = LoRaMacSendFrame( AppPort, AppData, AppDataSize ); - } - else - { - sendFrameStatus = LoRaMacSendConfirmedFrame( AppPort, AppData, AppDataSize, 8 ); - } - - switch( sendFrameStatus ) - { - case 3: // LENGTH_ERROR - // Send empty frame in order to flush MAC commands - LoRaMacSendFrame( 0, NULL, 0 ); - return false; - case 5: // NO_FREE_CHANNEL - // Try again later - return true; - default: - return false; - } -} - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * \brief Function executed on JoinReq Timeout event - */ -static void OnJoinReqTimerEvent( void ) -{ - TimerStop( &JoinReqTimer ); - TxNextPacket = true; -} - -#endif - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - TimerStop( &TxNextPacketTimer ); - TxNextPacket = true; -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - Led1StateChanged = true; -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - Led2StateChanged = true; -} - -/*! - * \brief Function to be executed on MAC layer event - */ -static void OnMacEvent( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - if( flags->Bits.JoinAccept == 1 ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - TimerStop( &JoinReqTimer ); -#endif - IsNetworkJoined = true; - } - else - { - if( flags->Bits.Tx == 1 ) - { - } - - if( flags->Bits.Rx == 1 ) - { - if( ComplianceTest.Running == true ) - { - ComplianceTest.DownLinkCounter++; - if( flags->Bits.LinkCheck == 1 ) - { - ComplianceTest.LinkCheck = true; - ComplianceTest.DemodMargin = info->DemodMargin; - ComplianceTest.NbGateways = info->NbGateways; - } - } - if( flags->Bits.RxData == true ) - { - ProcessRxFrame( flags, info ); - } - - DownlinkStatusUpdate = true; - TimerStart( &Led2Timer ); - } - } - // Schedule a new transmission - ScheduleNextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ -#if( OVER_THE_AIR_ACTIVATION != 0 ) - uint8_t sendFrameStatus = 0; -#endif - bool trySendingFrameAgain = false; - - BoardInitMcu( ); - BoardInitPeriph( ); - - LoRaMacCallbacks.MacEvent = OnMacEvent; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInit( &LoRaMacCallbacks ); - - IsNetworkJoined = false; - -#if( OVER_THE_AIR_ACTIVATION == 0 ) - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - // Choose a random device address based on Board unique ID - // NwkAddr rand [0, 33554431] - DevAddr = randr( 0, 0x01FFFFFF ); - - LoRaMacInitNwkIds( LORAWAN_NETWORK_ID, DevAddr, NwkSKey, AppSKey ); - IsNetworkJoined = true; -#else - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - // Sends a JoinReq Command every OVER_THE_AIR_ACTIVATION_DUTYCYCLE - // seconds until the network is joined - TimerInit( &JoinReqTimer, OnJoinReqTimerEvent ); - TimerSetValue( &JoinReqTimer, OVER_THE_AIR_ACTIVATION_DUTYCYCLE ); -#endif - - TxNextPacket = true; - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - LoRaMacSetAdrOn( LORAWAN_ADR_ON ); - LoRaMacSetPublicNetwork( LORAWAN_PUBLIC_NETWORK ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - - while( 1 ) - { - while( IsNetworkJoined == false ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - if( TxNextPacket == true ) - { - TxNextPacket = false; - - sendFrameStatus = LoRaMacJoinReq( DevEui, AppEui, AppKey ); - switch( sendFrameStatus ) - { - case 1: // BUSY - break; - case 0: // OK - case 2: // NO_NETWORK_JOINED - case 3: // LENGTH_PORT_ERROR - case 4: // MAC_CMD_ERROR - case 6: // DEVICE_OFF - default: - // Relaunch timer for next trial - TimerStart( &JoinReqTimer ); - break; - } - } - TimerLowPowerHandler( ); -#endif - } - - if( Led1StateChanged == true ) - { - Led1StateChanged = false; - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); - } - if( Led2StateChanged == true ) - { - Led2StateChanged = false; - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); - } - if( Led3StateChanged == true ) - { - Led3StateChanged = false; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - if( DownlinkStatusUpdate == true ) - { - DownlinkStatusUpdate = false; - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - } - - if( ScheduleNextTx == true ) - { - ScheduleNextTx = false; - - if( ComplianceTest.Running == true ) - { - TxNextPacket = true; - } - else - { - // Schedule next packet transmission - TxDutyCycleTime = APP_TX_DUTYCYCLE + randr( -APP_TX_DUTYCYCLE_RND, APP_TX_DUTYCYCLE_RND ); - TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); - TimerStart( &TxNextPacketTimer ); - } - } - - if( trySendingFrameAgain == true ) - { - trySendingFrameAgain = SendFrame( ); - } - if( TxNextPacket == true ) - { - TxNextPacket = false; - - PrepareTxFrame( AppPort ); - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - - trySendingFrameAgain = SendFrame( ); - } - - TimerLowPowerHandler( ); - } -} diff --git a/src/apps/LoRaMac/classA/Bleeper-72/main.c b/src/apps/LoRaMac/classA/Bleeper-72/main.c deleted file mode 100644 index df91a324d..000000000 --- a/src/apps/LoRaMac/classA/Bleeper-72/main.c +++ /dev/null @@ -1,704 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRaMac classA device implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ - -#include -#include -#include "board.h" - -#include "LoRaMac.h" -#include "Comissioning.h" - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptive Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -#if defined( USE_BAND_868 ) - -#include "LoRaMacTest.h" - -/*! - * LoRaWAN ETSI duty cycle control enable/disable - * - * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes - */ -#define LORAWAN_DUTYCYCLE_ON true - -#endif - -/*! - * LoRaWAN application port - */ -#define LORAWAN_APP_PORT 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 8 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Application port - */ -static uint8_t AppPort = LORAWAN_APP_PORT; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Indicates if the node is sending confirmed or unconfirmed messages - */ -static uint8_t IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - -/*! - * Defines the application data transmission duty cycle - */ -static uint32_t TxDutyCycleTime; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -/*! - * Specifies the state of the application LED - */ -static bool AppLedStateOn = false; - -/*! - * Timer to handle the state of LED1 - */ -static TimerEvent_t Led1Timer; - -/*! - * Timer to handle the state of LED2 - */ -static TimerEvent_t Led2Timer; - -/*! - * Indicates if a new packet can be sent - */ -static bool NextTx = true; - -/*! - * Device states - */ -static enum eDevicState -{ - DEVICE_STATE_INIT, - DEVICE_STATE_JOIN, - DEVICE_STATE_SEND, - DEVICE_STATE_CYCLE, - DEVICE_STATE_SLEEP -}DeviceState; - -/*! - * LoRaWAN compliance tests support data - */ -struct ComplianceTest_s -{ - bool Running; - uint8_t State; - bool IsTxConfirmed; - uint8_t AppPort; - uint8_t AppDataSize; - uint8_t *AppDataBuffer; - uint16_t DownLinkCounter; - bool LinkCheck; - uint8_t DemodMargin; - uint8_t NbGateways; -}ComplianceTest; - -/*! - * \brief Prepares the payload of the frame - */ -static void PrepareTxFrame( uint8_t port ) -{ - switch( port ) - { - case 1: - { - uint16_t pressure = 0; - int16_t altitudeBar = 0; - int16_t temperature = 0; - uint8_t batteryLevel = 0; - - pressure = ( uint16_t )( MPL3115ReadPressure( ) / 10 ); // in hPa / 10 - temperature = ( int16_t )( MPL3115ReadTemperature( ) * 100 ); // in °C * 100 - altitudeBar = ( int16_t )( MPL3115ReadAltitude( ) * 10 ); // in m * 10 - batteryLevel = BoardGetBatteryLevel( ); // 1 (very low) to 254 (fully charged) - - AppData[0] = ( SelectorGetValue( ) << 4 ) | AppLedStateOn; - AppData[1] = ( pressure >> 8 ) & 0xFF; - AppData[2] = pressure & 0xFF; - AppData[3] = ( temperature >> 8 ) & 0xFF; - AppData[4] = temperature & 0xFF; - AppData[5] = ( altitudeBar >> 8 ) & 0xFF; - AppData[6] = altitudeBar & 0xFF; - AppData[7] = batteryLevel; - } - break; - case 224: - if( ComplianceTest.LinkCheck == true ) - { - ComplianceTest.LinkCheck = false; - AppDataSize = 3; - AppData[0] = 5; - AppData[1] = ComplianceTest.DemodMargin; - AppData[2] = ComplianceTest.NbGateways; - ComplianceTest.State = 1; - } - else - { - switch( ComplianceTest.State ) - { - case 4: - ComplianceTest.State = 1; - break; - case 1: - AppDataSize = 2; - AppData[0] = ComplianceTest.DownLinkCounter >> 8; - AppData[1] = ComplianceTest.DownLinkCounter; - break; - } - } - break; - default: - break; - } -} - -/*! - * \brief Prepares the payload of the frame - * - * \retval [0: frame could be send, 1: error] - */ -static bool SendFrame( void ) -{ - McpsReq_t mcpsReq; - LoRaMacTxInfo_t txInfo; - - if( LoRaMacQueryTxPossible( AppDataSize, &txInfo ) != LORAMAC_STATUS_OK ) - { - // Send empty frame in order to flush MAC commands - mcpsReq.Type = MCPS_UNCONFIRMED; - mcpsReq.Req.Unconfirmed.fBuffer = NULL; - mcpsReq.Req.Unconfirmed.fBufferSize = 0; - mcpsReq.Req.Unconfirmed.Datarate = DR_0; - } - else - { - if( IsTxConfirmed == false ) - { - mcpsReq.Type = MCPS_UNCONFIRMED; - mcpsReq.Req.Unconfirmed.fPort = AppPort; - mcpsReq.Req.Unconfirmed.fBuffer = AppData; - mcpsReq.Req.Unconfirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Unconfirmed.Datarate = DR_0; - } - else - { - mcpsReq.Type = MCPS_CONFIRMED; - mcpsReq.Req.Confirmed.fPort = AppPort; - mcpsReq.Req.Confirmed.fBuffer = AppData; - mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; - mcpsReq.Req.Confirmed.Datarate = DR_0; - } - } - - if( LoRaMacMcpsRequest( &mcpsReq ) == LORAMAC_STATUS_OK ) - { - return false; - } - return true; -} - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - MibRequestConfirm_t mibReq; - LoRaMacStatus_t status; - - TimerStop( &TxNextPacketTimer ); - - mibReq.Type = MIB_NETWORK_JOINED; - status = LoRaMacMibGetRequestConfirm( &mibReq ); - - if( status == LORAMAC_STATUS_OK ) - { - if( mibReq.Param.IsNetworkJoined == true ) - { - DeviceState = DEVICE_STATE_SEND; - NextTx = true; - } - else - { - DeviceState = DEVICE_STATE_JOIN; - } - } -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); -} - -/*! - * \brief MCPS-Confirm event function - * - * \param [IN] McpsConfirm - Pointer to the confirm structure, - * containing confirm attributes. - */ -static void McpsConfirm( McpsConfirm_t *McpsConfirm ) -{ - if( McpsConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK ) - { - switch( McpsConfirm->McpsRequest ) - { - case MCPS_UNCONFIRMED: - { - // Check Datarate - // Check TxPower - break; - } - case MCPS_CONFIRMED: - { - // Check Datarate - // Check TxPower - // Check AckReceived - // Check NbRetries - break; - } - case MCPS_PROPRIETARY: - { - break; - } - default: - break; - } - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - } - NextTx = true; -} - -/*! - * \brief MCPS-Indication event function - * - * \param [IN] McpsIndication - Pointer to the indication structure, - * containing indication attributes. - */ -static void McpsIndication( McpsIndication_t *McpsIndication ) -{ - if( McpsIndication->Status != LORAMAC_EVENT_INFO_STATUS_OK ) - { - return; - } - - switch( McpsIndication->McpsIndication ) - { - case MCPS_UNCONFIRMED: - { - break; - } - case MCPS_CONFIRMED: - { - break; - } - case MCPS_PROPRIETARY: - { - break; - } - case MCPS_MULTICAST: - { - break; - } - default: - break; - } - - // Check Multicast - // Check Port - // Check Datarate - // Check FramePending - // Check Buffer - // Check BufferSize - // Check Rssi - // Check Snr - // Check RxSlot - - if( ComplianceTest.Running == true ) - { - ComplianceTest.DownLinkCounter++; - } - - if( McpsIndication->RxData == true ) - { - switch( McpsIndication->Port ) - { - case 1: // The application LED can be controlled on port 1 or 2 - case 2: - if( McpsIndication->BufferSize == 1 ) - { - AppLedStateOn = McpsIndication->Buffer[0] & 0x01; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - break; - case 224: - if( ComplianceTest.Running == false ) - { - // Check compliance test enable command (i) - if( ( McpsIndication->BufferSize == 4 ) && - ( McpsIndication->Buffer[0] == 0x01 ) && - ( McpsIndication->Buffer[1] == 0x01 ) && - ( McpsIndication->Buffer[2] == 0x01 ) && - ( McpsIndication->Buffer[3] == 0x01 ) ) - { - IsTxConfirmed = false; - AppPort = 224; - AppDataSize = 2; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.LinkCheck = false; - ComplianceTest.DemodMargin = 0; - ComplianceTest.NbGateways = 0; - ComplianceTest.Running = true; - ComplianceTest.State = 1; - - MibRequestConfirm_t mibReq; - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = true; - LoRaMacMibSetRequestConfirm( &mibReq ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( false ); -#endif - } - } - else - { - ComplianceTest.State = McpsIndication->Buffer[0]; - switch( ComplianceTest.State ) - { - case 0: // Check compliance test disable command (ii) - IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - AppPort = LORAWAN_APP_PORT; - AppDataSize = LORAWAN_APP_DATA_SIZE; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.Running = false; - - MibRequestConfirm_t mibReq; - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = LORAWAN_ADR_ON; - LoRaMacMibSetRequestConfirm( &mibReq ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - break; - case 1: // (iii, iv) - AppDataSize = 2; - break; - case 2: // Enable confirmed messages (v) - IsTxConfirmed = true; - ComplianceTest.State = 1; - break; - case 3: // Disable confirmed messages (vi) - IsTxConfirmed = false; - ComplianceTest.State = 1; - break; - case 4: // (vii) - AppDataSize = McpsIndication->BufferSize; - - AppData[0] = 4; - for( uint8_t i = 1; i < AppDataSize; i++ ) - { - AppData[i] = McpsIndication->Buffer[i] + 1; - } - break; - case 5: // (viii) - { - MlmeReq_t mlmeReq; - mlmeReq.Type = MLME_LINK_CHECK; - LoRaMacMlmeRequest( &mlmeReq ); - } - break; - default: - break; - } - } - break; - default: - break; - } - } - - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - TimerStart( &Led2Timer ); -} - -/*! - * \brief MLME-Confirm event function - * - * \param [IN] MlmeConfirm - Pointer to the confirm structure, - * containing confirm attributes. - */ -static void MlmeConfirm( MlmeConfirm_t *MlmeConfirm ) -{ - if( MlmeConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK ) - { - switch( MlmeConfirm->MlmeRequest ) - { - case MLME_JOIN: - { - // Status is OK, node has joined the network - break; - } - case MLME_LINK_CHECK: - { - // Check DemodMargin - // Check NbGateways - if( ComplianceTest.Running == true ) - { - ComplianceTest.LinkCheck = true; - ComplianceTest.DemodMargin = MlmeConfirm->DemodMargin; - ComplianceTest.NbGateways = MlmeConfirm->NbGateways; - } - break; - } - default: - break; - } - } - NextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ - LoRaMacPrimitives_t LoRaMacPrimitives; - LoRaMacCallback_t LoRaMacCallbacks; - MibRequestConfirm_t mibReq; - - BoardInitMcu( ); - BoardInitPeriph( ); - - DeviceState = DEVICE_STATE_INIT; - - while( 1 ) - { - switch( DeviceState ) - { - case DEVICE_STATE_INIT: - { - LoRaMacPrimitives.MacMcpsConfirm = McpsConfirm; - LoRaMacPrimitives.MacMcpsIndication = McpsIndication; - LoRaMacPrimitives.MacMlmeConfirm = MlmeConfirm; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks ); - - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = LORAWAN_ADR_ON; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_PUBLIC_NETWORK; - mibReq.Param.EnablePublicNetwork = LORAWAN_PUBLIC_NETWORK; - LoRaMacMibSetRequestConfirm( &mibReq ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - DeviceState = DEVICE_STATE_JOIN; - break; - } - case DEVICE_STATE_JOIN: - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - MlmeReq_t mlmeReq; - - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - mlmeReq.Type = MLME_JOIN; - - mlmeReq.Req.Join.DevEui = DevEui; - mlmeReq.Req.Join.AppEui = AppEui; - mlmeReq.Req.Join.AppKey = AppKey; - - if( NextTx == true ) - { - LoRaMacMlmeRequest( &mlmeReq ); - } - - // Schedule next packet transmission - TxDutyCycleTime = OVER_THE_AIR_ACTIVATION_DUTYCYCLE; - DeviceState = DEVICE_STATE_CYCLE; - -#else - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - - // Choose a random device address - DevAddr = randr( 0, 0x01FFFFFF ); - - mibReq.Type = MIB_NET_ID; - mibReq.Param.NetID = LORAWAN_NETWORK_ID; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_DEV_ADDR; - mibReq.Param.DevAddr = DevAddr; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_NWK_SKEY; - mibReq.Param.NwkSKey = NwkSKey; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_APP_SKEY; - mibReq.Param.AppSKey = AppSKey; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_NETWORK_JOINED; - mibReq.Param.IsNetworkJoined = true; - LoRaMacMibSetRequestConfirm( &mibReq ); - - DeviceState = DEVICE_STATE_SEND; -#endif - break; - } - case DEVICE_STATE_SEND: - { - if( NextTx == true ) - { - PrepareTxFrame( AppPort ); - - NextTx = SendFrame( ); - } - if( ComplianceTest.Running == true ) - { - // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms - } - else - { - // Schedule next packet transmission - TxDutyCycleTime = APP_TX_DUTYCYCLE + randr( -APP_TX_DUTYCYCLE_RND, APP_TX_DUTYCYCLE_RND ); - } - DeviceState = DEVICE_STATE_CYCLE; - break; - } - case DEVICE_STATE_CYCLE: - { - // Schedule next packet transmission - TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); - TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; - break; - } - case DEVICE_STATE_SLEEP: - { - // Wake up through events - TimerLowPowerHandler( ); - break; - } - default: - { - DeviceState = DEVICE_STATE_INIT; - break; - } - } - } -} diff --git a/src/apps/LoRaMac/classA/Bleeper-76/Comissioning.h b/src/apps/LoRaMac/classA/Bleeper-76/Comissioning.h deleted file mode 100644 index f663ac2f8..000000000 --- a/src/apps/LoRaMac/classA/Bleeper-76/Comissioning.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2015 Semtech - -Description: End device comissioning parameters - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __LORA_COMISSIONING_H__ -#define __LORA_COMISSIONING_H__ - -/*! - * When set to 1 the application uses the Over-the-Air activation procedure - * When set to 0 the application uses the Personalization activation procedure - */ -#define OVER_THE_AIR_ACTIVATION 0 - -/*! - * Indicates if the end-device is to be connected to a private or public network - */ -#define LORAWAN_PUBLIC_NETWORK true - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Mote device IEEE EUI (big endian) - * - * \remark In this application the value is automatically generated by calling - * BoardGetUniqueId function - */ -#define LORAWAN_DEVICE_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * Application IEEE EUI (big endian) - */ -#define LORAWAN_APPLICATION_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * AES encryption/decryption cipher application key - */ -#define LORAWAN_APPLICATION_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#else - -/*! - * Current network ID - */ -#define LORAWAN_NETWORK_ID ( uint32_t )0 - -/*! - * Device address on the network (big endian) - * - * \remark In this application the value is automatically generated using - * a pseudo random generator seeded with a value derived from - * BoardUniqueId value - */ -#define LORAWAN_DEVICE_ADDRESS ( uint32_t )0x00000000 - -/*! - * AES encryption/decryption cipher network session key - */ -#define LORAWAN_NWKSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -/*! - * AES encryption/decryption cipher application session key - */ -#define LORAWAN_APPSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#endif - -#endif // __LORA_COMISSIONING_H__ diff --git a/src/apps/LoRaMac/classA/Bleeper-76/main-api-v3.c b/src/apps/LoRaMac/classA/Bleeper-76/main-api-v3.c deleted file mode 100644 index ab5e7e2b6..000000000 --- a/src/apps/LoRaMac/classA/Bleeper-76/main-api-v3.c +++ /dev/null @@ -1,572 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRaMac classA device implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include -#include "board.h" - -#include "LoRaMac-api-v3.h" -#include "Comissioning.h" - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptative Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -#if defined( USE_BAND_868 ) - -/*! - * LoRaWAN ETSI duty cycle control enable/disable - * - * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes - */ -#define LORAWAN_DUTYCYCLE_ON true - -#endif - -/*! - * LoRaWAN application port - */ -#define LORAWAN_APP_PORT 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 8 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Indicates if the MAC layer has already joined a network. - */ -static bool IsNetworkJoined = false; - -/*! - * Application port - */ -static uint8_t AppPort = LORAWAN_APP_PORT; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Indicates if the node is sending confirmed or unconfirmed messages - */ -static uint8_t IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - -/*! - * Defines the application data transmission duty cycle - */ -static uint32_t TxDutyCycleTime; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Defines the join request timer - */ -static TimerEvent_t JoinReqTimer; - -#endif - -/*! - * Indicates if a new packet can be sent - */ -static bool TxNextPacket = true; -static bool ScheduleNextTx = false; -static bool DownlinkStatusUpdate = false; - -static LoRaMacCallbacks_t LoRaMacCallbacks; - -static TimerEvent_t Led1Timer; -volatile bool Led1StateChanged = false; - -static TimerEvent_t Led2Timer; -volatile bool Led2StateChanged = false; - -static bool AppLedStateOn = false; -volatile bool Led3StateChanged = false; - -/*! - * LoRaWAN compliance tests support data - */ -struct ComplianceTest_s -{ - bool Running; - uint8_t State; - bool IsTxConfirmed; - uint8_t AppPort; - uint8_t AppDataSize; - uint8_t *AppDataBuffer; - uint16_t DownLinkCounter; - bool LinkCheck; - uint8_t DemodMargin; - uint8_t NbGateways; -}ComplianceTest; - -/*! - * Prepares the frame buffer to be sent - */ -static void PrepareTxFrame( uint8_t port ) -{ - switch( port ) - { - case 1: - { - uint16_t pressure = 0; - int16_t altitudeBar = 0; - int16_t temperature = 0; - uint8_t batteryLevel = 0; - - pressure = ( uint16_t )( MPL3115ReadPressure( ) / 10 ); // in hPa / 10 - temperature = ( int16_t )( MPL3115ReadTemperature( ) * 100 ); // in °C * 100 - altitudeBar = ( int16_t )( MPL3115ReadAltitude( ) * 10 ); // in m * 10 - batteryLevel = BoardGetBatteryLevel( ); // 1 (very low) to 254 (fully charged) - - AppData[0] = ( SelectorGetValue( ) << 4 ) | AppLedStateOn; - AppData[1] = ( pressure >> 8 ) & 0xFF; - AppData[2] = pressure & 0xFF; - AppData[3] = ( temperature >> 8 ) & 0xFF; - AppData[4] = temperature & 0xFF; - AppData[5] = ( altitudeBar >> 8 ) & 0xFF; - AppData[6] = altitudeBar & 0xFF; - AppData[7] = batteryLevel; - } - break; - case 224: - if( ComplianceTest.LinkCheck == true ) - { - ComplianceTest.LinkCheck = false; - AppDataSize = 3; - AppData[0] = 5; - AppData[1] = ComplianceTest.DemodMargin; - AppData[2] = ComplianceTest.NbGateways; - ComplianceTest.State = 1; - } - else - { - switch( ComplianceTest.State ) - { - case 4: - ComplianceTest.State = 1; - break; - case 1: - AppDataSize = 2; - AppData[0] = ComplianceTest.DownLinkCounter >> 8; - AppData[1] = ComplianceTest.DownLinkCounter; - break; - } - } - break; - default: - break; - } -} - -static void ProcessRxFrame( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - switch( info->RxPort ) // Check Rx port number - { - case 1: // The application LED can be controlled on port 1 or 2 - case 2: - if( info->RxBufferSize == 1 ) - { - AppLedStateOn = info->RxBuffer[0] & 0x01; - Led3StateChanged = true; - } - break; - case 224: - if( ComplianceTest.Running == false ) - { - // Check compliance test enable command (i) - if( ( info->RxBufferSize == 4 ) && - ( info->RxBuffer[0] == 0x01 ) && - ( info->RxBuffer[1] == 0x01 ) && - ( info->RxBuffer[2] == 0x01 ) && - ( info->RxBuffer[3] == 0x01 ) ) - { - IsTxConfirmed = false; - AppPort = 224; - AppDataSize = 2; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.LinkCheck = false; - ComplianceTest.DemodMargin = 0; - ComplianceTest.NbGateways = 0; - ComplianceTest.Running = true; - ComplianceTest.State = 1; - - LoRaMacSetAdrOn( true ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( false ); -#endif - } - } - else - { - ComplianceTest.State = info->RxBuffer[0]; - switch( ComplianceTest.State ) - { - case 0: // Check compliance test disable command (ii) - IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - AppPort = LORAWAN_APP_PORT; - AppDataSize = LORAWAN_APP_DATA_SIZE; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.Running = false; - LoRaMacSetAdrOn( LORAWAN_ADR_ON ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - break; - case 1: // (iii, iv) - AppDataSize = 2; - break; - case 2: // Enable confirmed messages (v) - IsTxConfirmed = true; - ComplianceTest.State = 1; - break; - case 3: // Disable confirmed messages (vi) - IsTxConfirmed = false; - ComplianceTest.State = 1; - break; - case 4: // (vii) - AppDataSize = info->RxBufferSize; - - AppData[0] = 4; - for( uint8_t i = 1; i < AppDataSize; i++ ) - { - AppData[i] = info->RxBuffer[i] + 1; - } - break; - case 5: // (viii) - LoRaMacLinkCheckReq( ); - break; - default: - break; - } - } - break; - default: - break; - } -} - -static bool SendFrame( void ) -{ - uint8_t sendFrameStatus = 0; - - if( IsTxConfirmed == false ) - { - sendFrameStatus = LoRaMacSendFrame( AppPort, AppData, AppDataSize ); - } - else - { - sendFrameStatus = LoRaMacSendConfirmedFrame( AppPort, AppData, AppDataSize, 8 ); - } - - switch( sendFrameStatus ) - { - case 3: // LENGTH_ERROR - // Send empty frame in order to flush MAC commands - LoRaMacSendFrame( 0, NULL, 0 ); - return false; - case 5: // NO_FREE_CHANNEL - // Try again later - return true; - default: - return false; - } -} - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * \brief Function executed on JoinReq Timeout event - */ -static void OnJoinReqTimerEvent( void ) -{ - TimerStop( &JoinReqTimer ); - TxNextPacket = true; -} - -#endif - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - TimerStop( &TxNextPacketTimer ); - TxNextPacket = true; -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - Led1StateChanged = true; -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - Led2StateChanged = true; -} - -/*! - * \brief Function to be executed on MAC layer event - */ -static void OnMacEvent( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - if( flags->Bits.JoinAccept == 1 ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - TimerStop( &JoinReqTimer ); -#endif - IsNetworkJoined = true; - } - else - { - if( flags->Bits.Tx == 1 ) - { - } - - if( flags->Bits.Rx == 1 ) - { - if( ComplianceTest.Running == true ) - { - ComplianceTest.DownLinkCounter++; - if( flags->Bits.LinkCheck == 1 ) - { - ComplianceTest.LinkCheck = true; - ComplianceTest.DemodMargin = info->DemodMargin; - ComplianceTest.NbGateways = info->NbGateways; - } - } - if( flags->Bits.RxData == true ) - { - ProcessRxFrame( flags, info ); - } - - DownlinkStatusUpdate = true; - TimerStart( &Led2Timer ); - } - } - // Schedule a new transmission - ScheduleNextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ -#if( OVER_THE_AIR_ACTIVATION != 0 ) - uint8_t sendFrameStatus = 0; -#endif - bool trySendingFrameAgain = false; - - BoardInitMcu( ); - BoardInitPeriph( ); - - LoRaMacCallbacks.MacEvent = OnMacEvent; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInit( &LoRaMacCallbacks ); - - IsNetworkJoined = false; - -#if( OVER_THE_AIR_ACTIVATION == 0 ) - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - // Choose a random device address based on Board unique ID - // NwkAddr rand [0, 33554431] - DevAddr = randr( 0, 0x01FFFFFF ); - - LoRaMacInitNwkIds( LORAWAN_NETWORK_ID, DevAddr, NwkSKey, AppSKey ); - IsNetworkJoined = true; -#else - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - // Sends a JoinReq Command every OVER_THE_AIR_ACTIVATION_DUTYCYCLE - // seconds until the network is joined - TimerInit( &JoinReqTimer, OnJoinReqTimerEvent ); - TimerSetValue( &JoinReqTimer, OVER_THE_AIR_ACTIVATION_DUTYCYCLE ); -#endif - - TxNextPacket = true; - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - LoRaMacSetAdrOn( LORAWAN_ADR_ON ); - LoRaMacSetPublicNetwork( LORAWAN_PUBLIC_NETWORK ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - - while( 1 ) - { - while( IsNetworkJoined == false ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - if( TxNextPacket == true ) - { - TxNextPacket = false; - - sendFrameStatus = LoRaMacJoinReq( DevEui, AppEui, AppKey ); - switch( sendFrameStatus ) - { - case 1: // BUSY - break; - case 0: // OK - case 2: // NO_NETWORK_JOINED - case 3: // LENGTH_PORT_ERROR - case 4: // MAC_CMD_ERROR - case 6: // DEVICE_OFF - default: - // Relaunch timer for next trial - TimerStart( &JoinReqTimer ); - break; - } - } - TimerLowPowerHandler( ); -#endif - } - - if( Led1StateChanged == true ) - { - Led1StateChanged = false; - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); - } - if( Led2StateChanged == true ) - { - Led2StateChanged = false; - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); - } - if( Led3StateChanged == true ) - { - Led3StateChanged = false; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - if( DownlinkStatusUpdate == true ) - { - DownlinkStatusUpdate = false; - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - } - - if( ScheduleNextTx == true ) - { - ScheduleNextTx = false; - - if( ComplianceTest.Running == true ) - { - TxNextPacket = true; - } - else - { - // Schedule next packet transmission - TxDutyCycleTime = APP_TX_DUTYCYCLE + randr( -APP_TX_DUTYCYCLE_RND, APP_TX_DUTYCYCLE_RND ); - TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); - TimerStart( &TxNextPacketTimer ); - } - } - - if( trySendingFrameAgain == true ) - { - trySendingFrameAgain = SendFrame( ); - } - if( TxNextPacket == true ) - { - TxNextPacket = false; - - PrepareTxFrame( AppPort ); - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - - trySendingFrameAgain = SendFrame( ); - } - - TimerLowPowerHandler( ); - } -} diff --git a/src/apps/LoRaMac/classA/Bleeper-76/main.c b/src/apps/LoRaMac/classA/Bleeper-76/main.c deleted file mode 100644 index df91a324d..000000000 --- a/src/apps/LoRaMac/classA/Bleeper-76/main.c +++ /dev/null @@ -1,704 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRaMac classA device implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ - -#include -#include -#include "board.h" - -#include "LoRaMac.h" -#include "Comissioning.h" - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptive Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -#if defined( USE_BAND_868 ) - -#include "LoRaMacTest.h" - -/*! - * LoRaWAN ETSI duty cycle control enable/disable - * - * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes - */ -#define LORAWAN_DUTYCYCLE_ON true - -#endif - -/*! - * LoRaWAN application port - */ -#define LORAWAN_APP_PORT 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 8 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Application port - */ -static uint8_t AppPort = LORAWAN_APP_PORT; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Indicates if the node is sending confirmed or unconfirmed messages - */ -static uint8_t IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - -/*! - * Defines the application data transmission duty cycle - */ -static uint32_t TxDutyCycleTime; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -/*! - * Specifies the state of the application LED - */ -static bool AppLedStateOn = false; - -/*! - * Timer to handle the state of LED1 - */ -static TimerEvent_t Led1Timer; - -/*! - * Timer to handle the state of LED2 - */ -static TimerEvent_t Led2Timer; - -/*! - * Indicates if a new packet can be sent - */ -static bool NextTx = true; - -/*! - * Device states - */ -static enum eDevicState -{ - DEVICE_STATE_INIT, - DEVICE_STATE_JOIN, - DEVICE_STATE_SEND, - DEVICE_STATE_CYCLE, - DEVICE_STATE_SLEEP -}DeviceState; - -/*! - * LoRaWAN compliance tests support data - */ -struct ComplianceTest_s -{ - bool Running; - uint8_t State; - bool IsTxConfirmed; - uint8_t AppPort; - uint8_t AppDataSize; - uint8_t *AppDataBuffer; - uint16_t DownLinkCounter; - bool LinkCheck; - uint8_t DemodMargin; - uint8_t NbGateways; -}ComplianceTest; - -/*! - * \brief Prepares the payload of the frame - */ -static void PrepareTxFrame( uint8_t port ) -{ - switch( port ) - { - case 1: - { - uint16_t pressure = 0; - int16_t altitudeBar = 0; - int16_t temperature = 0; - uint8_t batteryLevel = 0; - - pressure = ( uint16_t )( MPL3115ReadPressure( ) / 10 ); // in hPa / 10 - temperature = ( int16_t )( MPL3115ReadTemperature( ) * 100 ); // in °C * 100 - altitudeBar = ( int16_t )( MPL3115ReadAltitude( ) * 10 ); // in m * 10 - batteryLevel = BoardGetBatteryLevel( ); // 1 (very low) to 254 (fully charged) - - AppData[0] = ( SelectorGetValue( ) << 4 ) | AppLedStateOn; - AppData[1] = ( pressure >> 8 ) & 0xFF; - AppData[2] = pressure & 0xFF; - AppData[3] = ( temperature >> 8 ) & 0xFF; - AppData[4] = temperature & 0xFF; - AppData[5] = ( altitudeBar >> 8 ) & 0xFF; - AppData[6] = altitudeBar & 0xFF; - AppData[7] = batteryLevel; - } - break; - case 224: - if( ComplianceTest.LinkCheck == true ) - { - ComplianceTest.LinkCheck = false; - AppDataSize = 3; - AppData[0] = 5; - AppData[1] = ComplianceTest.DemodMargin; - AppData[2] = ComplianceTest.NbGateways; - ComplianceTest.State = 1; - } - else - { - switch( ComplianceTest.State ) - { - case 4: - ComplianceTest.State = 1; - break; - case 1: - AppDataSize = 2; - AppData[0] = ComplianceTest.DownLinkCounter >> 8; - AppData[1] = ComplianceTest.DownLinkCounter; - break; - } - } - break; - default: - break; - } -} - -/*! - * \brief Prepares the payload of the frame - * - * \retval [0: frame could be send, 1: error] - */ -static bool SendFrame( void ) -{ - McpsReq_t mcpsReq; - LoRaMacTxInfo_t txInfo; - - if( LoRaMacQueryTxPossible( AppDataSize, &txInfo ) != LORAMAC_STATUS_OK ) - { - // Send empty frame in order to flush MAC commands - mcpsReq.Type = MCPS_UNCONFIRMED; - mcpsReq.Req.Unconfirmed.fBuffer = NULL; - mcpsReq.Req.Unconfirmed.fBufferSize = 0; - mcpsReq.Req.Unconfirmed.Datarate = DR_0; - } - else - { - if( IsTxConfirmed == false ) - { - mcpsReq.Type = MCPS_UNCONFIRMED; - mcpsReq.Req.Unconfirmed.fPort = AppPort; - mcpsReq.Req.Unconfirmed.fBuffer = AppData; - mcpsReq.Req.Unconfirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Unconfirmed.Datarate = DR_0; - } - else - { - mcpsReq.Type = MCPS_CONFIRMED; - mcpsReq.Req.Confirmed.fPort = AppPort; - mcpsReq.Req.Confirmed.fBuffer = AppData; - mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; - mcpsReq.Req.Confirmed.Datarate = DR_0; - } - } - - if( LoRaMacMcpsRequest( &mcpsReq ) == LORAMAC_STATUS_OK ) - { - return false; - } - return true; -} - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - MibRequestConfirm_t mibReq; - LoRaMacStatus_t status; - - TimerStop( &TxNextPacketTimer ); - - mibReq.Type = MIB_NETWORK_JOINED; - status = LoRaMacMibGetRequestConfirm( &mibReq ); - - if( status == LORAMAC_STATUS_OK ) - { - if( mibReq.Param.IsNetworkJoined == true ) - { - DeviceState = DEVICE_STATE_SEND; - NextTx = true; - } - else - { - DeviceState = DEVICE_STATE_JOIN; - } - } -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); -} - -/*! - * \brief MCPS-Confirm event function - * - * \param [IN] McpsConfirm - Pointer to the confirm structure, - * containing confirm attributes. - */ -static void McpsConfirm( McpsConfirm_t *McpsConfirm ) -{ - if( McpsConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK ) - { - switch( McpsConfirm->McpsRequest ) - { - case MCPS_UNCONFIRMED: - { - // Check Datarate - // Check TxPower - break; - } - case MCPS_CONFIRMED: - { - // Check Datarate - // Check TxPower - // Check AckReceived - // Check NbRetries - break; - } - case MCPS_PROPRIETARY: - { - break; - } - default: - break; - } - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - } - NextTx = true; -} - -/*! - * \brief MCPS-Indication event function - * - * \param [IN] McpsIndication - Pointer to the indication structure, - * containing indication attributes. - */ -static void McpsIndication( McpsIndication_t *McpsIndication ) -{ - if( McpsIndication->Status != LORAMAC_EVENT_INFO_STATUS_OK ) - { - return; - } - - switch( McpsIndication->McpsIndication ) - { - case MCPS_UNCONFIRMED: - { - break; - } - case MCPS_CONFIRMED: - { - break; - } - case MCPS_PROPRIETARY: - { - break; - } - case MCPS_MULTICAST: - { - break; - } - default: - break; - } - - // Check Multicast - // Check Port - // Check Datarate - // Check FramePending - // Check Buffer - // Check BufferSize - // Check Rssi - // Check Snr - // Check RxSlot - - if( ComplianceTest.Running == true ) - { - ComplianceTest.DownLinkCounter++; - } - - if( McpsIndication->RxData == true ) - { - switch( McpsIndication->Port ) - { - case 1: // The application LED can be controlled on port 1 or 2 - case 2: - if( McpsIndication->BufferSize == 1 ) - { - AppLedStateOn = McpsIndication->Buffer[0] & 0x01; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - break; - case 224: - if( ComplianceTest.Running == false ) - { - // Check compliance test enable command (i) - if( ( McpsIndication->BufferSize == 4 ) && - ( McpsIndication->Buffer[0] == 0x01 ) && - ( McpsIndication->Buffer[1] == 0x01 ) && - ( McpsIndication->Buffer[2] == 0x01 ) && - ( McpsIndication->Buffer[3] == 0x01 ) ) - { - IsTxConfirmed = false; - AppPort = 224; - AppDataSize = 2; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.LinkCheck = false; - ComplianceTest.DemodMargin = 0; - ComplianceTest.NbGateways = 0; - ComplianceTest.Running = true; - ComplianceTest.State = 1; - - MibRequestConfirm_t mibReq; - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = true; - LoRaMacMibSetRequestConfirm( &mibReq ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( false ); -#endif - } - } - else - { - ComplianceTest.State = McpsIndication->Buffer[0]; - switch( ComplianceTest.State ) - { - case 0: // Check compliance test disable command (ii) - IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - AppPort = LORAWAN_APP_PORT; - AppDataSize = LORAWAN_APP_DATA_SIZE; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.Running = false; - - MibRequestConfirm_t mibReq; - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = LORAWAN_ADR_ON; - LoRaMacMibSetRequestConfirm( &mibReq ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - break; - case 1: // (iii, iv) - AppDataSize = 2; - break; - case 2: // Enable confirmed messages (v) - IsTxConfirmed = true; - ComplianceTest.State = 1; - break; - case 3: // Disable confirmed messages (vi) - IsTxConfirmed = false; - ComplianceTest.State = 1; - break; - case 4: // (vii) - AppDataSize = McpsIndication->BufferSize; - - AppData[0] = 4; - for( uint8_t i = 1; i < AppDataSize; i++ ) - { - AppData[i] = McpsIndication->Buffer[i] + 1; - } - break; - case 5: // (viii) - { - MlmeReq_t mlmeReq; - mlmeReq.Type = MLME_LINK_CHECK; - LoRaMacMlmeRequest( &mlmeReq ); - } - break; - default: - break; - } - } - break; - default: - break; - } - } - - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - TimerStart( &Led2Timer ); -} - -/*! - * \brief MLME-Confirm event function - * - * \param [IN] MlmeConfirm - Pointer to the confirm structure, - * containing confirm attributes. - */ -static void MlmeConfirm( MlmeConfirm_t *MlmeConfirm ) -{ - if( MlmeConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK ) - { - switch( MlmeConfirm->MlmeRequest ) - { - case MLME_JOIN: - { - // Status is OK, node has joined the network - break; - } - case MLME_LINK_CHECK: - { - // Check DemodMargin - // Check NbGateways - if( ComplianceTest.Running == true ) - { - ComplianceTest.LinkCheck = true; - ComplianceTest.DemodMargin = MlmeConfirm->DemodMargin; - ComplianceTest.NbGateways = MlmeConfirm->NbGateways; - } - break; - } - default: - break; - } - } - NextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ - LoRaMacPrimitives_t LoRaMacPrimitives; - LoRaMacCallback_t LoRaMacCallbacks; - MibRequestConfirm_t mibReq; - - BoardInitMcu( ); - BoardInitPeriph( ); - - DeviceState = DEVICE_STATE_INIT; - - while( 1 ) - { - switch( DeviceState ) - { - case DEVICE_STATE_INIT: - { - LoRaMacPrimitives.MacMcpsConfirm = McpsConfirm; - LoRaMacPrimitives.MacMcpsIndication = McpsIndication; - LoRaMacPrimitives.MacMlmeConfirm = MlmeConfirm; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks ); - - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = LORAWAN_ADR_ON; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_PUBLIC_NETWORK; - mibReq.Param.EnablePublicNetwork = LORAWAN_PUBLIC_NETWORK; - LoRaMacMibSetRequestConfirm( &mibReq ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - DeviceState = DEVICE_STATE_JOIN; - break; - } - case DEVICE_STATE_JOIN: - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - MlmeReq_t mlmeReq; - - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - mlmeReq.Type = MLME_JOIN; - - mlmeReq.Req.Join.DevEui = DevEui; - mlmeReq.Req.Join.AppEui = AppEui; - mlmeReq.Req.Join.AppKey = AppKey; - - if( NextTx == true ) - { - LoRaMacMlmeRequest( &mlmeReq ); - } - - // Schedule next packet transmission - TxDutyCycleTime = OVER_THE_AIR_ACTIVATION_DUTYCYCLE; - DeviceState = DEVICE_STATE_CYCLE; - -#else - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - - // Choose a random device address - DevAddr = randr( 0, 0x01FFFFFF ); - - mibReq.Type = MIB_NET_ID; - mibReq.Param.NetID = LORAWAN_NETWORK_ID; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_DEV_ADDR; - mibReq.Param.DevAddr = DevAddr; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_NWK_SKEY; - mibReq.Param.NwkSKey = NwkSKey; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_APP_SKEY; - mibReq.Param.AppSKey = AppSKey; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_NETWORK_JOINED; - mibReq.Param.IsNetworkJoined = true; - LoRaMacMibSetRequestConfirm( &mibReq ); - - DeviceState = DEVICE_STATE_SEND; -#endif - break; - } - case DEVICE_STATE_SEND: - { - if( NextTx == true ) - { - PrepareTxFrame( AppPort ); - - NextTx = SendFrame( ); - } - if( ComplianceTest.Running == true ) - { - // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms - } - else - { - // Schedule next packet transmission - TxDutyCycleTime = APP_TX_DUTYCYCLE + randr( -APP_TX_DUTYCYCLE_RND, APP_TX_DUTYCYCLE_RND ); - } - DeviceState = DEVICE_STATE_CYCLE; - break; - } - case DEVICE_STATE_CYCLE: - { - // Schedule next packet transmission - TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); - TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; - break; - } - case DEVICE_STATE_SLEEP: - { - // Wake up through events - TimerLowPowerHandler( ); - break; - } - default: - { - DeviceState = DEVICE_STATE_INIT; - break; - } - } - } -} diff --git a/src/apps/LoRaMac/classA/LoRaMote/main-api-v3.c b/src/apps/LoRaMac/classA/LoRaMote/main-api-v3.c index fa8db5001..b859e420f 100644 --- a/src/apps/LoRaMac/classA/LoRaMote/main-api-v3.c +++ b/src/apps/LoRaMac/classA/LoRaMote/main-api-v3.c @@ -56,6 +56,19 @@ Maintainer: Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -523,6 +536,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif while( 1 ) diff --git a/src/apps/LoRaMac/classA/LoRaMote/main.c b/src/apps/LoRaMac/classA/LoRaMote/main.c index e2626623f..63fd566c5 100644 --- a/src/apps/LoRaMac/classA/LoRaMote/main.c +++ b/src/apps/LoRaMac/classA/LoRaMote/main.c @@ -61,6 +61,19 @@ Maintainer: Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -313,7 +326,7 @@ static bool SendFrame( void ) mcpsReq.Req.Confirmed.fPort = AppPort; mcpsReq.Req.Confirmed.fBuffer = AppData; mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; + mcpsReq.Req.Confirmed.NbTrials = 8; mcpsReq.Req.Confirmed.Datarate = DR_0; } } @@ -395,7 +408,7 @@ static void McpsConfirm( McpsConfirm_t *McpsConfirm ) // Check Datarate // Check TxPower // Check AckReceived - // Check NbRetries + // Check NbTrials break; } case MCPS_PROPRIETARY: @@ -647,6 +660,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif DeviceState = DEVICE_STATE_JOIN; break; @@ -716,7 +739,7 @@ int main( void ) if( ComplianceTest.Running == true ) { // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms + TxDutyCycleTime = 300000; // 300 ms } else { @@ -728,11 +751,11 @@ int main( void ) } case DEVICE_STATE_CYCLE: { + DeviceState = DEVICE_STATE_SLEEP; + // Schedule next packet transmission TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; break; } case DEVICE_STATE_SLEEP: diff --git a/src/apps/LoRaMac/classA/SK-iM880A/main-api-v3.c b/src/apps/LoRaMac/classA/SK-iM880A/main-api-v3.c index 6f4b56c17..d6d1d62b6 100644 --- a/src/apps/LoRaMac/classA/SK-iM880A/main-api-v3.c +++ b/src/apps/LoRaMac/classA/SK-iM880A/main-api-v3.c @@ -56,6 +56,19 @@ Maintainer: Andreas Pella (IMST GmbH), Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -473,6 +486,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif while( 1 ) diff --git a/src/apps/LoRaMac/classA/SK-iM880A/main.c b/src/apps/LoRaMac/classA/SK-iM880A/main.c index b61069dec..16069942c 100644 --- a/src/apps/LoRaMac/classA/SK-iM880A/main.c +++ b/src/apps/LoRaMac/classA/SK-iM880A/main.c @@ -59,6 +59,19 @@ Maintainer: Andreas Pella (IMST GmbH), Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -261,7 +274,7 @@ static bool SendFrame( void ) mcpsReq.Req.Confirmed.fPort = AppPort; mcpsReq.Req.Confirmed.fBuffer = AppData; mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; + mcpsReq.Req.Confirmed.NbTrials = 8; mcpsReq.Req.Confirmed.Datarate = DR_0; } } @@ -343,7 +356,7 @@ static void McpsConfirm( McpsConfirm_t *McpsConfirm ) // Check Datarate // Check TxPower // Check AckReceived - // Check NbRetries + // Check NbTrials break; } case MCPS_PROPRIETARY: @@ -595,6 +608,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif DeviceState = DEVICE_STATE_JOIN; break; @@ -664,7 +687,7 @@ int main( void ) if( ComplianceTest.Running == true ) { // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms + TxDutyCycleTime = 300000; // 300 ms } else { @@ -676,11 +699,11 @@ int main( void ) } case DEVICE_STATE_CYCLE: { + DeviceState = DEVICE_STATE_SLEEP; + // Schedule next packet transmission TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; break; } case DEVICE_STATE_SLEEP: diff --git a/src/apps/LoRaMac/classA/SensorNode/main-api-v3.c b/src/apps/LoRaMac/classA/SensorNode/main-api-v3.c index 63c83a87e..5a550121c 100644 --- a/src/apps/LoRaMac/classA/SensorNode/main-api-v3.c +++ b/src/apps/LoRaMac/classA/SensorNode/main-api-v3.c @@ -56,6 +56,19 @@ Maintainer: Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -537,6 +550,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif while( 1 ) diff --git a/src/apps/LoRaMac/classA/SensorNode/main.c b/src/apps/LoRaMac/classA/SensorNode/main.c index 930fa7470..f72f2eead 100644 --- a/src/apps/LoRaMac/classA/SensorNode/main.c +++ b/src/apps/LoRaMac/classA/SensorNode/main.c @@ -58,6 +58,19 @@ Maintainer: Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -238,8 +251,8 @@ static void PrepareTxFrame( uint8_t port ) altitudeGps = GpsGetLatestGpsAltitude( ); // in m AppData[0] = AppLedStateOn; - AppData[1] = temperature; - AppData[2] = batteryLevel; + AppData[1] = temperature; // Signed degrees Celcius in half degree units. So, +/-63 C + AppData[2] = batteryLevel; // Per LoRaWAN spec; 0=Charging; 1...254 = level, 255 = N/A AppData[3] = ( latitude >> 16 ) & 0xFF; AppData[4] = ( latitude >> 8 ) & 0xFF; AppData[5] = latitude & 0xFF; @@ -315,7 +328,7 @@ static bool SendFrame( void ) mcpsReq.Req.Confirmed.fPort = AppPort; mcpsReq.Req.Confirmed.fBuffer = AppData; mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; + mcpsReq.Req.Confirmed.NbTrials = 8; mcpsReq.Req.Confirmed.Datarate = DR_0; } } @@ -377,7 +390,7 @@ static void OnLed2TimerEvent( void ) /*! * \brief Function executed on Led 4 Timeout event */ -void OnLed4TimerEvent( void ) +static void OnLed4TimerEvent( void ) { TimerStop( &Led4Timer ); // Switch LED 4 OFF @@ -406,7 +419,7 @@ static void McpsConfirm( McpsConfirm_t *McpsConfirm ) // Check Datarate // Check TxPower // Check AckReceived - // Check NbRetries + // Check NbTrials break; } case MCPS_PROPRIETARY: @@ -661,6 +674,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif DeviceState = DEVICE_STATE_JOIN; break; @@ -730,7 +753,7 @@ int main( void ) if( ComplianceTest.Running == true ) { // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms + TxDutyCycleTime = 300000; // 300 ms } else { @@ -742,11 +765,11 @@ int main( void ) } case DEVICE_STATE_CYCLE: { + DeviceState = DEVICE_STATE_SLEEP; + // Schedule next packet transmission TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; break; } case DEVICE_STATE_SLEEP: diff --git a/src/apps/LoRaMac/classB/Bleeper-72/Comissioning.h b/src/apps/LoRaMac/classB/Bleeper-72/Comissioning.h deleted file mode 100644 index f663ac2f8..000000000 --- a/src/apps/LoRaMac/classB/Bleeper-72/Comissioning.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2015 Semtech - -Description: End device comissioning parameters - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __LORA_COMISSIONING_H__ -#define __LORA_COMISSIONING_H__ - -/*! - * When set to 1 the application uses the Over-the-Air activation procedure - * When set to 0 the application uses the Personalization activation procedure - */ -#define OVER_THE_AIR_ACTIVATION 0 - -/*! - * Indicates if the end-device is to be connected to a private or public network - */ -#define LORAWAN_PUBLIC_NETWORK true - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Mote device IEEE EUI (big endian) - * - * \remark In this application the value is automatically generated by calling - * BoardGetUniqueId function - */ -#define LORAWAN_DEVICE_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * Application IEEE EUI (big endian) - */ -#define LORAWAN_APPLICATION_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * AES encryption/decryption cipher application key - */ -#define LORAWAN_APPLICATION_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#else - -/*! - * Current network ID - */ -#define LORAWAN_NETWORK_ID ( uint32_t )0 - -/*! - * Device address on the network (big endian) - * - * \remark In this application the value is automatically generated using - * a pseudo random generator seeded with a value derived from - * BoardUniqueId value - */ -#define LORAWAN_DEVICE_ADDRESS ( uint32_t )0x00000000 - -/*! - * AES encryption/decryption cipher network session key - */ -#define LORAWAN_NWKSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -/*! - * AES encryption/decryption cipher application session key - */ -#define LORAWAN_APPSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#endif - -#endif // __LORA_COMISSIONING_H__ diff --git a/src/apps/LoRaMac/classB/Bleeper-72/main-api-v3.c b/src/apps/LoRaMac/classB/Bleeper-72/main-api-v3.c deleted file mode 100644 index 26b05d3a7..000000000 --- a/src/apps/LoRaMac/classB/Bleeper-72/main-api-v3.c +++ /dev/null @@ -1,572 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRaMac classB device implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include -#include "board.h" - -#include "LoRaMac-api-v3.h" -#include "Comissioning.h" - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptative Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -#if defined( USE_BAND_868 ) - -/*! - * LoRaWAN ETSI duty cycle control enable/disable - * - * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes - */ -#define LORAWAN_DUTYCYCLE_ON true - -#endif - -/*! - * LoRaWAN application port - */ -#define LORAWAN_APP_PORT 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 8 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Indicates if the MAC layer has already joined a network. - */ -static bool IsNetworkJoined = false; - -/*! - * Application port - */ -static uint8_t AppPort = LORAWAN_APP_PORT; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Indicates if the node is sending confirmed or unconfirmed messages - */ -static uint8_t IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - -/*! - * Defines the application data transmission duty cycle - */ -static uint32_t TxDutyCycleTime; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Defines the join request timer - */ -static TimerEvent_t JoinReqTimer; - -#endif - -/*! - * Indicates if a new packet can be sent - */ -static bool TxNextPacket = true; -static bool ScheduleNextTx = false; -static bool DownlinkStatusUpdate = false; - -static LoRaMacCallbacks_t LoRaMacCallbacks; - -static TimerEvent_t Led1Timer; -volatile bool Led1StateChanged = false; - -static TimerEvent_t Led2Timer; -volatile bool Led2StateChanged = false; - -static bool AppLedStateOn = false; -volatile bool Led3StateChanged = false; - -/*! - * LoRaWAN compliance tests support data - */ -struct ComplianceTest_s -{ - bool Running; - uint8_t State; - bool IsTxConfirmed; - uint8_t AppPort; - uint8_t AppDataSize; - uint8_t *AppDataBuffer; - uint16_t DownLinkCounter; - bool LinkCheck; - uint8_t DemodMargin; - uint8_t NbGateways; -}ComplianceTest; - -/*! - * Prepares the frame buffer to be sent - */ -static void PrepareTxFrame( uint8_t port ) -{ - switch( port ) - { - case 1: - { - uint16_t pressure = 0; - int16_t altitudeBar = 0; - int16_t temperature = 0; - uint8_t batteryLevel = 0; - - pressure = ( uint16_t )( MPL3115ReadPressure( ) / 10 ); // in hPa / 10 - temperature = ( int16_t )( MPL3115ReadTemperature( ) * 100 ); // in °C * 100 - altitudeBar = ( int16_t )( MPL3115ReadAltitude( ) * 10 ); // in m * 10 - batteryLevel = BoardGetBatteryLevel( ); // 1 (very low) to 254 (fully charged) - - AppData[0] = ( SelectorGetValue( ) << 4 ) | AppLedStateOn; - AppData[1] = ( pressure >> 8 ) & 0xFF; - AppData[2] = pressure & 0xFF; - AppData[3] = ( temperature >> 8 ) & 0xFF; - AppData[4] = temperature & 0xFF; - AppData[5] = ( altitudeBar >> 8 ) & 0xFF; - AppData[6] = altitudeBar & 0xFF; - AppData[7] = batteryLevel; - } - break; - case 224: - if( ComplianceTest.LinkCheck == true ) - { - ComplianceTest.LinkCheck = false; - AppDataSize = 3; - AppData[0] = 5; - AppData[1] = ComplianceTest.DemodMargin; - AppData[2] = ComplianceTest.NbGateways; - ComplianceTest.State = 1; - } - else - { - switch( ComplianceTest.State ) - { - case 4: - ComplianceTest.State = 1; - break; - case 1: - AppDataSize = 2; - AppData[0] = ComplianceTest.DownLinkCounter >> 8; - AppData[1] = ComplianceTest.DownLinkCounter; - break; - } - } - break; - default: - break; - } -} - -static void ProcessRxFrame( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - switch( info->RxPort ) // Check Rx port number - { - case 1: // The application LED can be controlled on port 1 or 2 - case 2: - if( info->RxBufferSize == 1 ) - { - AppLedStateOn = info->RxBuffer[0] & 0x01; - Led3StateChanged = true; - } - break; - case 224: - if( ComplianceTest.Running == false ) - { - // Check compliance test enable command (i) - if( ( info->RxBufferSize == 4 ) && - ( info->RxBuffer[0] == 0x01 ) && - ( info->RxBuffer[1] == 0x01 ) && - ( info->RxBuffer[2] == 0x01 ) && - ( info->RxBuffer[3] == 0x01 ) ) - { - IsTxConfirmed = false; - AppPort = 224; - AppDataSize = 2; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.LinkCheck = false; - ComplianceTest.DemodMargin = 0; - ComplianceTest.NbGateways = 0; - ComplianceTest.Running = true; - ComplianceTest.State = 1; - - LoRaMacSetAdrOn( true ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( false ); -#endif - } - } - else - { - ComplianceTest.State = info->RxBuffer[0]; - switch( ComplianceTest.State ) - { - case 0: // Check compliance test disable command (ii) - IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - AppPort = LORAWAN_APP_PORT; - AppDataSize = LORAWAN_APP_DATA_SIZE; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.Running = false; - LoRaMacSetAdrOn( LORAWAN_ADR_ON ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - break; - case 1: // (iii, iv) - AppDataSize = 2; - break; - case 2: // Enable confirmed messages (v) - IsTxConfirmed = true; - ComplianceTest.State = 1; - break; - case 3: // Disable confirmed messages (vi) - IsTxConfirmed = false; - ComplianceTest.State = 1; - break; - case 4: // (vii) - AppDataSize = info->RxBufferSize; - - AppData[0] = 4; - for( uint8_t i = 1; i < AppDataSize; i++ ) - { - AppData[i] = info->RxBuffer[i] + 1; - } - break; - case 5: // (viii) - LoRaMacLinkCheckReq( ); - break; - default: - break; - } - } - break; - default: - break; - } -} - -static bool SendFrame( void ) -{ - uint8_t sendFrameStatus = 0; - - if( IsTxConfirmed == false ) - { - sendFrameStatus = LoRaMacSendFrame( AppPort, AppData, AppDataSize ); - } - else - { - sendFrameStatus = LoRaMacSendConfirmedFrame( AppPort, AppData, AppDataSize, 8 ); - } - - switch( sendFrameStatus ) - { - case 3: // LENGTH_ERROR - // Send empty frame in order to flush MAC commands - LoRaMacSendFrame( 0, NULL, 0 ); - return false; - case 5: // NO_FREE_CHANNEL - // Try again later - return true; - default: - return false; - } -} - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * \brief Function executed on JoinReq Timeout event - */ -static void OnJoinReqTimerEvent( void ) -{ - TimerStop( &JoinReqTimer ); - TxNextPacket = true; -} - -#endif - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - TimerStop( &TxNextPacketTimer ); - TxNextPacket = true; -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - Led1StateChanged = true; -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - Led2StateChanged = true; -} - -/*! - * \brief Function to be executed on MAC layer event - */ -static void OnMacEvent( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - if( flags->Bits.JoinAccept == 1 ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - TimerStop( &JoinReqTimer ); -#endif - IsNetworkJoined = true; - } - else - { - if( flags->Bits.Tx == 1 ) - { - } - - if( flags->Bits.Rx == 1 ) - { - if( ComplianceTest.Running == true ) - { - ComplianceTest.DownLinkCounter++; - if( flags->Bits.LinkCheck == 1 ) - { - ComplianceTest.LinkCheck = true; - ComplianceTest.DemodMargin = info->DemodMargin; - ComplianceTest.NbGateways = info->NbGateways; - } - } - if( flags->Bits.RxData == true ) - { - ProcessRxFrame( flags, info ); - } - - DownlinkStatusUpdate = true; - TimerStart( &Led2Timer ); - } - } - // Schedule a new transmission - ScheduleNextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ -#if( OVER_THE_AIR_ACTIVATION != 0 ) - uint8_t sendFrameStatus = 0; -#endif - bool trySendingFrameAgain = false; - - BoardInitMcu( ); - BoardInitPeriph( ); - - LoRaMacCallbacks.MacEvent = OnMacEvent; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInit( &LoRaMacCallbacks ); - - IsNetworkJoined = false; - -#if( OVER_THE_AIR_ACTIVATION == 0 ) - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - // Choose a random device address based on Board unique ID - // NwkAddr rand [0, 33554431] - DevAddr = randr( 0, 0x01FFFFFF ); - - LoRaMacInitNwkIds( LORAWAN_NETWORK_ID, DevAddr, NwkSKey, AppSKey ); - IsNetworkJoined = true; -#else - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - // Sends a JoinReq Command every OVER_THE_AIR_ACTIVATION_DUTYCYCLE - // seconds until the network is joined - TimerInit( &JoinReqTimer, OnJoinReqTimerEvent ); - TimerSetValue( &JoinReqTimer, OVER_THE_AIR_ACTIVATION_DUTYCYCLE ); -#endif - - TxNextPacket = true; - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - LoRaMacSetAdrOn( LORAWAN_ADR_ON ); - LoRaMacSetPublicNetwork( LORAWAN_PUBLIC_NETWORK ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - - while( 1 ) - { - while( IsNetworkJoined == false ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - if( TxNextPacket == true ) - { - TxNextPacket = false; - - sendFrameStatus = LoRaMacJoinReq( DevEui, AppEui, AppKey ); - switch( sendFrameStatus ) - { - case 1: // BUSY - break; - case 0: // OK - case 2: // NO_NETWORK_JOINED - case 3: // LENGTH_PORT_ERROR - case 4: // MAC_CMD_ERROR - case 6: // DEVICE_OFF - default: - // Relaunch timer for next trial - TimerStart( &JoinReqTimer ); - break; - } - } - TimerLowPowerHandler( ); -#endif - } - - if( Led1StateChanged == true ) - { - Led1StateChanged = false; - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); - } - if( Led2StateChanged == true ) - { - Led2StateChanged = false; - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); - } - if( Led3StateChanged == true ) - { - Led3StateChanged = false; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - if( DownlinkStatusUpdate == true ) - { - DownlinkStatusUpdate = false; - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - } - - if( ScheduleNextTx == true ) - { - ScheduleNextTx = false; - - if( ComplianceTest.Running == true ) - { - TxNextPacket = true; - } - else - { - // Schedule next packet transmission - TxDutyCycleTime = APP_TX_DUTYCYCLE + randr( -APP_TX_DUTYCYCLE_RND, APP_TX_DUTYCYCLE_RND ); - TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); - TimerStart( &TxNextPacketTimer ); - } - } - - if( trySendingFrameAgain == true ) - { - trySendingFrameAgain = SendFrame( ); - } - if( TxNextPacket == true ) - { - TxNextPacket = false; - - PrepareTxFrame( AppPort ); - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - - trySendingFrameAgain = SendFrame( ); - } - - TimerLowPowerHandler( ); - } -} diff --git a/src/apps/LoRaMac/classB/Bleeper-72/main.c b/src/apps/LoRaMac/classB/Bleeper-72/main.c deleted file mode 100644 index 8c3899be3..000000000 --- a/src/apps/LoRaMac/classB/Bleeper-72/main.c +++ /dev/null @@ -1,704 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRaMac classB device implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ - -#include -#include -#include "board.h" - -#include "LoRaMac.h" -#include "Comissioning.h" - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptive Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -#if defined( USE_BAND_868 ) - -#include "LoRaMacTest.h" - -/*! - * LoRaWAN ETSI duty cycle control enable/disable - * - * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes - */ -#define LORAWAN_DUTYCYCLE_ON true - -#endif - -/*! - * LoRaWAN application port - */ -#define LORAWAN_APP_PORT 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 8 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Application port - */ -static uint8_t AppPort = LORAWAN_APP_PORT; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Indicates if the node is sending confirmed or unconfirmed messages - */ -static uint8_t IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - -/*! - * Defines the application data transmission duty cycle - */ -static uint32_t TxDutyCycleTime; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -/*! - * Specifies the state of the application LED - */ -static bool AppLedStateOn = false; - -/*! - * Timer to handle the state of LED1 - */ -static TimerEvent_t Led1Timer; - -/*! - * Timer to handle the state of LED2 - */ -static TimerEvent_t Led2Timer; - -/*! - * Indicates if a new packet can be sent - */ -static bool NextTx = true; - -/*! - * Device states - */ -static enum eDevicState -{ - DEVICE_STATE_INIT, - DEVICE_STATE_JOIN, - DEVICE_STATE_SEND, - DEVICE_STATE_CYCLE, - DEVICE_STATE_SLEEP -}DeviceState; - -/*! - * LoRaWAN compliance tests support data - */ -struct ComplianceTest_s -{ - bool Running; - uint8_t State; - bool IsTxConfirmed; - uint8_t AppPort; - uint8_t AppDataSize; - uint8_t *AppDataBuffer; - uint16_t DownLinkCounter; - bool LinkCheck; - uint8_t DemodMargin; - uint8_t NbGateways; -}ComplianceTest; - -/*! - * \brief Prepares the payload of the frame - */ -static void PrepareTxFrame( uint8_t port ) -{ - switch( port ) - { - case 1: - { - uint16_t pressure = 0; - int16_t altitudeBar = 0; - int16_t temperature = 0; - uint8_t batteryLevel = 0; - - pressure = ( uint16_t )( MPL3115ReadPressure( ) / 10 ); // in hPa / 10 - temperature = ( int16_t )( MPL3115ReadTemperature( ) * 100 ); // in °C * 100 - altitudeBar = ( int16_t )( MPL3115ReadAltitude( ) * 10 ); // in m * 10 - batteryLevel = BoardGetBatteryLevel( ); // 1 (very low) to 254 (fully charged) - - AppData[0] = ( SelectorGetValue( ) << 4 ) | AppLedStateOn; - AppData[1] = ( pressure >> 8 ) & 0xFF; - AppData[2] = pressure & 0xFF; - AppData[3] = ( temperature >> 8 ) & 0xFF; - AppData[4] = temperature & 0xFF; - AppData[5] = ( altitudeBar >> 8 ) & 0xFF; - AppData[6] = altitudeBar & 0xFF; - AppData[7] = batteryLevel; - } - break; - case 224: - if( ComplianceTest.LinkCheck == true ) - { - ComplianceTest.LinkCheck = false; - AppDataSize = 3; - AppData[0] = 5; - AppData[1] = ComplianceTest.DemodMargin; - AppData[2] = ComplianceTest.NbGateways; - ComplianceTest.State = 1; - } - else - { - switch( ComplianceTest.State ) - { - case 4: - ComplianceTest.State = 1; - break; - case 1: - AppDataSize = 2; - AppData[0] = ComplianceTest.DownLinkCounter >> 8; - AppData[1] = ComplianceTest.DownLinkCounter; - break; - } - } - break; - default: - break; - } -} - -/*! - * \brief Prepares the payload of the frame - * - * \retval [0: frame could be send, 1: error] - */ -static bool SendFrame( void ) -{ - McpsReq_t mcpsReq; - LoRaMacTxInfo_t txInfo; - - if( LoRaMacQueryTxPossible( AppDataSize, &txInfo ) != LORAMAC_STATUS_OK ) - { - // Send empty frame in order to flush MAC commands - mcpsReq.Type = MCPS_UNCONFIRMED; - mcpsReq.Req.Unconfirmed.fBuffer = NULL; - mcpsReq.Req.Unconfirmed.fBufferSize = 0; - mcpsReq.Req.Unconfirmed.Datarate = DR_0; - } - else - { - if( IsTxConfirmed == false ) - { - mcpsReq.Type = MCPS_UNCONFIRMED; - mcpsReq.Req.Unconfirmed.fPort = AppPort; - mcpsReq.Req.Unconfirmed.fBuffer = AppData; - mcpsReq.Req.Unconfirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Unconfirmed.Datarate = DR_0; - } - else - { - mcpsReq.Type = MCPS_CONFIRMED; - mcpsReq.Req.Confirmed.fPort = AppPort; - mcpsReq.Req.Confirmed.fBuffer = AppData; - mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; - mcpsReq.Req.Confirmed.Datarate = DR_0; - } - } - - if( LoRaMacMcpsRequest( &mcpsReq ) == LORAMAC_STATUS_OK ) - { - return false; - } - return true; -} - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - MibRequestConfirm_t mibReq; - LoRaMacStatus_t status; - - TimerStop( &TxNextPacketTimer ); - - mibReq.Type = MIB_NETWORK_JOINED; - status = LoRaMacMibGetRequestConfirm( &mibReq ); - - if( status == LORAMAC_STATUS_OK ) - { - if( mibReq.Param.IsNetworkJoined == true ) - { - DeviceState = DEVICE_STATE_SEND; - NextTx = true; - } - else - { - DeviceState = DEVICE_STATE_JOIN; - } - } -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); -} - -/*! - * \brief MCPS-Confirm event function - * - * \param [IN] McpsConfirm - Pointer to the confirm structure, - * containing confirm attributes. - */ -static void McpsConfirm( McpsConfirm_t *McpsConfirm ) -{ - if( McpsConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK ) - { - switch( McpsConfirm->McpsRequest ) - { - case MCPS_UNCONFIRMED: - { - // Check Datarate - // Check TxPower - break; - } - case MCPS_CONFIRMED: - { - // Check Datarate - // Check TxPower - // Check AckReceived - // Check NbRetries - break; - } - case MCPS_PROPRIETARY: - { - break; - } - default: - break; - } - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - } - NextTx = true; -} - -/*! - * \brief MCPS-Indication event function - * - * \param [IN] McpsIndication - Pointer to the indication structure, - * containing indication attributes. - */ -static void McpsIndication( McpsIndication_t *McpsIndication ) -{ - if( McpsIndication->Status != LORAMAC_EVENT_INFO_STATUS_OK ) - { - return; - } - - switch( McpsIndication->McpsIndication ) - { - case MCPS_UNCONFIRMED: - { - break; - } - case MCPS_CONFIRMED: - { - break; - } - case MCPS_PROPRIETARY: - { - break; - } - case MCPS_MULTICAST: - { - break; - } - default: - break; - } - - // Check Multicast - // Check Port - // Check Datarate - // Check FramePending - // Check Buffer - // Check BufferSize - // Check Rssi - // Check Snr - // Check RxSlot - - if( ComplianceTest.Running == true ) - { - ComplianceTest.DownLinkCounter++; - } - - if( McpsIndication->RxData == true ) - { - switch( McpsIndication->Port ) - { - case 1: // The application LED can be controlled on port 1 or 2 - case 2: - if( McpsIndication->BufferSize == 1 ) - { - AppLedStateOn = McpsIndication->Buffer[0] & 0x01; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - break; - case 224: - if( ComplianceTest.Running == false ) - { - // Check compliance test enable command (i) - if( ( McpsIndication->BufferSize == 4 ) && - ( McpsIndication->Buffer[0] == 0x01 ) && - ( McpsIndication->Buffer[1] == 0x01 ) && - ( McpsIndication->Buffer[2] == 0x01 ) && - ( McpsIndication->Buffer[3] == 0x01 ) ) - { - IsTxConfirmed = false; - AppPort = 224; - AppDataSize = 2; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.LinkCheck = false; - ComplianceTest.DemodMargin = 0; - ComplianceTest.NbGateways = 0; - ComplianceTest.Running = true; - ComplianceTest.State = 1; - - MibRequestConfirm_t mibReq; - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = true; - LoRaMacMibSetRequestConfirm( &mibReq ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( false ); -#endif - } - } - else - { - ComplianceTest.State = McpsIndication->Buffer[0]; - switch( ComplianceTest.State ) - { - case 0: // Check compliance test disable command (ii) - IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - AppPort = LORAWAN_APP_PORT; - AppDataSize = LORAWAN_APP_DATA_SIZE; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.Running = false; - - MibRequestConfirm_t mibReq; - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = LORAWAN_ADR_ON; - LoRaMacMibSetRequestConfirm( &mibReq ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - break; - case 1: // (iii, iv) - AppDataSize = 2; - break; - case 2: // Enable confirmed messages (v) - IsTxConfirmed = true; - ComplianceTest.State = 1; - break; - case 3: // Disable confirmed messages (vi) - IsTxConfirmed = false; - ComplianceTest.State = 1; - break; - case 4: // (vii) - AppDataSize = McpsIndication->BufferSize; - - AppData[0] = 4; - for( uint8_t i = 1; i < AppDataSize; i++ ) - { - AppData[i] = McpsIndication->Buffer[i] + 1; - } - break; - case 5: // (viii) - { - MlmeReq_t mlmeReq; - mlmeReq.Type = MLME_LINK_CHECK; - LoRaMacMlmeRequest( &mlmeReq ); - } - break; - default: - break; - } - } - break; - default: - break; - } - } - - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - TimerStart( &Led2Timer ); -} - -/*! - * \brief MLME-Confirm event function - * - * \param [IN] MlmeConfirm - Pointer to the confirm structure, - * containing confirm attributes. - */ -static void MlmeConfirm( MlmeConfirm_t *MlmeConfirm ) -{ - if( MlmeConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK ) - { - switch( MlmeConfirm->MlmeRequest ) - { - case MLME_JOIN: - { - // Status is OK, node has joined the network - break; - } - case MLME_LINK_CHECK: - { - // Check DemodMargin - // Check NbGateways - if( ComplianceTest.Running == true ) - { - ComplianceTest.LinkCheck = true; - ComplianceTest.DemodMargin = MlmeConfirm->DemodMargin; - ComplianceTest.NbGateways = MlmeConfirm->NbGateways; - } - break; - } - default: - break; - } - } - NextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ - LoRaMacPrimitives_t LoRaMacPrimitives; - LoRaMacCallback_t LoRaMacCallbacks; - MibRequestConfirm_t mibReq; - - BoardInitMcu( ); - BoardInitPeriph( ); - - DeviceState = DEVICE_STATE_INIT; - - while( 1 ) - { - switch( DeviceState ) - { - case DEVICE_STATE_INIT: - { - LoRaMacPrimitives.MacMcpsConfirm = McpsConfirm; - LoRaMacPrimitives.MacMcpsIndication = McpsIndication; - LoRaMacPrimitives.MacMlmeConfirm = MlmeConfirm; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks ); - - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = LORAWAN_ADR_ON; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_PUBLIC_NETWORK; - mibReq.Param.EnablePublicNetwork = LORAWAN_PUBLIC_NETWORK; - LoRaMacMibSetRequestConfirm( &mibReq ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - DeviceState = DEVICE_STATE_JOIN; - break; - } - case DEVICE_STATE_JOIN: - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - MlmeReq_t mlmeReq; - - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - mlmeReq.Type = MLME_JOIN; - - mlmeReq.Req.Join.DevEui = DevEui; - mlmeReq.Req.Join.AppEui = AppEui; - mlmeReq.Req.Join.AppKey = AppKey; - - if( NextTx == true ) - { - LoRaMacMlmeRequest( &mlmeReq ); - } - - // Schedule next packet transmission - TxDutyCycleTime = OVER_THE_AIR_ACTIVATION_DUTYCYCLE; - DeviceState = DEVICE_STATE_CYCLE; - -#else - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - - // Choose a random device address - DevAddr = randr( 0, 0x01FFFFFF ); - - mibReq.Type = MIB_NET_ID; - mibReq.Param.NetID = LORAWAN_NETWORK_ID; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_DEV_ADDR; - mibReq.Param.DevAddr = DevAddr; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_NWK_SKEY; - mibReq.Param.NwkSKey = NwkSKey; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_APP_SKEY; - mibReq.Param.AppSKey = AppSKey; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_NETWORK_JOINED; - mibReq.Param.IsNetworkJoined = true; - LoRaMacMibSetRequestConfirm( &mibReq ); - - DeviceState = DEVICE_STATE_SEND; -#endif - break; - } - case DEVICE_STATE_SEND: - { - if( NextTx == true ) - { - PrepareTxFrame( AppPort ); - - NextTx = SendFrame( ); - } - if( ComplianceTest.Running == true ) - { - // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms - } - else - { - // Schedule next packet transmission - TxDutyCycleTime = APP_TX_DUTYCYCLE + randr( -APP_TX_DUTYCYCLE_RND, APP_TX_DUTYCYCLE_RND ); - } - DeviceState = DEVICE_STATE_CYCLE; - break; - } - case DEVICE_STATE_CYCLE: - { - // Schedule next packet transmission - TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); - TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; - break; - } - case DEVICE_STATE_SLEEP: - { - // Wake up through events - TimerLowPowerHandler( ); - break; - } - default: - { - DeviceState = DEVICE_STATE_INIT; - break; - } - } - } -} diff --git a/src/apps/LoRaMac/classB/Bleeper-76/Comissioning.h b/src/apps/LoRaMac/classB/Bleeper-76/Comissioning.h deleted file mode 100644 index f663ac2f8..000000000 --- a/src/apps/LoRaMac/classB/Bleeper-76/Comissioning.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2015 Semtech - -Description: End device comissioning parameters - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __LORA_COMISSIONING_H__ -#define __LORA_COMISSIONING_H__ - -/*! - * When set to 1 the application uses the Over-the-Air activation procedure - * When set to 0 the application uses the Personalization activation procedure - */ -#define OVER_THE_AIR_ACTIVATION 0 - -/*! - * Indicates if the end-device is to be connected to a private or public network - */ -#define LORAWAN_PUBLIC_NETWORK true - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Mote device IEEE EUI (big endian) - * - * \remark In this application the value is automatically generated by calling - * BoardGetUniqueId function - */ -#define LORAWAN_DEVICE_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * Application IEEE EUI (big endian) - */ -#define LORAWAN_APPLICATION_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * AES encryption/decryption cipher application key - */ -#define LORAWAN_APPLICATION_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#else - -/*! - * Current network ID - */ -#define LORAWAN_NETWORK_ID ( uint32_t )0 - -/*! - * Device address on the network (big endian) - * - * \remark In this application the value is automatically generated using - * a pseudo random generator seeded with a value derived from - * BoardUniqueId value - */ -#define LORAWAN_DEVICE_ADDRESS ( uint32_t )0x00000000 - -/*! - * AES encryption/decryption cipher network session key - */ -#define LORAWAN_NWKSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -/*! - * AES encryption/decryption cipher application session key - */ -#define LORAWAN_APPSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#endif - -#endif // __LORA_COMISSIONING_H__ diff --git a/src/apps/LoRaMac/classB/Bleeper-76/main-api-v3.c b/src/apps/LoRaMac/classB/Bleeper-76/main-api-v3.c deleted file mode 100644 index 26b05d3a7..000000000 --- a/src/apps/LoRaMac/classB/Bleeper-76/main-api-v3.c +++ /dev/null @@ -1,572 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRaMac classB device implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include -#include "board.h" - -#include "LoRaMac-api-v3.h" -#include "Comissioning.h" - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptative Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -#if defined( USE_BAND_868 ) - -/*! - * LoRaWAN ETSI duty cycle control enable/disable - * - * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes - */ -#define LORAWAN_DUTYCYCLE_ON true - -#endif - -/*! - * LoRaWAN application port - */ -#define LORAWAN_APP_PORT 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 8 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Indicates if the MAC layer has already joined a network. - */ -static bool IsNetworkJoined = false; - -/*! - * Application port - */ -static uint8_t AppPort = LORAWAN_APP_PORT; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Indicates if the node is sending confirmed or unconfirmed messages - */ -static uint8_t IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - -/*! - * Defines the application data transmission duty cycle - */ -static uint32_t TxDutyCycleTime; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Defines the join request timer - */ -static TimerEvent_t JoinReqTimer; - -#endif - -/*! - * Indicates if a new packet can be sent - */ -static bool TxNextPacket = true; -static bool ScheduleNextTx = false; -static bool DownlinkStatusUpdate = false; - -static LoRaMacCallbacks_t LoRaMacCallbacks; - -static TimerEvent_t Led1Timer; -volatile bool Led1StateChanged = false; - -static TimerEvent_t Led2Timer; -volatile bool Led2StateChanged = false; - -static bool AppLedStateOn = false; -volatile bool Led3StateChanged = false; - -/*! - * LoRaWAN compliance tests support data - */ -struct ComplianceTest_s -{ - bool Running; - uint8_t State; - bool IsTxConfirmed; - uint8_t AppPort; - uint8_t AppDataSize; - uint8_t *AppDataBuffer; - uint16_t DownLinkCounter; - bool LinkCheck; - uint8_t DemodMargin; - uint8_t NbGateways; -}ComplianceTest; - -/*! - * Prepares the frame buffer to be sent - */ -static void PrepareTxFrame( uint8_t port ) -{ - switch( port ) - { - case 1: - { - uint16_t pressure = 0; - int16_t altitudeBar = 0; - int16_t temperature = 0; - uint8_t batteryLevel = 0; - - pressure = ( uint16_t )( MPL3115ReadPressure( ) / 10 ); // in hPa / 10 - temperature = ( int16_t )( MPL3115ReadTemperature( ) * 100 ); // in °C * 100 - altitudeBar = ( int16_t )( MPL3115ReadAltitude( ) * 10 ); // in m * 10 - batteryLevel = BoardGetBatteryLevel( ); // 1 (very low) to 254 (fully charged) - - AppData[0] = ( SelectorGetValue( ) << 4 ) | AppLedStateOn; - AppData[1] = ( pressure >> 8 ) & 0xFF; - AppData[2] = pressure & 0xFF; - AppData[3] = ( temperature >> 8 ) & 0xFF; - AppData[4] = temperature & 0xFF; - AppData[5] = ( altitudeBar >> 8 ) & 0xFF; - AppData[6] = altitudeBar & 0xFF; - AppData[7] = batteryLevel; - } - break; - case 224: - if( ComplianceTest.LinkCheck == true ) - { - ComplianceTest.LinkCheck = false; - AppDataSize = 3; - AppData[0] = 5; - AppData[1] = ComplianceTest.DemodMargin; - AppData[2] = ComplianceTest.NbGateways; - ComplianceTest.State = 1; - } - else - { - switch( ComplianceTest.State ) - { - case 4: - ComplianceTest.State = 1; - break; - case 1: - AppDataSize = 2; - AppData[0] = ComplianceTest.DownLinkCounter >> 8; - AppData[1] = ComplianceTest.DownLinkCounter; - break; - } - } - break; - default: - break; - } -} - -static void ProcessRxFrame( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - switch( info->RxPort ) // Check Rx port number - { - case 1: // The application LED can be controlled on port 1 or 2 - case 2: - if( info->RxBufferSize == 1 ) - { - AppLedStateOn = info->RxBuffer[0] & 0x01; - Led3StateChanged = true; - } - break; - case 224: - if( ComplianceTest.Running == false ) - { - // Check compliance test enable command (i) - if( ( info->RxBufferSize == 4 ) && - ( info->RxBuffer[0] == 0x01 ) && - ( info->RxBuffer[1] == 0x01 ) && - ( info->RxBuffer[2] == 0x01 ) && - ( info->RxBuffer[3] == 0x01 ) ) - { - IsTxConfirmed = false; - AppPort = 224; - AppDataSize = 2; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.LinkCheck = false; - ComplianceTest.DemodMargin = 0; - ComplianceTest.NbGateways = 0; - ComplianceTest.Running = true; - ComplianceTest.State = 1; - - LoRaMacSetAdrOn( true ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( false ); -#endif - } - } - else - { - ComplianceTest.State = info->RxBuffer[0]; - switch( ComplianceTest.State ) - { - case 0: // Check compliance test disable command (ii) - IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - AppPort = LORAWAN_APP_PORT; - AppDataSize = LORAWAN_APP_DATA_SIZE; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.Running = false; - LoRaMacSetAdrOn( LORAWAN_ADR_ON ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - break; - case 1: // (iii, iv) - AppDataSize = 2; - break; - case 2: // Enable confirmed messages (v) - IsTxConfirmed = true; - ComplianceTest.State = 1; - break; - case 3: // Disable confirmed messages (vi) - IsTxConfirmed = false; - ComplianceTest.State = 1; - break; - case 4: // (vii) - AppDataSize = info->RxBufferSize; - - AppData[0] = 4; - for( uint8_t i = 1; i < AppDataSize; i++ ) - { - AppData[i] = info->RxBuffer[i] + 1; - } - break; - case 5: // (viii) - LoRaMacLinkCheckReq( ); - break; - default: - break; - } - } - break; - default: - break; - } -} - -static bool SendFrame( void ) -{ - uint8_t sendFrameStatus = 0; - - if( IsTxConfirmed == false ) - { - sendFrameStatus = LoRaMacSendFrame( AppPort, AppData, AppDataSize ); - } - else - { - sendFrameStatus = LoRaMacSendConfirmedFrame( AppPort, AppData, AppDataSize, 8 ); - } - - switch( sendFrameStatus ) - { - case 3: // LENGTH_ERROR - // Send empty frame in order to flush MAC commands - LoRaMacSendFrame( 0, NULL, 0 ); - return false; - case 5: // NO_FREE_CHANNEL - // Try again later - return true; - default: - return false; - } -} - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * \brief Function executed on JoinReq Timeout event - */ -static void OnJoinReqTimerEvent( void ) -{ - TimerStop( &JoinReqTimer ); - TxNextPacket = true; -} - -#endif - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - TimerStop( &TxNextPacketTimer ); - TxNextPacket = true; -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - Led1StateChanged = true; -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - Led2StateChanged = true; -} - -/*! - * \brief Function to be executed on MAC layer event - */ -static void OnMacEvent( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - if( flags->Bits.JoinAccept == 1 ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - TimerStop( &JoinReqTimer ); -#endif - IsNetworkJoined = true; - } - else - { - if( flags->Bits.Tx == 1 ) - { - } - - if( flags->Bits.Rx == 1 ) - { - if( ComplianceTest.Running == true ) - { - ComplianceTest.DownLinkCounter++; - if( flags->Bits.LinkCheck == 1 ) - { - ComplianceTest.LinkCheck = true; - ComplianceTest.DemodMargin = info->DemodMargin; - ComplianceTest.NbGateways = info->NbGateways; - } - } - if( flags->Bits.RxData == true ) - { - ProcessRxFrame( flags, info ); - } - - DownlinkStatusUpdate = true; - TimerStart( &Led2Timer ); - } - } - // Schedule a new transmission - ScheduleNextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ -#if( OVER_THE_AIR_ACTIVATION != 0 ) - uint8_t sendFrameStatus = 0; -#endif - bool trySendingFrameAgain = false; - - BoardInitMcu( ); - BoardInitPeriph( ); - - LoRaMacCallbacks.MacEvent = OnMacEvent; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInit( &LoRaMacCallbacks ); - - IsNetworkJoined = false; - -#if( OVER_THE_AIR_ACTIVATION == 0 ) - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - // Choose a random device address based on Board unique ID - // NwkAddr rand [0, 33554431] - DevAddr = randr( 0, 0x01FFFFFF ); - - LoRaMacInitNwkIds( LORAWAN_NETWORK_ID, DevAddr, NwkSKey, AppSKey ); - IsNetworkJoined = true; -#else - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - // Sends a JoinReq Command every OVER_THE_AIR_ACTIVATION_DUTYCYCLE - // seconds until the network is joined - TimerInit( &JoinReqTimer, OnJoinReqTimerEvent ); - TimerSetValue( &JoinReqTimer, OVER_THE_AIR_ACTIVATION_DUTYCYCLE ); -#endif - - TxNextPacket = true; - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - LoRaMacSetAdrOn( LORAWAN_ADR_ON ); - LoRaMacSetPublicNetwork( LORAWAN_PUBLIC_NETWORK ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - - while( 1 ) - { - while( IsNetworkJoined == false ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - if( TxNextPacket == true ) - { - TxNextPacket = false; - - sendFrameStatus = LoRaMacJoinReq( DevEui, AppEui, AppKey ); - switch( sendFrameStatus ) - { - case 1: // BUSY - break; - case 0: // OK - case 2: // NO_NETWORK_JOINED - case 3: // LENGTH_PORT_ERROR - case 4: // MAC_CMD_ERROR - case 6: // DEVICE_OFF - default: - // Relaunch timer for next trial - TimerStart( &JoinReqTimer ); - break; - } - } - TimerLowPowerHandler( ); -#endif - } - - if( Led1StateChanged == true ) - { - Led1StateChanged = false; - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); - } - if( Led2StateChanged == true ) - { - Led2StateChanged = false; - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); - } - if( Led3StateChanged == true ) - { - Led3StateChanged = false; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - if( DownlinkStatusUpdate == true ) - { - DownlinkStatusUpdate = false; - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - } - - if( ScheduleNextTx == true ) - { - ScheduleNextTx = false; - - if( ComplianceTest.Running == true ) - { - TxNextPacket = true; - } - else - { - // Schedule next packet transmission - TxDutyCycleTime = APP_TX_DUTYCYCLE + randr( -APP_TX_DUTYCYCLE_RND, APP_TX_DUTYCYCLE_RND ); - TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); - TimerStart( &TxNextPacketTimer ); - } - } - - if( trySendingFrameAgain == true ) - { - trySendingFrameAgain = SendFrame( ); - } - if( TxNextPacket == true ) - { - TxNextPacket = false; - - PrepareTxFrame( AppPort ); - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - - trySendingFrameAgain = SendFrame( ); - } - - TimerLowPowerHandler( ); - } -} diff --git a/src/apps/LoRaMac/classB/Bleeper-76/main.c b/src/apps/LoRaMac/classB/Bleeper-76/main.c deleted file mode 100644 index 8c3899be3..000000000 --- a/src/apps/LoRaMac/classB/Bleeper-76/main.c +++ /dev/null @@ -1,704 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRaMac classB device implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ - -#include -#include -#include "board.h" - -#include "LoRaMac.h" -#include "Comissioning.h" - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptive Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -#if defined( USE_BAND_868 ) - -#include "LoRaMacTest.h" - -/*! - * LoRaWAN ETSI duty cycle control enable/disable - * - * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes - */ -#define LORAWAN_DUTYCYCLE_ON true - -#endif - -/*! - * LoRaWAN application port - */ -#define LORAWAN_APP_PORT 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 8 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Application port - */ -static uint8_t AppPort = LORAWAN_APP_PORT; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Indicates if the node is sending confirmed or unconfirmed messages - */ -static uint8_t IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - -/*! - * Defines the application data transmission duty cycle - */ -static uint32_t TxDutyCycleTime; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -/*! - * Specifies the state of the application LED - */ -static bool AppLedStateOn = false; - -/*! - * Timer to handle the state of LED1 - */ -static TimerEvent_t Led1Timer; - -/*! - * Timer to handle the state of LED2 - */ -static TimerEvent_t Led2Timer; - -/*! - * Indicates if a new packet can be sent - */ -static bool NextTx = true; - -/*! - * Device states - */ -static enum eDevicState -{ - DEVICE_STATE_INIT, - DEVICE_STATE_JOIN, - DEVICE_STATE_SEND, - DEVICE_STATE_CYCLE, - DEVICE_STATE_SLEEP -}DeviceState; - -/*! - * LoRaWAN compliance tests support data - */ -struct ComplianceTest_s -{ - bool Running; - uint8_t State; - bool IsTxConfirmed; - uint8_t AppPort; - uint8_t AppDataSize; - uint8_t *AppDataBuffer; - uint16_t DownLinkCounter; - bool LinkCheck; - uint8_t DemodMargin; - uint8_t NbGateways; -}ComplianceTest; - -/*! - * \brief Prepares the payload of the frame - */ -static void PrepareTxFrame( uint8_t port ) -{ - switch( port ) - { - case 1: - { - uint16_t pressure = 0; - int16_t altitudeBar = 0; - int16_t temperature = 0; - uint8_t batteryLevel = 0; - - pressure = ( uint16_t )( MPL3115ReadPressure( ) / 10 ); // in hPa / 10 - temperature = ( int16_t )( MPL3115ReadTemperature( ) * 100 ); // in °C * 100 - altitudeBar = ( int16_t )( MPL3115ReadAltitude( ) * 10 ); // in m * 10 - batteryLevel = BoardGetBatteryLevel( ); // 1 (very low) to 254 (fully charged) - - AppData[0] = ( SelectorGetValue( ) << 4 ) | AppLedStateOn; - AppData[1] = ( pressure >> 8 ) & 0xFF; - AppData[2] = pressure & 0xFF; - AppData[3] = ( temperature >> 8 ) & 0xFF; - AppData[4] = temperature & 0xFF; - AppData[5] = ( altitudeBar >> 8 ) & 0xFF; - AppData[6] = altitudeBar & 0xFF; - AppData[7] = batteryLevel; - } - break; - case 224: - if( ComplianceTest.LinkCheck == true ) - { - ComplianceTest.LinkCheck = false; - AppDataSize = 3; - AppData[0] = 5; - AppData[1] = ComplianceTest.DemodMargin; - AppData[2] = ComplianceTest.NbGateways; - ComplianceTest.State = 1; - } - else - { - switch( ComplianceTest.State ) - { - case 4: - ComplianceTest.State = 1; - break; - case 1: - AppDataSize = 2; - AppData[0] = ComplianceTest.DownLinkCounter >> 8; - AppData[1] = ComplianceTest.DownLinkCounter; - break; - } - } - break; - default: - break; - } -} - -/*! - * \brief Prepares the payload of the frame - * - * \retval [0: frame could be send, 1: error] - */ -static bool SendFrame( void ) -{ - McpsReq_t mcpsReq; - LoRaMacTxInfo_t txInfo; - - if( LoRaMacQueryTxPossible( AppDataSize, &txInfo ) != LORAMAC_STATUS_OK ) - { - // Send empty frame in order to flush MAC commands - mcpsReq.Type = MCPS_UNCONFIRMED; - mcpsReq.Req.Unconfirmed.fBuffer = NULL; - mcpsReq.Req.Unconfirmed.fBufferSize = 0; - mcpsReq.Req.Unconfirmed.Datarate = DR_0; - } - else - { - if( IsTxConfirmed == false ) - { - mcpsReq.Type = MCPS_UNCONFIRMED; - mcpsReq.Req.Unconfirmed.fPort = AppPort; - mcpsReq.Req.Unconfirmed.fBuffer = AppData; - mcpsReq.Req.Unconfirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Unconfirmed.Datarate = DR_0; - } - else - { - mcpsReq.Type = MCPS_CONFIRMED; - mcpsReq.Req.Confirmed.fPort = AppPort; - mcpsReq.Req.Confirmed.fBuffer = AppData; - mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; - mcpsReq.Req.Confirmed.Datarate = DR_0; - } - } - - if( LoRaMacMcpsRequest( &mcpsReq ) == LORAMAC_STATUS_OK ) - { - return false; - } - return true; -} - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - MibRequestConfirm_t mibReq; - LoRaMacStatus_t status; - - TimerStop( &TxNextPacketTimer ); - - mibReq.Type = MIB_NETWORK_JOINED; - status = LoRaMacMibGetRequestConfirm( &mibReq ); - - if( status == LORAMAC_STATUS_OK ) - { - if( mibReq.Param.IsNetworkJoined == true ) - { - DeviceState = DEVICE_STATE_SEND; - NextTx = true; - } - else - { - DeviceState = DEVICE_STATE_JOIN; - } - } -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); -} - -/*! - * \brief MCPS-Confirm event function - * - * \param [IN] McpsConfirm - Pointer to the confirm structure, - * containing confirm attributes. - */ -static void McpsConfirm( McpsConfirm_t *McpsConfirm ) -{ - if( McpsConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK ) - { - switch( McpsConfirm->McpsRequest ) - { - case MCPS_UNCONFIRMED: - { - // Check Datarate - // Check TxPower - break; - } - case MCPS_CONFIRMED: - { - // Check Datarate - // Check TxPower - // Check AckReceived - // Check NbRetries - break; - } - case MCPS_PROPRIETARY: - { - break; - } - default: - break; - } - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - } - NextTx = true; -} - -/*! - * \brief MCPS-Indication event function - * - * \param [IN] McpsIndication - Pointer to the indication structure, - * containing indication attributes. - */ -static void McpsIndication( McpsIndication_t *McpsIndication ) -{ - if( McpsIndication->Status != LORAMAC_EVENT_INFO_STATUS_OK ) - { - return; - } - - switch( McpsIndication->McpsIndication ) - { - case MCPS_UNCONFIRMED: - { - break; - } - case MCPS_CONFIRMED: - { - break; - } - case MCPS_PROPRIETARY: - { - break; - } - case MCPS_MULTICAST: - { - break; - } - default: - break; - } - - // Check Multicast - // Check Port - // Check Datarate - // Check FramePending - // Check Buffer - // Check BufferSize - // Check Rssi - // Check Snr - // Check RxSlot - - if( ComplianceTest.Running == true ) - { - ComplianceTest.DownLinkCounter++; - } - - if( McpsIndication->RxData == true ) - { - switch( McpsIndication->Port ) - { - case 1: // The application LED can be controlled on port 1 or 2 - case 2: - if( McpsIndication->BufferSize == 1 ) - { - AppLedStateOn = McpsIndication->Buffer[0] & 0x01; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - break; - case 224: - if( ComplianceTest.Running == false ) - { - // Check compliance test enable command (i) - if( ( McpsIndication->BufferSize == 4 ) && - ( McpsIndication->Buffer[0] == 0x01 ) && - ( McpsIndication->Buffer[1] == 0x01 ) && - ( McpsIndication->Buffer[2] == 0x01 ) && - ( McpsIndication->Buffer[3] == 0x01 ) ) - { - IsTxConfirmed = false; - AppPort = 224; - AppDataSize = 2; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.LinkCheck = false; - ComplianceTest.DemodMargin = 0; - ComplianceTest.NbGateways = 0; - ComplianceTest.Running = true; - ComplianceTest.State = 1; - - MibRequestConfirm_t mibReq; - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = true; - LoRaMacMibSetRequestConfirm( &mibReq ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( false ); -#endif - } - } - else - { - ComplianceTest.State = McpsIndication->Buffer[0]; - switch( ComplianceTest.State ) - { - case 0: // Check compliance test disable command (ii) - IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - AppPort = LORAWAN_APP_PORT; - AppDataSize = LORAWAN_APP_DATA_SIZE; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.Running = false; - - MibRequestConfirm_t mibReq; - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = LORAWAN_ADR_ON; - LoRaMacMibSetRequestConfirm( &mibReq ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - break; - case 1: // (iii, iv) - AppDataSize = 2; - break; - case 2: // Enable confirmed messages (v) - IsTxConfirmed = true; - ComplianceTest.State = 1; - break; - case 3: // Disable confirmed messages (vi) - IsTxConfirmed = false; - ComplianceTest.State = 1; - break; - case 4: // (vii) - AppDataSize = McpsIndication->BufferSize; - - AppData[0] = 4; - for( uint8_t i = 1; i < AppDataSize; i++ ) - { - AppData[i] = McpsIndication->Buffer[i] + 1; - } - break; - case 5: // (viii) - { - MlmeReq_t mlmeReq; - mlmeReq.Type = MLME_LINK_CHECK; - LoRaMacMlmeRequest( &mlmeReq ); - } - break; - default: - break; - } - } - break; - default: - break; - } - } - - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - TimerStart( &Led2Timer ); -} - -/*! - * \brief MLME-Confirm event function - * - * \param [IN] MlmeConfirm - Pointer to the confirm structure, - * containing confirm attributes. - */ -static void MlmeConfirm( MlmeConfirm_t *MlmeConfirm ) -{ - if( MlmeConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK ) - { - switch( MlmeConfirm->MlmeRequest ) - { - case MLME_JOIN: - { - // Status is OK, node has joined the network - break; - } - case MLME_LINK_CHECK: - { - // Check DemodMargin - // Check NbGateways - if( ComplianceTest.Running == true ) - { - ComplianceTest.LinkCheck = true; - ComplianceTest.DemodMargin = MlmeConfirm->DemodMargin; - ComplianceTest.NbGateways = MlmeConfirm->NbGateways; - } - break; - } - default: - break; - } - } - NextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ - LoRaMacPrimitives_t LoRaMacPrimitives; - LoRaMacCallback_t LoRaMacCallbacks; - MibRequestConfirm_t mibReq; - - BoardInitMcu( ); - BoardInitPeriph( ); - - DeviceState = DEVICE_STATE_INIT; - - while( 1 ) - { - switch( DeviceState ) - { - case DEVICE_STATE_INIT: - { - LoRaMacPrimitives.MacMcpsConfirm = McpsConfirm; - LoRaMacPrimitives.MacMcpsIndication = McpsIndication; - LoRaMacPrimitives.MacMlmeConfirm = MlmeConfirm; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks ); - - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = LORAWAN_ADR_ON; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_PUBLIC_NETWORK; - mibReq.Param.EnablePublicNetwork = LORAWAN_PUBLIC_NETWORK; - LoRaMacMibSetRequestConfirm( &mibReq ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - DeviceState = DEVICE_STATE_JOIN; - break; - } - case DEVICE_STATE_JOIN: - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - MlmeReq_t mlmeReq; - - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - mlmeReq.Type = MLME_JOIN; - - mlmeReq.Req.Join.DevEui = DevEui; - mlmeReq.Req.Join.AppEui = AppEui; - mlmeReq.Req.Join.AppKey = AppKey; - - if( NextTx == true ) - { - LoRaMacMlmeRequest( &mlmeReq ); - } - - // Schedule next packet transmission - TxDutyCycleTime = OVER_THE_AIR_ACTIVATION_DUTYCYCLE; - DeviceState = DEVICE_STATE_CYCLE; - -#else - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - - // Choose a random device address - DevAddr = randr( 0, 0x01FFFFFF ); - - mibReq.Type = MIB_NET_ID; - mibReq.Param.NetID = LORAWAN_NETWORK_ID; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_DEV_ADDR; - mibReq.Param.DevAddr = DevAddr; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_NWK_SKEY; - mibReq.Param.NwkSKey = NwkSKey; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_APP_SKEY; - mibReq.Param.AppSKey = AppSKey; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_NETWORK_JOINED; - mibReq.Param.IsNetworkJoined = true; - LoRaMacMibSetRequestConfirm( &mibReq ); - - DeviceState = DEVICE_STATE_SEND; -#endif - break; - } - case DEVICE_STATE_SEND: - { - if( NextTx == true ) - { - PrepareTxFrame( AppPort ); - - NextTx = SendFrame( ); - } - if( ComplianceTest.Running == true ) - { - // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms - } - else - { - // Schedule next packet transmission - TxDutyCycleTime = APP_TX_DUTYCYCLE + randr( -APP_TX_DUTYCYCLE_RND, APP_TX_DUTYCYCLE_RND ); - } - DeviceState = DEVICE_STATE_CYCLE; - break; - } - case DEVICE_STATE_CYCLE: - { - // Schedule next packet transmission - TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); - TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; - break; - } - case DEVICE_STATE_SLEEP: - { - // Wake up through events - TimerLowPowerHandler( ); - break; - } - default: - { - DeviceState = DEVICE_STATE_INIT; - break; - } - } - } -} diff --git a/src/apps/LoRaMac/classB/LoRaMote/main-api-v3.c b/src/apps/LoRaMac/classB/LoRaMote/main-api-v3.c index 4459e9c8b..fd7474236 100644 --- a/src/apps/LoRaMac/classB/LoRaMote/main-api-v3.c +++ b/src/apps/LoRaMac/classB/LoRaMote/main-api-v3.c @@ -56,6 +56,19 @@ Maintainer: Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -523,6 +536,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif while( 1 ) diff --git a/src/apps/LoRaMac/classB/LoRaMote/main.c b/src/apps/LoRaMac/classB/LoRaMote/main.c index c2fbce509..a4093c852 100644 --- a/src/apps/LoRaMac/classB/LoRaMote/main.c +++ b/src/apps/LoRaMac/classB/LoRaMote/main.c @@ -61,6 +61,19 @@ Maintainer: Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -313,7 +326,7 @@ static bool SendFrame( void ) mcpsReq.Req.Confirmed.fPort = AppPort; mcpsReq.Req.Confirmed.fBuffer = AppData; mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; + mcpsReq.Req.Confirmed.NbTrials = 8; mcpsReq.Req.Confirmed.Datarate = DR_0; } } @@ -395,7 +408,7 @@ static void McpsConfirm( McpsConfirm_t *McpsConfirm ) // Check Datarate // Check TxPower // Check AckReceived - // Check NbRetries + // Check NbTrials break; } case MCPS_PROPRIETARY: @@ -647,6 +660,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif DeviceState = DEVICE_STATE_JOIN; break; @@ -716,7 +739,7 @@ int main( void ) if( ComplianceTest.Running == true ) { // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms + TxDutyCycleTime = 300000; // 300 ms } else { @@ -728,11 +751,11 @@ int main( void ) } case DEVICE_STATE_CYCLE: { + DeviceState = DEVICE_STATE_SLEEP; + // Schedule next packet transmission TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; break; } case DEVICE_STATE_SLEEP: diff --git a/src/apps/LoRaMac/classB/SK-iM880A/main-api-v3.c b/src/apps/LoRaMac/classB/SK-iM880A/main-api-v3.c index 48694af73..f997d39b8 100644 --- a/src/apps/LoRaMac/classB/SK-iM880A/main-api-v3.c +++ b/src/apps/LoRaMac/classB/SK-iM880A/main-api-v3.c @@ -56,6 +56,19 @@ Maintainer: Andreas Pella (IMST GmbH), Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -473,6 +486,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif while( 1 ) diff --git a/src/apps/LoRaMac/classB/SK-iM880A/main.c b/src/apps/LoRaMac/classB/SK-iM880A/main.c index 73cb69b02..e815eed4c 100644 --- a/src/apps/LoRaMac/classB/SK-iM880A/main.c +++ b/src/apps/LoRaMac/classB/SK-iM880A/main.c @@ -59,6 +59,19 @@ Maintainer: Andreas Pella (IMST GmbH), Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -261,7 +274,7 @@ static bool SendFrame( void ) mcpsReq.Req.Confirmed.fPort = AppPort; mcpsReq.Req.Confirmed.fBuffer = AppData; mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; + mcpsReq.Req.Confirmed.NbTrials = 8; mcpsReq.Req.Confirmed.Datarate = DR_0; } } @@ -343,7 +356,7 @@ static void McpsConfirm( McpsConfirm_t *McpsConfirm ) // Check Datarate // Check TxPower // Check AckReceived - // Check NbRetries + // Check NbTrials break; } case MCPS_PROPRIETARY: @@ -595,6 +608,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif DeviceState = DEVICE_STATE_JOIN; break; @@ -664,7 +687,7 @@ int main( void ) if( ComplianceTest.Running == true ) { // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms + TxDutyCycleTime = 300000; // 300 ms } else { @@ -676,11 +699,11 @@ int main( void ) } case DEVICE_STATE_CYCLE: { + DeviceState = DEVICE_STATE_SLEEP; + // Schedule next packet transmission TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; break; } case DEVICE_STATE_SLEEP: diff --git a/src/apps/LoRaMac/classB/SensorNode/main-api-v3.c b/src/apps/LoRaMac/classB/SensorNode/main-api-v3.c index 04d6c5516..636a7113d 100644 --- a/src/apps/LoRaMac/classB/SensorNode/main-api-v3.c +++ b/src/apps/LoRaMac/classB/SensorNode/main-api-v3.c @@ -56,6 +56,19 @@ Maintainer: Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -537,6 +550,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif while( 1 ) diff --git a/src/apps/LoRaMac/classB/SensorNode/main.c b/src/apps/LoRaMac/classB/SensorNode/main.c index 2b062ba5c..715449de3 100644 --- a/src/apps/LoRaMac/classB/SensorNode/main.c +++ b/src/apps/LoRaMac/classB/SensorNode/main.c @@ -58,6 +58,19 @@ Maintainer: Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -238,8 +251,8 @@ static void PrepareTxFrame( uint8_t port ) altitudeGps = GpsGetLatestGpsAltitude( ); // in m AppData[0] = AppLedStateOn; - AppData[1] = temperature; - AppData[2] = batteryLevel; + AppData[1] = temperature; // Signed degrees Celcius in half degree units. So, +/-63 C + AppData[2] = batteryLevel; // Per LoRaWAN spec; 0=Charging; 1...254 = level, 255 = N/A AppData[3] = ( latitude >> 16 ) & 0xFF; AppData[4] = ( latitude >> 8 ) & 0xFF; AppData[5] = latitude & 0xFF; @@ -315,7 +328,7 @@ static bool SendFrame( void ) mcpsReq.Req.Confirmed.fPort = AppPort; mcpsReq.Req.Confirmed.fBuffer = AppData; mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; + mcpsReq.Req.Confirmed.NbTrials = 8; mcpsReq.Req.Confirmed.Datarate = DR_0; } } @@ -377,7 +390,7 @@ static void OnLed2TimerEvent( void ) /*! * \brief Function executed on Led 4 Timeout event */ -void OnLed4TimerEvent( void ) +static void OnLed4TimerEvent( void ) { TimerStop( &Led4Timer ); // Switch LED 4 OFF @@ -406,7 +419,7 @@ static void McpsConfirm( McpsConfirm_t *McpsConfirm ) // Check Datarate // Check TxPower // Check AckReceived - // Check NbRetries + // Check NbTrials break; } case MCPS_PROPRIETARY: @@ -661,6 +674,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif DeviceState = DEVICE_STATE_JOIN; break; @@ -730,7 +753,7 @@ int main( void ) if( ComplianceTest.Running == true ) { // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms + TxDutyCycleTime = 300000; // 300 ms } else { @@ -742,11 +765,11 @@ int main( void ) } case DEVICE_STATE_CYCLE: { + DeviceState = DEVICE_STATE_SLEEP; + // Schedule next packet transmission TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; break; } case DEVICE_STATE_SLEEP: diff --git a/src/apps/LoRaMac/classC/Bleeper-72/Comissioning.h b/src/apps/LoRaMac/classC/Bleeper-72/Comissioning.h deleted file mode 100644 index f663ac2f8..000000000 --- a/src/apps/LoRaMac/classC/Bleeper-72/Comissioning.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2015 Semtech - -Description: End device comissioning parameters - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __LORA_COMISSIONING_H__ -#define __LORA_COMISSIONING_H__ - -/*! - * When set to 1 the application uses the Over-the-Air activation procedure - * When set to 0 the application uses the Personalization activation procedure - */ -#define OVER_THE_AIR_ACTIVATION 0 - -/*! - * Indicates if the end-device is to be connected to a private or public network - */ -#define LORAWAN_PUBLIC_NETWORK true - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Mote device IEEE EUI (big endian) - * - * \remark In this application the value is automatically generated by calling - * BoardGetUniqueId function - */ -#define LORAWAN_DEVICE_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * Application IEEE EUI (big endian) - */ -#define LORAWAN_APPLICATION_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * AES encryption/decryption cipher application key - */ -#define LORAWAN_APPLICATION_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#else - -/*! - * Current network ID - */ -#define LORAWAN_NETWORK_ID ( uint32_t )0 - -/*! - * Device address on the network (big endian) - * - * \remark In this application the value is automatically generated using - * a pseudo random generator seeded with a value derived from - * BoardUniqueId value - */ -#define LORAWAN_DEVICE_ADDRESS ( uint32_t )0x00000000 - -/*! - * AES encryption/decryption cipher network session key - */ -#define LORAWAN_NWKSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -/*! - * AES encryption/decryption cipher application session key - */ -#define LORAWAN_APPSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#endif - -#endif // __LORA_COMISSIONING_H__ diff --git a/src/apps/LoRaMac/classC/Bleeper-72/main-api-v3.c b/src/apps/LoRaMac/classC/Bleeper-72/main-api-v3.c deleted file mode 100644 index 4fec71317..000000000 --- a/src/apps/LoRaMac/classC/Bleeper-72/main-api-v3.c +++ /dev/null @@ -1,573 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRaMac classC device implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include -#include "board.h" - -#include "LoRaMac-api-v3.h" -#include "Comissioning.h" - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptative Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -#if defined( USE_BAND_868 ) - -/*! - * LoRaWAN ETSI duty cycle control enable/disable - * - * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes - */ -#define LORAWAN_DUTYCYCLE_ON true - -#endif - -/*! - * LoRaWAN application port - */ -#define LORAWAN_APP_PORT 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 8 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Indicates if the MAC layer has already joined a network. - */ -static bool IsNetworkJoined = false; - -/*! - * Application port - */ -static uint8_t AppPort = LORAWAN_APP_PORT; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Indicates if the node is sending confirmed or unconfirmed messages - */ -static uint8_t IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - -/*! - * Defines the application data transmission duty cycle - */ -static uint32_t TxDutyCycleTime; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Defines the join request timer - */ -static TimerEvent_t JoinReqTimer; - -#endif - -/*! - * Indicates if a new packet can be sent - */ -static bool TxNextPacket = true; -static bool ScheduleNextTx = false; -static bool DownlinkStatusUpdate = false; - -static LoRaMacCallbacks_t LoRaMacCallbacks; - -static TimerEvent_t Led1Timer; -volatile bool Led1StateChanged = false; - -static TimerEvent_t Led2Timer; -volatile bool Led2StateChanged = false; - -static bool AppLedStateOn = false; -volatile bool Led3StateChanged = false; - -/*! - * LoRaWAN compliance tests support data - */ -struct ComplianceTest_s -{ - bool Running; - uint8_t State; - bool IsTxConfirmed; - uint8_t AppPort; - uint8_t AppDataSize; - uint8_t *AppDataBuffer; - uint16_t DownLinkCounter; - bool LinkCheck; - uint8_t DemodMargin; - uint8_t NbGateways; -}ComplianceTest; - -/*! - * Prepares the frame buffer to be sent - */ -static void PrepareTxFrame( uint8_t port ) -{ - switch( port ) - { - case 1: - { - uint16_t pressure = 0; - int16_t altitudeBar = 0; - int16_t temperature = 0; - uint8_t batteryLevel = 0; - - pressure = ( uint16_t )( MPL3115ReadPressure( ) / 10 ); // in hPa / 10 - temperature = ( int16_t )( MPL3115ReadTemperature( ) * 100 ); // in °C * 100 - altitudeBar = ( int16_t )( MPL3115ReadAltitude( ) * 10 ); // in m * 10 - batteryLevel = BoardGetBatteryLevel( ); // 1 (very low) to 254 (fully charged) - - AppData[0] = ( SelectorGetValue( ) << 4 ) | AppLedStateOn; - AppData[1] = ( pressure >> 8 ) & 0xFF; - AppData[2] = pressure & 0xFF; - AppData[3] = ( temperature >> 8 ) & 0xFF; - AppData[4] = temperature & 0xFF; - AppData[5] = ( altitudeBar >> 8 ) & 0xFF; - AppData[6] = altitudeBar & 0xFF; - AppData[7] = batteryLevel; - } - break; - case 224: - if( ComplianceTest.LinkCheck == true ) - { - ComplianceTest.LinkCheck = false; - AppDataSize = 3; - AppData[0] = 5; - AppData[1] = ComplianceTest.DemodMargin; - AppData[2] = ComplianceTest.NbGateways; - ComplianceTest.State = 1; - } - else - { - switch( ComplianceTest.State ) - { - case 4: - ComplianceTest.State = 1; - break; - case 1: - AppDataSize = 2; - AppData[0] = ComplianceTest.DownLinkCounter >> 8; - AppData[1] = ComplianceTest.DownLinkCounter; - break; - } - } - break; - default: - break; - } -} - -static void ProcessRxFrame( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - switch( info->RxPort ) // Check Rx port number - { - case 1: // The application LED can be controlled on port 1 or 2 - case 2: - if( info->RxBufferSize == 1 ) - { - AppLedStateOn = info->RxBuffer[0] & 0x01; - Led3StateChanged = true; - } - break; - case 224: - if( ComplianceTest.Running == false ) - { - // Check compliance test enable command (i) - if( ( info->RxBufferSize == 4 ) && - ( info->RxBuffer[0] == 0x01 ) && - ( info->RxBuffer[1] == 0x01 ) && - ( info->RxBuffer[2] == 0x01 ) && - ( info->RxBuffer[3] == 0x01 ) ) - { - IsTxConfirmed = false; - AppPort = 224; - AppDataSize = 2; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.LinkCheck = false; - ComplianceTest.DemodMargin = 0; - ComplianceTest.NbGateways = 0; - ComplianceTest.Running = true; - ComplianceTest.State = 1; - - LoRaMacSetAdrOn( true ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( false ); -#endif - } - } - else - { - ComplianceTest.State = info->RxBuffer[0]; - switch( ComplianceTest.State ) - { - case 0: // Check compliance test disable command (ii) - IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - AppPort = LORAWAN_APP_PORT; - AppDataSize = LORAWAN_APP_DATA_SIZE; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.Running = false; - LoRaMacSetAdrOn( LORAWAN_ADR_ON ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - break; - case 1: // (iii, iv) - AppDataSize = 2; - break; - case 2: // Enable confirmed messages (v) - IsTxConfirmed = true; - ComplianceTest.State = 1; - break; - case 3: // Disable confirmed messages (vi) - IsTxConfirmed = false; - ComplianceTest.State = 1; - break; - case 4: // (vii) - AppDataSize = info->RxBufferSize; - - AppData[0] = 4; - for( uint8_t i = 1; i < AppDataSize; i++ ) - { - AppData[i] = info->RxBuffer[i] + 1; - } - break; - case 5: // (viii) - LoRaMacLinkCheckReq( ); - break; - default: - break; - } - } - break; - default: - break; - } -} - -static bool SendFrame( void ) -{ - uint8_t sendFrameStatus = 0; - - if( IsTxConfirmed == false ) - { - sendFrameStatus = LoRaMacSendFrame( AppPort, AppData, AppDataSize ); - } - else - { - sendFrameStatus = LoRaMacSendConfirmedFrame( AppPort, AppData, AppDataSize, 8 ); - } - - switch( sendFrameStatus ) - { - case 3: // LENGTH_ERROR - // Send empty frame in order to flush MAC commands - LoRaMacSendFrame( 0, NULL, 0 ); - return false; - case 5: // NO_FREE_CHANNEL - // Try again later - return true; - default: - return false; - } -} - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * \brief Function executed on JoinReq Timeout event - */ -static void OnJoinReqTimerEvent( void ) -{ - TimerStop( &JoinReqTimer ); - TxNextPacket = true; -} - -#endif - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - TimerStop( &TxNextPacketTimer ); - TxNextPacket = true; -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - Led1StateChanged = true; -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - Led2StateChanged = true; -} - -/*! - * \brief Function to be executed on MAC layer event - */ -static void OnMacEvent( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - if( flags->Bits.JoinAccept == 1 ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - TimerStop( &JoinReqTimer ); -#endif - IsNetworkJoined = true; - } - else - { - if( flags->Bits.Tx == 1 ) - { - } - - if( flags->Bits.Rx == 1 ) - { - if( ComplianceTest.Running == true ) - { - ComplianceTest.DownLinkCounter++; - if( flags->Bits.LinkCheck == 1 ) - { - ComplianceTest.LinkCheck = true; - ComplianceTest.DemodMargin = info->DemodMargin; - ComplianceTest.NbGateways = info->NbGateways; - } - } - if( flags->Bits.RxData == true ) - { - ProcessRxFrame( flags, info ); - } - - DownlinkStatusUpdate = true; - TimerStart( &Led2Timer ); - } - } - // Schedule a new transmission - ScheduleNextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ -#if( OVER_THE_AIR_ACTIVATION != 0 ) - uint8_t sendFrameStatus = 0; -#endif - bool trySendingFrameAgain = false; - - BoardInitMcu( ); - BoardInitPeriph( ); - - LoRaMacCallbacks.MacEvent = OnMacEvent; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInit( &LoRaMacCallbacks ); - - IsNetworkJoined = false; - -#if( OVER_THE_AIR_ACTIVATION == 0 ) - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - // Choose a random device address based on Board unique ID - // NwkAddr rand [0, 33554431] - DevAddr = randr( 0, 0x01FFFFFF ); - - LoRaMacInitNwkIds( LORAWAN_NETWORK_ID, DevAddr, NwkSKey, AppSKey ); - IsNetworkJoined = true; -#else - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - // Sends a JoinReq Command every OVER_THE_AIR_ACTIVATION_DUTYCYCLE - // seconds until the network is joined - TimerInit( &JoinReqTimer, OnJoinReqTimerEvent ); - TimerSetValue( &JoinReqTimer, OVER_THE_AIR_ACTIVATION_DUTYCYCLE ); -#endif - - TxNextPacket = true; - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - LoRaMacSetAdrOn( LORAWAN_ADR_ON ); - LoRaMacSetPublicNetwork( LORAWAN_PUBLIC_NETWORK ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - LoRaMacSetDeviceClass( CLASS_C ); - - while( 1 ) - { - while( IsNetworkJoined == false ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - if( TxNextPacket == true ) - { - TxNextPacket = false; - - sendFrameStatus = LoRaMacJoinReq( DevEui, AppEui, AppKey ); - switch( sendFrameStatus ) - { - case 1: // BUSY - break; - case 0: // OK - case 2: // NO_NETWORK_JOINED - case 3: // LENGTH_PORT_ERROR - case 4: // MAC_CMD_ERROR - case 6: // DEVICE_OFF - default: - // Relaunch timer for next trial - TimerStart( &JoinReqTimer ); - break; - } - } - TimerLowPowerHandler( ); -#endif - } - - if( Led1StateChanged == true ) - { - Led1StateChanged = false; - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); - } - if( Led2StateChanged == true ) - { - Led2StateChanged = false; - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); - } - if( Led3StateChanged == true ) - { - Led3StateChanged = false; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - if( DownlinkStatusUpdate == true ) - { - DownlinkStatusUpdate = false; - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - } - - if( ScheduleNextTx == true ) - { - ScheduleNextTx = false; - - if( ComplianceTest.Running == true ) - { - TxNextPacket = true; - } - else - { - // Schedule next packet transmission - TxDutyCycleTime = APP_TX_DUTYCYCLE + randr( -APP_TX_DUTYCYCLE_RND, APP_TX_DUTYCYCLE_RND ); - TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); - TimerStart( &TxNextPacketTimer ); - } - } - - if( trySendingFrameAgain == true ) - { - trySendingFrameAgain = SendFrame( ); - } - if( TxNextPacket == true ) - { - TxNextPacket = false; - - PrepareTxFrame( AppPort ); - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - - trySendingFrameAgain = SendFrame( ); - } - - TimerLowPowerHandler( ); - } -} diff --git a/src/apps/LoRaMac/classC/Bleeper-72/main.c b/src/apps/LoRaMac/classC/Bleeper-72/main.c deleted file mode 100644 index 3ace39358..000000000 --- a/src/apps/LoRaMac/classC/Bleeper-72/main.c +++ /dev/null @@ -1,708 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRaMac classC device implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ - -#include -#include -#include "board.h" - -#include "LoRaMac.h" -#include "Comissioning.h" - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptive Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -#if defined( USE_BAND_868 ) - -#include "LoRaMacTest.h" - -/*! - * LoRaWAN ETSI duty cycle control enable/disable - * - * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes - */ -#define LORAWAN_DUTYCYCLE_ON true - -#endif - -/*! - * LoRaWAN application port - */ -#define LORAWAN_APP_PORT 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 8 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Application port - */ -static uint8_t AppPort = LORAWAN_APP_PORT; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Indicates if the node is sending confirmed or unconfirmed messages - */ -static uint8_t IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - -/*! - * Defines the application data transmission duty cycle - */ -static uint32_t TxDutyCycleTime; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -/*! - * Specifies the state of the application LED - */ -static bool AppLedStateOn = false; - -/*! - * Timer to handle the state of LED1 - */ -static TimerEvent_t Led1Timer; - -/*! - * Timer to handle the state of LED2 - */ -static TimerEvent_t Led2Timer; - -/*! - * Indicates if a new packet can be sent - */ -static bool NextTx = true; - -/*! - * Device states - */ -static enum eDevicState -{ - DEVICE_STATE_INIT, - DEVICE_STATE_JOIN, - DEVICE_STATE_SEND, - DEVICE_STATE_CYCLE, - DEVICE_STATE_SLEEP -}DeviceState; - -/*! - * LoRaWAN compliance tests support data - */ -struct ComplianceTest_s -{ - bool Running; - uint8_t State; - bool IsTxConfirmed; - uint8_t AppPort; - uint8_t AppDataSize; - uint8_t *AppDataBuffer; - uint16_t DownLinkCounter; - bool LinkCheck; - uint8_t DemodMargin; - uint8_t NbGateways; -}ComplianceTest; - -/*! - * \brief Prepares the payload of the frame - */ -static void PrepareTxFrame( uint8_t port ) -{ - switch( port ) - { - case 1: - { - uint16_t pressure = 0; - int16_t altitudeBar = 0; - int16_t temperature = 0; - uint8_t batteryLevel = 0; - - pressure = ( uint16_t )( MPL3115ReadPressure( ) / 10 ); // in hPa / 10 - temperature = ( int16_t )( MPL3115ReadTemperature( ) * 100 ); // in °C * 100 - altitudeBar = ( int16_t )( MPL3115ReadAltitude( ) * 10 ); // in m * 10 - batteryLevel = BoardGetBatteryLevel( ); // 1 (very low) to 254 (fully charged) - - AppData[0] = ( SelectorGetValue( ) << 4 ) | AppLedStateOn; - AppData[1] = ( pressure >> 8 ) & 0xFF; - AppData[2] = pressure & 0xFF; - AppData[3] = ( temperature >> 8 ) & 0xFF; - AppData[4] = temperature & 0xFF; - AppData[5] = ( altitudeBar >> 8 ) & 0xFF; - AppData[6] = altitudeBar & 0xFF; - AppData[7] = batteryLevel; - } - break; - case 224: - if( ComplianceTest.LinkCheck == true ) - { - ComplianceTest.LinkCheck = false; - AppDataSize = 3; - AppData[0] = 5; - AppData[1] = ComplianceTest.DemodMargin; - AppData[2] = ComplianceTest.NbGateways; - ComplianceTest.State = 1; - } - else - { - switch( ComplianceTest.State ) - { - case 4: - ComplianceTest.State = 1; - break; - case 1: - AppDataSize = 2; - AppData[0] = ComplianceTest.DownLinkCounter >> 8; - AppData[1] = ComplianceTest.DownLinkCounter; - break; - } - } - break; - default: - break; - } -} - -/*! - * \brief Prepares the payload of the frame - * - * \retval [0: frame could be send, 1: error] - */ -static bool SendFrame( void ) -{ - McpsReq_t mcpsReq; - LoRaMacTxInfo_t txInfo; - - if( LoRaMacQueryTxPossible( AppDataSize, &txInfo ) != LORAMAC_STATUS_OK ) - { - // Send empty frame in order to flush MAC commands - mcpsReq.Type = MCPS_UNCONFIRMED; - mcpsReq.Req.Unconfirmed.fBuffer = NULL; - mcpsReq.Req.Unconfirmed.fBufferSize = 0; - mcpsReq.Req.Unconfirmed.Datarate = DR_0; - } - else - { - if( IsTxConfirmed == false ) - { - mcpsReq.Type = MCPS_UNCONFIRMED; - mcpsReq.Req.Unconfirmed.fPort = AppPort; - mcpsReq.Req.Unconfirmed.fBuffer = AppData; - mcpsReq.Req.Unconfirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Unconfirmed.Datarate = DR_0; - } - else - { - mcpsReq.Type = MCPS_CONFIRMED; - mcpsReq.Req.Confirmed.fPort = AppPort; - mcpsReq.Req.Confirmed.fBuffer = AppData; - mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; - mcpsReq.Req.Confirmed.Datarate = DR_0; - } - } - - if( LoRaMacMcpsRequest( &mcpsReq ) == LORAMAC_STATUS_OK ) - { - return false; - } - return true; -} - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - MibRequestConfirm_t mibReq; - LoRaMacStatus_t status; - - TimerStop( &TxNextPacketTimer ); - - mibReq.Type = MIB_NETWORK_JOINED; - status = LoRaMacMibGetRequestConfirm( &mibReq ); - - if( status == LORAMAC_STATUS_OK ) - { - if( mibReq.Param.IsNetworkJoined == true ) - { - DeviceState = DEVICE_STATE_SEND; - NextTx = true; - } - else - { - DeviceState = DEVICE_STATE_JOIN; - } - } -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); -} - -/*! - * \brief MCPS-Confirm event function - * - * \param [IN] McpsConfirm - Pointer to the confirm structure, - * containing confirm attributes. - */ -static void McpsConfirm( McpsConfirm_t *McpsConfirm ) -{ - if( McpsConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK ) - { - switch( McpsConfirm->McpsRequest ) - { - case MCPS_UNCONFIRMED: - { - // Check Datarate - // Check TxPower - break; - } - case MCPS_CONFIRMED: - { - // Check Datarate - // Check TxPower - // Check AckReceived - // Check NbRetries - break; - } - case MCPS_PROPRIETARY: - { - break; - } - default: - break; - } - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - } - NextTx = true; -} - -/*! - * \brief MCPS-Indication event function - * - * \param [IN] McpsIndication - Pointer to the indication structure, - * containing indication attributes. - */ -static void McpsIndication( McpsIndication_t *McpsIndication ) -{ - if( McpsIndication->Status != LORAMAC_EVENT_INFO_STATUS_OK ) - { - return; - } - - switch( McpsIndication->McpsIndication ) - { - case MCPS_UNCONFIRMED: - { - break; - } - case MCPS_CONFIRMED: - { - break; - } - case MCPS_PROPRIETARY: - { - break; - } - case MCPS_MULTICAST: - { - break; - } - default: - break; - } - - // Check Multicast - // Check Port - // Check Datarate - // Check FramePending - // Check Buffer - // Check BufferSize - // Check Rssi - // Check Snr - // Check RxSlot - - if( ComplianceTest.Running == true ) - { - ComplianceTest.DownLinkCounter++; - } - - if( McpsIndication->RxData == true ) - { - switch( McpsIndication->Port ) - { - case 1: // The application LED can be controlled on port 1 or 2 - case 2: - if( McpsIndication->BufferSize == 1 ) - { - AppLedStateOn = McpsIndication->Buffer[0] & 0x01; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - break; - case 224: - if( ComplianceTest.Running == false ) - { - // Check compliance test enable command (i) - if( ( McpsIndication->BufferSize == 4 ) && - ( McpsIndication->Buffer[0] == 0x01 ) && - ( McpsIndication->Buffer[1] == 0x01 ) && - ( McpsIndication->Buffer[2] == 0x01 ) && - ( McpsIndication->Buffer[3] == 0x01 ) ) - { - IsTxConfirmed = false; - AppPort = 224; - AppDataSize = 2; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.LinkCheck = false; - ComplianceTest.DemodMargin = 0; - ComplianceTest.NbGateways = 0; - ComplianceTest.Running = true; - ComplianceTest.State = 1; - - MibRequestConfirm_t mibReq; - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = true; - LoRaMacMibSetRequestConfirm( &mibReq ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( false ); -#endif - } - } - else - { - ComplianceTest.State = McpsIndication->Buffer[0]; - switch( ComplianceTest.State ) - { - case 0: // Check compliance test disable command (ii) - IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - AppPort = LORAWAN_APP_PORT; - AppDataSize = LORAWAN_APP_DATA_SIZE; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.Running = false; - - MibRequestConfirm_t mibReq; - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = LORAWAN_ADR_ON; - LoRaMacMibSetRequestConfirm( &mibReq ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - break; - case 1: // (iii, iv) - AppDataSize = 2; - break; - case 2: // Enable confirmed messages (v) - IsTxConfirmed = true; - ComplianceTest.State = 1; - break; - case 3: // Disable confirmed messages (vi) - IsTxConfirmed = false; - ComplianceTest.State = 1; - break; - case 4: // (vii) - AppDataSize = McpsIndication->BufferSize; - - AppData[0] = 4; - for( uint8_t i = 1; i < AppDataSize; i++ ) - { - AppData[i] = McpsIndication->Buffer[i] + 1; - } - break; - case 5: // (viii) - { - MlmeReq_t mlmeReq; - mlmeReq.Type = MLME_LINK_CHECK; - LoRaMacMlmeRequest( &mlmeReq ); - } - break; - default: - break; - } - } - break; - default: - break; - } - } - - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - TimerStart( &Led2Timer ); -} - -/*! - * \brief MLME-Confirm event function - * - * \param [IN] MlmeConfirm - Pointer to the confirm structure, - * containing confirm attributes. - */ -static void MlmeConfirm( MlmeConfirm_t *MlmeConfirm ) -{ - if( MlmeConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK ) - { - switch( MlmeConfirm->MlmeRequest ) - { - case MLME_JOIN: - { - // Status is OK, node has joined the network - break; - } - case MLME_LINK_CHECK: - { - // Check DemodMargin - // Check NbGateways - if( ComplianceTest.Running == true ) - { - ComplianceTest.LinkCheck = true; - ComplianceTest.DemodMargin = MlmeConfirm->DemodMargin; - ComplianceTest.NbGateways = MlmeConfirm->NbGateways; - } - break; - } - default: - break; - } - } - NextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ - LoRaMacPrimitives_t LoRaMacPrimitives; - LoRaMacCallback_t LoRaMacCallbacks; - MibRequestConfirm_t mibReq; - - BoardInitMcu( ); - BoardInitPeriph( ); - - DeviceState = DEVICE_STATE_INIT; - - while( 1 ) - { - switch( DeviceState ) - { - case DEVICE_STATE_INIT: - { - LoRaMacPrimitives.MacMcpsConfirm = McpsConfirm; - LoRaMacPrimitives.MacMcpsIndication = McpsIndication; - LoRaMacPrimitives.MacMlmeConfirm = MlmeConfirm; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks ); - - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = LORAWAN_ADR_ON; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_PUBLIC_NETWORK; - mibReq.Param.EnablePublicNetwork = LORAWAN_PUBLIC_NETWORK; - LoRaMacMibSetRequestConfirm( &mibReq ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - mibReq.Type = MIB_DEVICE_CLASS; - mibReq.Param.Class = CLASS_C; - LoRaMacMibSetRequestConfirm( &mibReq ); - - DeviceState = DEVICE_STATE_JOIN; - break; - } - case DEVICE_STATE_JOIN: - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - MlmeReq_t mlmeReq; - - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - mlmeReq.Type = MLME_JOIN; - - mlmeReq.Req.Join.DevEui = DevEui; - mlmeReq.Req.Join.AppEui = AppEui; - mlmeReq.Req.Join.AppKey = AppKey; - - if( NextTx == true ) - { - LoRaMacMlmeRequest( &mlmeReq ); - } - - // Schedule next packet transmission - TxDutyCycleTime = OVER_THE_AIR_ACTIVATION_DUTYCYCLE; - DeviceState = DEVICE_STATE_CYCLE; - -#else - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - - // Choose a random device address - DevAddr = randr( 0, 0x01FFFFFF ); - - mibReq.Type = MIB_NET_ID; - mibReq.Param.NetID = LORAWAN_NETWORK_ID; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_DEV_ADDR; - mibReq.Param.DevAddr = DevAddr; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_NWK_SKEY; - mibReq.Param.NwkSKey = NwkSKey; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_APP_SKEY; - mibReq.Param.AppSKey = AppSKey; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_NETWORK_JOINED; - mibReq.Param.IsNetworkJoined = true; - LoRaMacMibSetRequestConfirm( &mibReq ); - - DeviceState = DEVICE_STATE_SEND; -#endif - break; - } - case DEVICE_STATE_SEND: - { - if( NextTx == true ) - { - PrepareTxFrame( AppPort ); - - NextTx = SendFrame( ); - } - if( ComplianceTest.Running == true ) - { - // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms - } - else - { - // Schedule next packet transmission - TxDutyCycleTime = APP_TX_DUTYCYCLE + randr( -APP_TX_DUTYCYCLE_RND, APP_TX_DUTYCYCLE_RND ); - } - DeviceState = DEVICE_STATE_CYCLE; - break; - } - case DEVICE_STATE_CYCLE: - { - // Schedule next packet transmission - TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); - TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; - break; - } - case DEVICE_STATE_SLEEP: - { - // Wake up through events - TimerLowPowerHandler( ); - break; - } - default: - { - DeviceState = DEVICE_STATE_INIT; - break; - } - } - } -} diff --git a/src/apps/LoRaMac/classC/Bleeper-76/Comissioning.h b/src/apps/LoRaMac/classC/Bleeper-76/Comissioning.h deleted file mode 100644 index f663ac2f8..000000000 --- a/src/apps/LoRaMac/classC/Bleeper-76/Comissioning.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2015 Semtech - -Description: End device comissioning parameters - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __LORA_COMISSIONING_H__ -#define __LORA_COMISSIONING_H__ - -/*! - * When set to 1 the application uses the Over-the-Air activation procedure - * When set to 0 the application uses the Personalization activation procedure - */ -#define OVER_THE_AIR_ACTIVATION 0 - -/*! - * Indicates if the end-device is to be connected to a private or public network - */ -#define LORAWAN_PUBLIC_NETWORK true - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Mote device IEEE EUI (big endian) - * - * \remark In this application the value is automatically generated by calling - * BoardGetUniqueId function - */ -#define LORAWAN_DEVICE_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * Application IEEE EUI (big endian) - */ -#define LORAWAN_APPLICATION_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * AES encryption/decryption cipher application key - */ -#define LORAWAN_APPLICATION_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#else - -/*! - * Current network ID - */ -#define LORAWAN_NETWORK_ID ( uint32_t )0 - -/*! - * Device address on the network (big endian) - * - * \remark In this application the value is automatically generated using - * a pseudo random generator seeded with a value derived from - * BoardUniqueId value - */ -#define LORAWAN_DEVICE_ADDRESS ( uint32_t )0x00000000 - -/*! - * AES encryption/decryption cipher network session key - */ -#define LORAWAN_NWKSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -/*! - * AES encryption/decryption cipher application session key - */ -#define LORAWAN_APPSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#endif - -#endif // __LORA_COMISSIONING_H__ diff --git a/src/apps/LoRaMac/classC/Bleeper-76/main-api-v3.c b/src/apps/LoRaMac/classC/Bleeper-76/main-api-v3.c deleted file mode 100644 index 4fec71317..000000000 --- a/src/apps/LoRaMac/classC/Bleeper-76/main-api-v3.c +++ /dev/null @@ -1,573 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRaMac classC device implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include -#include "board.h" - -#include "LoRaMac-api-v3.h" -#include "Comissioning.h" - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptative Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -#if defined( USE_BAND_868 ) - -/*! - * LoRaWAN ETSI duty cycle control enable/disable - * - * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes - */ -#define LORAWAN_DUTYCYCLE_ON true - -#endif - -/*! - * LoRaWAN application port - */ -#define LORAWAN_APP_PORT 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 8 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Indicates if the MAC layer has already joined a network. - */ -static bool IsNetworkJoined = false; - -/*! - * Application port - */ -static uint8_t AppPort = LORAWAN_APP_PORT; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Indicates if the node is sending confirmed or unconfirmed messages - */ -static uint8_t IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - -/*! - * Defines the application data transmission duty cycle - */ -static uint32_t TxDutyCycleTime; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Defines the join request timer - */ -static TimerEvent_t JoinReqTimer; - -#endif - -/*! - * Indicates if a new packet can be sent - */ -static bool TxNextPacket = true; -static bool ScheduleNextTx = false; -static bool DownlinkStatusUpdate = false; - -static LoRaMacCallbacks_t LoRaMacCallbacks; - -static TimerEvent_t Led1Timer; -volatile bool Led1StateChanged = false; - -static TimerEvent_t Led2Timer; -volatile bool Led2StateChanged = false; - -static bool AppLedStateOn = false; -volatile bool Led3StateChanged = false; - -/*! - * LoRaWAN compliance tests support data - */ -struct ComplianceTest_s -{ - bool Running; - uint8_t State; - bool IsTxConfirmed; - uint8_t AppPort; - uint8_t AppDataSize; - uint8_t *AppDataBuffer; - uint16_t DownLinkCounter; - bool LinkCheck; - uint8_t DemodMargin; - uint8_t NbGateways; -}ComplianceTest; - -/*! - * Prepares the frame buffer to be sent - */ -static void PrepareTxFrame( uint8_t port ) -{ - switch( port ) - { - case 1: - { - uint16_t pressure = 0; - int16_t altitudeBar = 0; - int16_t temperature = 0; - uint8_t batteryLevel = 0; - - pressure = ( uint16_t )( MPL3115ReadPressure( ) / 10 ); // in hPa / 10 - temperature = ( int16_t )( MPL3115ReadTemperature( ) * 100 ); // in °C * 100 - altitudeBar = ( int16_t )( MPL3115ReadAltitude( ) * 10 ); // in m * 10 - batteryLevel = BoardGetBatteryLevel( ); // 1 (very low) to 254 (fully charged) - - AppData[0] = ( SelectorGetValue( ) << 4 ) | AppLedStateOn; - AppData[1] = ( pressure >> 8 ) & 0xFF; - AppData[2] = pressure & 0xFF; - AppData[3] = ( temperature >> 8 ) & 0xFF; - AppData[4] = temperature & 0xFF; - AppData[5] = ( altitudeBar >> 8 ) & 0xFF; - AppData[6] = altitudeBar & 0xFF; - AppData[7] = batteryLevel; - } - break; - case 224: - if( ComplianceTest.LinkCheck == true ) - { - ComplianceTest.LinkCheck = false; - AppDataSize = 3; - AppData[0] = 5; - AppData[1] = ComplianceTest.DemodMargin; - AppData[2] = ComplianceTest.NbGateways; - ComplianceTest.State = 1; - } - else - { - switch( ComplianceTest.State ) - { - case 4: - ComplianceTest.State = 1; - break; - case 1: - AppDataSize = 2; - AppData[0] = ComplianceTest.DownLinkCounter >> 8; - AppData[1] = ComplianceTest.DownLinkCounter; - break; - } - } - break; - default: - break; - } -} - -static void ProcessRxFrame( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - switch( info->RxPort ) // Check Rx port number - { - case 1: // The application LED can be controlled on port 1 or 2 - case 2: - if( info->RxBufferSize == 1 ) - { - AppLedStateOn = info->RxBuffer[0] & 0x01; - Led3StateChanged = true; - } - break; - case 224: - if( ComplianceTest.Running == false ) - { - // Check compliance test enable command (i) - if( ( info->RxBufferSize == 4 ) && - ( info->RxBuffer[0] == 0x01 ) && - ( info->RxBuffer[1] == 0x01 ) && - ( info->RxBuffer[2] == 0x01 ) && - ( info->RxBuffer[3] == 0x01 ) ) - { - IsTxConfirmed = false; - AppPort = 224; - AppDataSize = 2; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.LinkCheck = false; - ComplianceTest.DemodMargin = 0; - ComplianceTest.NbGateways = 0; - ComplianceTest.Running = true; - ComplianceTest.State = 1; - - LoRaMacSetAdrOn( true ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( false ); -#endif - } - } - else - { - ComplianceTest.State = info->RxBuffer[0]; - switch( ComplianceTest.State ) - { - case 0: // Check compliance test disable command (ii) - IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - AppPort = LORAWAN_APP_PORT; - AppDataSize = LORAWAN_APP_DATA_SIZE; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.Running = false; - LoRaMacSetAdrOn( LORAWAN_ADR_ON ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - break; - case 1: // (iii, iv) - AppDataSize = 2; - break; - case 2: // Enable confirmed messages (v) - IsTxConfirmed = true; - ComplianceTest.State = 1; - break; - case 3: // Disable confirmed messages (vi) - IsTxConfirmed = false; - ComplianceTest.State = 1; - break; - case 4: // (vii) - AppDataSize = info->RxBufferSize; - - AppData[0] = 4; - for( uint8_t i = 1; i < AppDataSize; i++ ) - { - AppData[i] = info->RxBuffer[i] + 1; - } - break; - case 5: // (viii) - LoRaMacLinkCheckReq( ); - break; - default: - break; - } - } - break; - default: - break; - } -} - -static bool SendFrame( void ) -{ - uint8_t sendFrameStatus = 0; - - if( IsTxConfirmed == false ) - { - sendFrameStatus = LoRaMacSendFrame( AppPort, AppData, AppDataSize ); - } - else - { - sendFrameStatus = LoRaMacSendConfirmedFrame( AppPort, AppData, AppDataSize, 8 ); - } - - switch( sendFrameStatus ) - { - case 3: // LENGTH_ERROR - // Send empty frame in order to flush MAC commands - LoRaMacSendFrame( 0, NULL, 0 ); - return false; - case 5: // NO_FREE_CHANNEL - // Try again later - return true; - default: - return false; - } -} - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * \brief Function executed on JoinReq Timeout event - */ -static void OnJoinReqTimerEvent( void ) -{ - TimerStop( &JoinReqTimer ); - TxNextPacket = true; -} - -#endif - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - TimerStop( &TxNextPacketTimer ); - TxNextPacket = true; -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - Led1StateChanged = true; -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - Led2StateChanged = true; -} - -/*! - * \brief Function to be executed on MAC layer event - */ -static void OnMacEvent( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - if( flags->Bits.JoinAccept == 1 ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - TimerStop( &JoinReqTimer ); -#endif - IsNetworkJoined = true; - } - else - { - if( flags->Bits.Tx == 1 ) - { - } - - if( flags->Bits.Rx == 1 ) - { - if( ComplianceTest.Running == true ) - { - ComplianceTest.DownLinkCounter++; - if( flags->Bits.LinkCheck == 1 ) - { - ComplianceTest.LinkCheck = true; - ComplianceTest.DemodMargin = info->DemodMargin; - ComplianceTest.NbGateways = info->NbGateways; - } - } - if( flags->Bits.RxData == true ) - { - ProcessRxFrame( flags, info ); - } - - DownlinkStatusUpdate = true; - TimerStart( &Led2Timer ); - } - } - // Schedule a new transmission - ScheduleNextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ -#if( OVER_THE_AIR_ACTIVATION != 0 ) - uint8_t sendFrameStatus = 0; -#endif - bool trySendingFrameAgain = false; - - BoardInitMcu( ); - BoardInitPeriph( ); - - LoRaMacCallbacks.MacEvent = OnMacEvent; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInit( &LoRaMacCallbacks ); - - IsNetworkJoined = false; - -#if( OVER_THE_AIR_ACTIVATION == 0 ) - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - // Choose a random device address based on Board unique ID - // NwkAddr rand [0, 33554431] - DevAddr = randr( 0, 0x01FFFFFF ); - - LoRaMacInitNwkIds( LORAWAN_NETWORK_ID, DevAddr, NwkSKey, AppSKey ); - IsNetworkJoined = true; -#else - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - // Sends a JoinReq Command every OVER_THE_AIR_ACTIVATION_DUTYCYCLE - // seconds until the network is joined - TimerInit( &JoinReqTimer, OnJoinReqTimerEvent ); - TimerSetValue( &JoinReqTimer, OVER_THE_AIR_ACTIVATION_DUTYCYCLE ); -#endif - - TxNextPacket = true; - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - LoRaMacSetAdrOn( LORAWAN_ADR_ON ); - LoRaMacSetPublicNetwork( LORAWAN_PUBLIC_NETWORK ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - LoRaMacSetDeviceClass( CLASS_C ); - - while( 1 ) - { - while( IsNetworkJoined == false ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - if( TxNextPacket == true ) - { - TxNextPacket = false; - - sendFrameStatus = LoRaMacJoinReq( DevEui, AppEui, AppKey ); - switch( sendFrameStatus ) - { - case 1: // BUSY - break; - case 0: // OK - case 2: // NO_NETWORK_JOINED - case 3: // LENGTH_PORT_ERROR - case 4: // MAC_CMD_ERROR - case 6: // DEVICE_OFF - default: - // Relaunch timer for next trial - TimerStart( &JoinReqTimer ); - break; - } - } - TimerLowPowerHandler( ); -#endif - } - - if( Led1StateChanged == true ) - { - Led1StateChanged = false; - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); - } - if( Led2StateChanged == true ) - { - Led2StateChanged = false; - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); - } - if( Led3StateChanged == true ) - { - Led3StateChanged = false; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - if( DownlinkStatusUpdate == true ) - { - DownlinkStatusUpdate = false; - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - } - - if( ScheduleNextTx == true ) - { - ScheduleNextTx = false; - - if( ComplianceTest.Running == true ) - { - TxNextPacket = true; - } - else - { - // Schedule next packet transmission - TxDutyCycleTime = APP_TX_DUTYCYCLE + randr( -APP_TX_DUTYCYCLE_RND, APP_TX_DUTYCYCLE_RND ); - TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); - TimerStart( &TxNextPacketTimer ); - } - } - - if( trySendingFrameAgain == true ) - { - trySendingFrameAgain = SendFrame( ); - } - if( TxNextPacket == true ) - { - TxNextPacket = false; - - PrepareTxFrame( AppPort ); - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - - trySendingFrameAgain = SendFrame( ); - } - - TimerLowPowerHandler( ); - } -} diff --git a/src/apps/LoRaMac/classC/Bleeper-76/main.c b/src/apps/LoRaMac/classC/Bleeper-76/main.c deleted file mode 100644 index 3ace39358..000000000 --- a/src/apps/LoRaMac/classC/Bleeper-76/main.c +++ /dev/null @@ -1,708 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRaMac classC device implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ - -#include -#include -#include "board.h" - -#include "LoRaMac.h" -#include "Comissioning.h" - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptive Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -#if defined( USE_BAND_868 ) - -#include "LoRaMacTest.h" - -/*! - * LoRaWAN ETSI duty cycle control enable/disable - * - * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes - */ -#define LORAWAN_DUTYCYCLE_ON true - -#endif - -/*! - * LoRaWAN application port - */ -#define LORAWAN_APP_PORT 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 8 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Application port - */ -static uint8_t AppPort = LORAWAN_APP_PORT; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Indicates if the node is sending confirmed or unconfirmed messages - */ -static uint8_t IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - -/*! - * Defines the application data transmission duty cycle - */ -static uint32_t TxDutyCycleTime; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -/*! - * Specifies the state of the application LED - */ -static bool AppLedStateOn = false; - -/*! - * Timer to handle the state of LED1 - */ -static TimerEvent_t Led1Timer; - -/*! - * Timer to handle the state of LED2 - */ -static TimerEvent_t Led2Timer; - -/*! - * Indicates if a new packet can be sent - */ -static bool NextTx = true; - -/*! - * Device states - */ -static enum eDevicState -{ - DEVICE_STATE_INIT, - DEVICE_STATE_JOIN, - DEVICE_STATE_SEND, - DEVICE_STATE_CYCLE, - DEVICE_STATE_SLEEP -}DeviceState; - -/*! - * LoRaWAN compliance tests support data - */ -struct ComplianceTest_s -{ - bool Running; - uint8_t State; - bool IsTxConfirmed; - uint8_t AppPort; - uint8_t AppDataSize; - uint8_t *AppDataBuffer; - uint16_t DownLinkCounter; - bool LinkCheck; - uint8_t DemodMargin; - uint8_t NbGateways; -}ComplianceTest; - -/*! - * \brief Prepares the payload of the frame - */ -static void PrepareTxFrame( uint8_t port ) -{ - switch( port ) - { - case 1: - { - uint16_t pressure = 0; - int16_t altitudeBar = 0; - int16_t temperature = 0; - uint8_t batteryLevel = 0; - - pressure = ( uint16_t )( MPL3115ReadPressure( ) / 10 ); // in hPa / 10 - temperature = ( int16_t )( MPL3115ReadTemperature( ) * 100 ); // in °C * 100 - altitudeBar = ( int16_t )( MPL3115ReadAltitude( ) * 10 ); // in m * 10 - batteryLevel = BoardGetBatteryLevel( ); // 1 (very low) to 254 (fully charged) - - AppData[0] = ( SelectorGetValue( ) << 4 ) | AppLedStateOn; - AppData[1] = ( pressure >> 8 ) & 0xFF; - AppData[2] = pressure & 0xFF; - AppData[3] = ( temperature >> 8 ) & 0xFF; - AppData[4] = temperature & 0xFF; - AppData[5] = ( altitudeBar >> 8 ) & 0xFF; - AppData[6] = altitudeBar & 0xFF; - AppData[7] = batteryLevel; - } - break; - case 224: - if( ComplianceTest.LinkCheck == true ) - { - ComplianceTest.LinkCheck = false; - AppDataSize = 3; - AppData[0] = 5; - AppData[1] = ComplianceTest.DemodMargin; - AppData[2] = ComplianceTest.NbGateways; - ComplianceTest.State = 1; - } - else - { - switch( ComplianceTest.State ) - { - case 4: - ComplianceTest.State = 1; - break; - case 1: - AppDataSize = 2; - AppData[0] = ComplianceTest.DownLinkCounter >> 8; - AppData[1] = ComplianceTest.DownLinkCounter; - break; - } - } - break; - default: - break; - } -} - -/*! - * \brief Prepares the payload of the frame - * - * \retval [0: frame could be send, 1: error] - */ -static bool SendFrame( void ) -{ - McpsReq_t mcpsReq; - LoRaMacTxInfo_t txInfo; - - if( LoRaMacQueryTxPossible( AppDataSize, &txInfo ) != LORAMAC_STATUS_OK ) - { - // Send empty frame in order to flush MAC commands - mcpsReq.Type = MCPS_UNCONFIRMED; - mcpsReq.Req.Unconfirmed.fBuffer = NULL; - mcpsReq.Req.Unconfirmed.fBufferSize = 0; - mcpsReq.Req.Unconfirmed.Datarate = DR_0; - } - else - { - if( IsTxConfirmed == false ) - { - mcpsReq.Type = MCPS_UNCONFIRMED; - mcpsReq.Req.Unconfirmed.fPort = AppPort; - mcpsReq.Req.Unconfirmed.fBuffer = AppData; - mcpsReq.Req.Unconfirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Unconfirmed.Datarate = DR_0; - } - else - { - mcpsReq.Type = MCPS_CONFIRMED; - mcpsReq.Req.Confirmed.fPort = AppPort; - mcpsReq.Req.Confirmed.fBuffer = AppData; - mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; - mcpsReq.Req.Confirmed.Datarate = DR_0; - } - } - - if( LoRaMacMcpsRequest( &mcpsReq ) == LORAMAC_STATUS_OK ) - { - return false; - } - return true; -} - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - MibRequestConfirm_t mibReq; - LoRaMacStatus_t status; - - TimerStop( &TxNextPacketTimer ); - - mibReq.Type = MIB_NETWORK_JOINED; - status = LoRaMacMibGetRequestConfirm( &mibReq ); - - if( status == LORAMAC_STATUS_OK ) - { - if( mibReq.Param.IsNetworkJoined == true ) - { - DeviceState = DEVICE_STATE_SEND; - NextTx = true; - } - else - { - DeviceState = DEVICE_STATE_JOIN; - } - } -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); -} - -/*! - * \brief MCPS-Confirm event function - * - * \param [IN] McpsConfirm - Pointer to the confirm structure, - * containing confirm attributes. - */ -static void McpsConfirm( McpsConfirm_t *McpsConfirm ) -{ - if( McpsConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK ) - { - switch( McpsConfirm->McpsRequest ) - { - case MCPS_UNCONFIRMED: - { - // Check Datarate - // Check TxPower - break; - } - case MCPS_CONFIRMED: - { - // Check Datarate - // Check TxPower - // Check AckReceived - // Check NbRetries - break; - } - case MCPS_PROPRIETARY: - { - break; - } - default: - break; - } - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - } - NextTx = true; -} - -/*! - * \brief MCPS-Indication event function - * - * \param [IN] McpsIndication - Pointer to the indication structure, - * containing indication attributes. - */ -static void McpsIndication( McpsIndication_t *McpsIndication ) -{ - if( McpsIndication->Status != LORAMAC_EVENT_INFO_STATUS_OK ) - { - return; - } - - switch( McpsIndication->McpsIndication ) - { - case MCPS_UNCONFIRMED: - { - break; - } - case MCPS_CONFIRMED: - { - break; - } - case MCPS_PROPRIETARY: - { - break; - } - case MCPS_MULTICAST: - { - break; - } - default: - break; - } - - // Check Multicast - // Check Port - // Check Datarate - // Check FramePending - // Check Buffer - // Check BufferSize - // Check Rssi - // Check Snr - // Check RxSlot - - if( ComplianceTest.Running == true ) - { - ComplianceTest.DownLinkCounter++; - } - - if( McpsIndication->RxData == true ) - { - switch( McpsIndication->Port ) - { - case 1: // The application LED can be controlled on port 1 or 2 - case 2: - if( McpsIndication->BufferSize == 1 ) - { - AppLedStateOn = McpsIndication->Buffer[0] & 0x01; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - break; - case 224: - if( ComplianceTest.Running == false ) - { - // Check compliance test enable command (i) - if( ( McpsIndication->BufferSize == 4 ) && - ( McpsIndication->Buffer[0] == 0x01 ) && - ( McpsIndication->Buffer[1] == 0x01 ) && - ( McpsIndication->Buffer[2] == 0x01 ) && - ( McpsIndication->Buffer[3] == 0x01 ) ) - { - IsTxConfirmed = false; - AppPort = 224; - AppDataSize = 2; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.LinkCheck = false; - ComplianceTest.DemodMargin = 0; - ComplianceTest.NbGateways = 0; - ComplianceTest.Running = true; - ComplianceTest.State = 1; - - MibRequestConfirm_t mibReq; - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = true; - LoRaMacMibSetRequestConfirm( &mibReq ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( false ); -#endif - } - } - else - { - ComplianceTest.State = McpsIndication->Buffer[0]; - switch( ComplianceTest.State ) - { - case 0: // Check compliance test disable command (ii) - IsTxConfirmed = LORAWAN_CONFIRMED_MSG_ON; - AppPort = LORAWAN_APP_PORT; - AppDataSize = LORAWAN_APP_DATA_SIZE; - ComplianceTest.DownLinkCounter = 0; - ComplianceTest.Running = false; - - MibRequestConfirm_t mibReq; - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = LORAWAN_ADR_ON; - LoRaMacMibSetRequestConfirm( &mibReq ); -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - break; - case 1: // (iii, iv) - AppDataSize = 2; - break; - case 2: // Enable confirmed messages (v) - IsTxConfirmed = true; - ComplianceTest.State = 1; - break; - case 3: // Disable confirmed messages (vi) - IsTxConfirmed = false; - ComplianceTest.State = 1; - break; - case 4: // (vii) - AppDataSize = McpsIndication->BufferSize; - - AppData[0] = 4; - for( uint8_t i = 1; i < AppDataSize; i++ ) - { - AppData[i] = McpsIndication->Buffer[i] + 1; - } - break; - case 5: // (viii) - { - MlmeReq_t mlmeReq; - mlmeReq.Type = MLME_LINK_CHECK; - LoRaMacMlmeRequest( &mlmeReq ); - } - break; - default: - break; - } - } - break; - default: - break; - } - } - - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - TimerStart( &Led2Timer ); -} - -/*! - * \brief MLME-Confirm event function - * - * \param [IN] MlmeConfirm - Pointer to the confirm structure, - * containing confirm attributes. - */ -static void MlmeConfirm( MlmeConfirm_t *MlmeConfirm ) -{ - if( MlmeConfirm->Status == LORAMAC_EVENT_INFO_STATUS_OK ) - { - switch( MlmeConfirm->MlmeRequest ) - { - case MLME_JOIN: - { - // Status is OK, node has joined the network - break; - } - case MLME_LINK_CHECK: - { - // Check DemodMargin - // Check NbGateways - if( ComplianceTest.Running == true ) - { - ComplianceTest.LinkCheck = true; - ComplianceTest.DemodMargin = MlmeConfirm->DemodMargin; - ComplianceTest.NbGateways = MlmeConfirm->NbGateways; - } - break; - } - default: - break; - } - } - NextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ - LoRaMacPrimitives_t LoRaMacPrimitives; - LoRaMacCallback_t LoRaMacCallbacks; - MibRequestConfirm_t mibReq; - - BoardInitMcu( ); - BoardInitPeriph( ); - - DeviceState = DEVICE_STATE_INIT; - - while( 1 ) - { - switch( DeviceState ) - { - case DEVICE_STATE_INIT: - { - LoRaMacPrimitives.MacMcpsConfirm = McpsConfirm; - LoRaMacPrimitives.MacMcpsIndication = McpsIndication; - LoRaMacPrimitives.MacMlmeConfirm = MlmeConfirm; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInitialization( &LoRaMacPrimitives, &LoRaMacCallbacks ); - - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - mibReq.Type = MIB_ADR; - mibReq.Param.AdrEnable = LORAWAN_ADR_ON; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_PUBLIC_NETWORK; - mibReq.Param.EnablePublicNetwork = LORAWAN_PUBLIC_NETWORK; - LoRaMacMibSetRequestConfirm( &mibReq ); - -#if defined( USE_BAND_868 ) - LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); -#endif - mibReq.Type = MIB_DEVICE_CLASS; - mibReq.Param.Class = CLASS_C; - LoRaMacMibSetRequestConfirm( &mibReq ); - - DeviceState = DEVICE_STATE_JOIN; - break; - } - case DEVICE_STATE_JOIN: - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - MlmeReq_t mlmeReq; - - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - mlmeReq.Type = MLME_JOIN; - - mlmeReq.Req.Join.DevEui = DevEui; - mlmeReq.Req.Join.AppEui = AppEui; - mlmeReq.Req.Join.AppKey = AppKey; - - if( NextTx == true ) - { - LoRaMacMlmeRequest( &mlmeReq ); - } - - // Schedule next packet transmission - TxDutyCycleTime = OVER_THE_AIR_ACTIVATION_DUTYCYCLE; - DeviceState = DEVICE_STATE_CYCLE; - -#else - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - - // Choose a random device address - DevAddr = randr( 0, 0x01FFFFFF ); - - mibReq.Type = MIB_NET_ID; - mibReq.Param.NetID = LORAWAN_NETWORK_ID; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_DEV_ADDR; - mibReq.Param.DevAddr = DevAddr; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_NWK_SKEY; - mibReq.Param.NwkSKey = NwkSKey; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_APP_SKEY; - mibReq.Param.AppSKey = AppSKey; - LoRaMacMibSetRequestConfirm( &mibReq ); - - mibReq.Type = MIB_NETWORK_JOINED; - mibReq.Param.IsNetworkJoined = true; - LoRaMacMibSetRequestConfirm( &mibReq ); - - DeviceState = DEVICE_STATE_SEND; -#endif - break; - } - case DEVICE_STATE_SEND: - { - if( NextTx == true ) - { - PrepareTxFrame( AppPort ); - - NextTx = SendFrame( ); - } - if( ComplianceTest.Running == true ) - { - // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms - } - else - { - // Schedule next packet transmission - TxDutyCycleTime = APP_TX_DUTYCYCLE + randr( -APP_TX_DUTYCYCLE_RND, APP_TX_DUTYCYCLE_RND ); - } - DeviceState = DEVICE_STATE_CYCLE; - break; - } - case DEVICE_STATE_CYCLE: - { - // Schedule next packet transmission - TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); - TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; - break; - } - case DEVICE_STATE_SLEEP: - { - // Wake up through events - TimerLowPowerHandler( ); - break; - } - default: - { - DeviceState = DEVICE_STATE_INIT; - break; - } - } - } -} diff --git a/src/apps/LoRaMac/classC/LoRaMote/main-api-v3.c b/src/apps/LoRaMac/classC/LoRaMote/main-api-v3.c index 658db9016..417eb98f8 100644 --- a/src/apps/LoRaMac/classC/LoRaMote/main-api-v3.c +++ b/src/apps/LoRaMac/classC/LoRaMote/main-api-v3.c @@ -56,6 +56,19 @@ Maintainer: Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -523,6 +536,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif LoRaMacSetDeviceClass( CLASS_C ); diff --git a/src/apps/LoRaMac/classC/LoRaMote/main.c b/src/apps/LoRaMac/classC/LoRaMote/main.c index 39a0e0bc1..b24f631f2 100644 --- a/src/apps/LoRaMac/classC/LoRaMote/main.c +++ b/src/apps/LoRaMac/classC/LoRaMote/main.c @@ -61,6 +61,19 @@ Maintainer: Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -313,7 +326,7 @@ static bool SendFrame( void ) mcpsReq.Req.Confirmed.fPort = AppPort; mcpsReq.Req.Confirmed.fBuffer = AppData; mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; + mcpsReq.Req.Confirmed.NbTrials = 8; mcpsReq.Req.Confirmed.Datarate = DR_0; } } @@ -395,7 +408,7 @@ static void McpsConfirm( McpsConfirm_t *McpsConfirm ) // Check Datarate // Check TxPower // Check AckReceived - // Check NbRetries + // Check NbTrials break; } case MCPS_PROPRIETARY: @@ -647,6 +660,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif mibReq.Type = MIB_DEVICE_CLASS; mibReq.Param.Class = CLASS_C; @@ -720,7 +743,7 @@ int main( void ) if( ComplianceTest.Running == true ) { // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms + TxDutyCycleTime = 300000; // 300 ms } else { @@ -732,11 +755,11 @@ int main( void ) } case DEVICE_STATE_CYCLE: { + DeviceState = DEVICE_STATE_SLEEP; + // Schedule next packet transmission TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; break; } case DEVICE_STATE_SLEEP: diff --git a/src/apps/LoRaMac/classC/SK-iM880A/main-api-v3.c b/src/apps/LoRaMac/classC/SK-iM880A/main-api-v3.c index 35437c5b6..e6e3bf4dc 100644 --- a/src/apps/LoRaMac/classC/SK-iM880A/main-api-v3.c +++ b/src/apps/LoRaMac/classC/SK-iM880A/main-api-v3.c @@ -56,6 +56,19 @@ Maintainer: Andreas Pella (IMST GmbH), Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -473,6 +486,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif LoRaMacSetDeviceClass( CLASS_C ); diff --git a/src/apps/LoRaMac/classC/SK-iM880A/main.c b/src/apps/LoRaMac/classC/SK-iM880A/main.c index ff31e0bab..fd1066375 100644 --- a/src/apps/LoRaMac/classC/SK-iM880A/main.c +++ b/src/apps/LoRaMac/classC/SK-iM880A/main.c @@ -59,6 +59,19 @@ Maintainer: Andreas Pella (IMST GmbH), Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -261,7 +274,7 @@ static bool SendFrame( void ) mcpsReq.Req.Confirmed.fPort = AppPort; mcpsReq.Req.Confirmed.fBuffer = AppData; mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; + mcpsReq.Req.Confirmed.NbTrials = 8; mcpsReq.Req.Confirmed.Datarate = DR_0; } } @@ -343,7 +356,7 @@ static void McpsConfirm( McpsConfirm_t *McpsConfirm ) // Check Datarate // Check TxPower // Check AckReceived - // Check NbRetries + // Check NbTrials break; } case MCPS_PROPRIETARY: @@ -595,6 +608,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif mibReq.Type = MIB_DEVICE_CLASS; mibReq.Param.Class = CLASS_C; @@ -668,7 +691,7 @@ int main( void ) if( ComplianceTest.Running == true ) { // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms + TxDutyCycleTime = 300000; // 300 ms } else { @@ -680,11 +703,11 @@ int main( void ) } case DEVICE_STATE_CYCLE: { + DeviceState = DEVICE_STATE_SLEEP; + // Schedule next packet transmission TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; break; } case DEVICE_STATE_SLEEP: diff --git a/src/apps/LoRaMac/classC/SensorNode/main-api-v3.c b/src/apps/LoRaMac/classC/SensorNode/main-api-v3.c index 30f5fec6f..ca0cb4db3 100644 --- a/src/apps/LoRaMac/classC/SensorNode/main-api-v3.c +++ b/src/apps/LoRaMac/classC/SensorNode/main-api-v3.c @@ -56,6 +56,19 @@ Maintainer: Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -537,6 +550,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif LoRaMacSetDeviceClass( CLASS_C ); diff --git a/src/apps/LoRaMac/classC/SensorNode/main.c b/src/apps/LoRaMac/classC/SensorNode/main.c index 6d8f6be80..84c134c0d 100644 --- a/src/apps/LoRaMac/classC/SensorNode/main.c +++ b/src/apps/LoRaMac/classC/SensorNode/main.c @@ -58,6 +58,19 @@ Maintainer: Miguel Luis and Gregory Cristian */ #define LORAWAN_DUTYCYCLE_ON true +#define USE_SEMTECH_DEFAULT_CHANNEL_LINEUP 1 + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + +#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } +#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } + +#endif + #endif /*! @@ -238,8 +251,8 @@ static void PrepareTxFrame( uint8_t port ) altitudeGps = GpsGetLatestGpsAltitude( ); // in m AppData[0] = AppLedStateOn; - AppData[1] = temperature; - AppData[2] = batteryLevel; + AppData[1] = temperature; // Signed degrees Celcius in half degree units. So, +/-63 C + AppData[2] = batteryLevel; // Per LoRaWAN spec; 0=Charging; 1...254 = level, 255 = N/A AppData[3] = ( latitude >> 16 ) & 0xFF; AppData[4] = ( latitude >> 8 ) & 0xFF; AppData[5] = latitude & 0xFF; @@ -315,7 +328,7 @@ static bool SendFrame( void ) mcpsReq.Req.Confirmed.fPort = AppPort; mcpsReq.Req.Confirmed.fBuffer = AppData; mcpsReq.Req.Confirmed.fBufferSize = AppDataSize; - mcpsReq.Req.Confirmed.nbRetries = 8; + mcpsReq.Req.Confirmed.NbTrials = 8; mcpsReq.Req.Confirmed.Datarate = DR_0; } } @@ -377,7 +390,7 @@ static void OnLed2TimerEvent( void ) /*! * \brief Function executed on Led 4 Timeout event */ -void OnLed4TimerEvent( void ) +static void OnLed4TimerEvent( void ) { TimerStop( &Led4Timer ); // Switch LED 4 OFF @@ -406,7 +419,7 @@ static void McpsConfirm( McpsConfirm_t *McpsConfirm ) // Check Datarate // Check TxPower // Check AckReceived - // Check NbRetries + // Check NbTrials break; } case MCPS_PROPRIETARY: @@ -661,6 +674,16 @@ int main( void ) #if defined( USE_BAND_868 ) LoRaMacTestSetDutyCycleOn( LORAWAN_DUTYCYCLE_ON ); + +#if( USE_SEMTECH_DEFAULT_CHANNEL_LINEUP == 1 ) + LoRaMacChannelAdd( 3, ( ChannelParams_t )LC4 ); + LoRaMacChannelAdd( 4, ( ChannelParams_t )LC5 ); + LoRaMacChannelAdd( 5, ( ChannelParams_t )LC6 ); + LoRaMacChannelAdd( 6, ( ChannelParams_t )LC7 ); + LoRaMacChannelAdd( 7, ( ChannelParams_t )LC8 ); + LoRaMacChannelAdd( 8, ( ChannelParams_t )LC9 ); +#endif + #endif mibReq.Type = MIB_DEVICE_CLASS; mibReq.Param.Class = CLASS_C; @@ -734,7 +757,7 @@ int main( void ) if( ComplianceTest.Running == true ) { // Schedule next packet transmission as soon as possible - TxDutyCycleTime = 1000; // 1 ms + TxDutyCycleTime = 300000; // 300 ms } else { @@ -746,11 +769,11 @@ int main( void ) } case DEVICE_STATE_CYCLE: { + DeviceState = DEVICE_STATE_SLEEP; + // Schedule next packet transmission TimerSetValue( &TxNextPacketTimer, TxDutyCycleTime ); TimerStart( &TxNextPacketTimer ); - - DeviceState = DEVICE_STATE_SLEEP; break; } case DEVICE_STATE_SLEEP: diff --git a/src/apps/LoRaMac/radioCoverageTest/Bleeper-72/Comissioning.h b/src/apps/LoRaMac/radioCoverageTest/Bleeper-72/Comissioning.h deleted file mode 100644 index f663ac2f8..000000000 --- a/src/apps/LoRaMac/radioCoverageTest/Bleeper-72/Comissioning.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2015 Semtech - -Description: End device comissioning parameters - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __LORA_COMISSIONING_H__ -#define __LORA_COMISSIONING_H__ - -/*! - * When set to 1 the application uses the Over-the-Air activation procedure - * When set to 0 the application uses the Personalization activation procedure - */ -#define OVER_THE_AIR_ACTIVATION 0 - -/*! - * Indicates if the end-device is to be connected to a private or public network - */ -#define LORAWAN_PUBLIC_NETWORK true - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Mote device IEEE EUI (big endian) - * - * \remark In this application the value is automatically generated by calling - * BoardGetUniqueId function - */ -#define LORAWAN_DEVICE_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * Application IEEE EUI (big endian) - */ -#define LORAWAN_APPLICATION_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * AES encryption/decryption cipher application key - */ -#define LORAWAN_APPLICATION_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#else - -/*! - * Current network ID - */ -#define LORAWAN_NETWORK_ID ( uint32_t )0 - -/*! - * Device address on the network (big endian) - * - * \remark In this application the value is automatically generated using - * a pseudo random generator seeded with a value derived from - * BoardUniqueId value - */ -#define LORAWAN_DEVICE_ADDRESS ( uint32_t )0x00000000 - -/*! - * AES encryption/decryption cipher network session key - */ -#define LORAWAN_NWKSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -/*! - * AES encryption/decryption cipher application session key - */ -#define LORAWAN_APPSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#endif - -#endif // __LORA_COMISSIONING_H__ diff --git a/src/apps/LoRaMac/radioCoverageTest/Bleeper-72/main.c b/src/apps/LoRaMac/radioCoverageTest/Bleeper-72/main.c deleted file mode 100644 index d145d4e73..000000000 --- a/src/apps/LoRaMac/radioCoverageTest/Bleeper-72/main.c +++ /dev/null @@ -1,449 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Radio coverage tester implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include -#include "board.h" - -#include "LoRaMac-api-v3.h" -#include "Comissioning.h" - -/*! - * Number of packets sent by channel - */ -#define NB_PACKETS 15 - -/*! - * Enables/Disables the downlink test - */ -#define DOWNLINK_TEST_ON 0 - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptive Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 6 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Indicates if the MAC layer has already joined a network. - */ -static bool IsNetworkJoined = false; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Defines the join request timer - */ -static TimerEvent_t JoinReqTimer; - -#endif - -/*! - * Indicates if a new packet can be sent - */ -static bool TxNextPacket = true; -static bool ScheduleNextTx = false; -static bool DownlinkStatusUpdate = false; - -static LoRaMacCallbacks_t LoRaMacCallbacks; -static LoRaMacEventInfo_t LoRaMacLastRxEvent; - -static TimerEvent_t Led1Timer; -volatile bool Led1StateChanged = false; - -static TimerEvent_t Led2Timer; -volatile bool Led2StateChanged = false; - -static bool AppLedStateOn = false; -volatile bool Led3StateChanged = false; - -static TimerEvent_t StopTimer; - -static uint8_t ChannelNb; -static uint16_t DownLinkCounter = 0; - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * \brief Function executed on JoinReq Timeout event - */ -static void OnJoinReqTimerEvent( void ) -{ - TimerStop( &JoinReqTimer ); - TxNextPacket = true; -} - -#endif - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - TimerStop( &TxNextPacketTimer ); - TxNextPacket = true; -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - Led1StateChanged = true; -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - Led2StateChanged = true; -} - -/*! - * \brief Function executed on Stop Timeout event - */ -static void OnStopTimerEvent( void ) -{ - TimerStart( &StopTimer ); -} - -/*! - * \brief Function to be executed on MAC layer event - */ -static void OnMacEvent( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - int32_t snr = 0; - - LoRaMacLastRxEvent = *info; - - if( flags->Bits.JoinAccept == 1 ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - #if ( DOWNLINK_TEST_ON == 0 ) - // Once joined disable reception windows opening - LoRaMacTestRxWindowsOn( false ); - #endif - TimerStop( &JoinReqTimer ); -#endif - IsNetworkJoined = true; - } - else - { - if( flags->Bits.Tx == 1 ) - { - } - - if( flags->Bits.Rx == 1 ) - { - if( (flags->Bits.RxData == true ) && ( ( info->RxPort == 1 ) || ( info->RxPort == 2 ) ) ) - { - AppLedStateOn = info->RxBuffer[0]; - Led3StateChanged = true; - } - - if( info->RxSnr & 0x80 ) // The SNR sign bit is 1 - { - // Invert and divide by 4 - snr = ( ( ~info->RxSnr + 1 ) & 0xFF ) >> 2; - snr = -snr; - } - else - { - // Divide by 4 - snr = ( info->RxSnr & 0xFF ) >> 2; - } - DownLinkCounter++; - - DownlinkStatusUpdate = true; - TimerStart( &Led2Timer ); - } - } - // Schedule a new transmission - ScheduleNextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ - const ChannelParams_t channels[] = - { - { 868100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 868300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 868500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - }; - const uint8_t channelsDatarate[] = { DR_5, DR_2, DR_0 }; - - ChannelNb = ( sizeof( channels ) / sizeof( ChannelParams_t ) ); - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - uint8_t sendFrameStatus = 0; -#endif - uint8_t tstState = 0; - int16_t pktCnt = NB_PACKETS; - LoRaMacHeader_t macHdr; - LoRaMacFrameCtrl_t fCtrl; - uint8_t channelsIndex = 0; - uint8_t datarateIndex = 0; - - BoardInitMcu( ); - BoardInitPeriph( ); - - LoRaMacCallbacks.MacEvent = OnMacEvent; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInit( &LoRaMacCallbacks ); - - IsNetworkJoined = false; - -#if( OVER_THE_AIR_ACTIVATION == 0 ) - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - // Choose a random device address based on Board unique ID - // NwkAddr rand [0, 33554431] - DevAddr = randr( 0, 0x01FFFFFF ); - - LoRaMacInitNwkIds( LORAWAN_NETWORK_ID, DevAddr, NwkSKey, AppSKey ); - IsNetworkJoined = true; -#else - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - // Sends a JoinReq Command every OVER_THE_AIR_ACTIVATION_DUTYCYCLE - // seconds until the network is joined - TimerInit( &JoinReqTimer, OnJoinReqTimerEvent ); - TimerSetValue( &JoinReqTimer, OVER_THE_AIR_ACTIVATION_DUTYCYCLE ); -#endif - - TxNextPacket = true; - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - // Low power timer to be run when tests are finished. - TimerInit( &StopTimer, OnStopTimerEvent ); - TimerSetValue( &StopTimer, 3.6e9 ); // wakes up the microcontroller every hour - - DownLinkCounter = 0; - - // Initialize MAC frame - macHdr.Value = 0; -#if ( DOWNLINK_TEST_ON == 1 ) - macHdr.Bits.MType = FRAME_TYPE_DATA_CONFIRMED_UP; -#else - // Disable reception windows opening - LoRaMacTestRxWindowsOn( false ); - macHdr.Bits.MType = FRAME_TYPE_DATA_UNCONFIRMED_UP; -#endif - fCtrl.Value = 0; - fCtrl.Bits.FOptsLen = 0; - fCtrl.Bits.FPending = 0; - fCtrl.Bits.Ack = false; - fCtrl.Bits.AdrAckReq = false; - fCtrl.Bits.Adr = false; - - LoRaMacSetChannelsTxPower( TX_POWER_14_DBM ); - - LoRaMacTestSetDutyCycleOn( false ); - - while( 1 ) - { - while( IsNetworkJoined == false ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - if( TxNextPacket == true ) - { - TxNextPacket = false; - - sendFrameStatus = LoRaMacJoinReq( DevEui, AppEui, AppKey ); - switch( sendFrameStatus ) - { - case 1: // BUSY - break; - case 0: // OK - case 2: // NO_NETWORK_JOINED - case 3: // LENGTH_PORT_ERROR - case 4: // MAC_CMD_ERROR - case 6: // DEVICE_OFF - default: - // Relaunch timer for next trial - TimerStart( &JoinReqTimer ); - break; - } - } - TimerLowPowerHandler( ); -#endif - } - for( datarateIndex = 0; datarateIndex < 3; datarateIndex++ ) - { - pktCnt = NB_PACKETS * ChannelNb; - while( pktCnt > 0 ) - { - if( Led1StateChanged == true ) - { - Led1StateChanged = false; - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); - } - if( Led2StateChanged == true ) - { - Led2StateChanged = false; - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); - } - if( Led3StateChanged == true ) - { - Led3StateChanged = false; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - if( DownlinkStatusUpdate == true ) - { - DownlinkStatusUpdate = false; - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - } - switch( tstState ) - { - case 0: // Init - AppData[0] = SelectorGetValue( ); - AppData[1] = LoRaMacLastRxEvent.RxRssi >> 8; - AppData[2] = LoRaMacLastRxEvent.RxRssi & 0xFF; - AppData[3] = LoRaMacLastRxEvent.RxSnr; - AppData[4] = ( ( DownLinkCounter >> 8 ) & 0xFF ); - AppData[5] = ( ( DownLinkCounter & 0xFF ) ); - - LoRaMacSetChannelsDatarate( channelsDatarate[datarateIndex] ); - LoRaMacSendOnChannel( channels[channelsIndex], &macHdr, &fCtrl, NULL, 15, AppData, AppDataSize ); - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - - channelsIndex = ( channelsIndex + 1 ) % ChannelNb; - - tstState = 1; - break; - case 1: // Wait for end of transmission - if( ScheduleNextTx == true ) - { - ScheduleNextTx = false; - pktCnt--; - // Schedule next packet transmission after 100 ms - TimerSetValue( &TxNextPacketTimer, 100000 ); - TimerStart( &TxNextPacketTimer ); - tstState = 2; - } - break; - case 2: // Wait for next packet timer to expire - if( TxNextPacket == true ) - { - TxNextPacket = false; - tstState = 0; - } - break; - } - - TimerLowPowerHandler( ); - } - } - - // Switch LED OFF - GpioWrite( &Led1, 1 ); - GpioWrite( &Led2, 1 ); - GpioWrite( &Led3, 1 ); - - TimerStart( &StopTimer ); - while( 1 ) // Reset device to restart - { - TimerLowPowerHandler( ); - } - } -} diff --git a/src/apps/LoRaMac/radioCoverageTest/Bleeper-76/Comissioning.h b/src/apps/LoRaMac/radioCoverageTest/Bleeper-76/Comissioning.h deleted file mode 100644 index f663ac2f8..000000000 --- a/src/apps/LoRaMac/radioCoverageTest/Bleeper-76/Comissioning.h +++ /dev/null @@ -1,77 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2015 Semtech - -Description: End device comissioning parameters - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __LORA_COMISSIONING_H__ -#define __LORA_COMISSIONING_H__ - -/*! - * When set to 1 the application uses the Over-the-Air activation procedure - * When set to 0 the application uses the Personalization activation procedure - */ -#define OVER_THE_AIR_ACTIVATION 0 - -/*! - * Indicates if the end-device is to be connected to a private or public network - */ -#define LORAWAN_PUBLIC_NETWORK true - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Mote device IEEE EUI (big endian) - * - * \remark In this application the value is automatically generated by calling - * BoardGetUniqueId function - */ -#define LORAWAN_DEVICE_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * Application IEEE EUI (big endian) - */ -#define LORAWAN_APPLICATION_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } - -/*! - * AES encryption/decryption cipher application key - */ -#define LORAWAN_APPLICATION_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#else - -/*! - * Current network ID - */ -#define LORAWAN_NETWORK_ID ( uint32_t )0 - -/*! - * Device address on the network (big endian) - * - * \remark In this application the value is automatically generated using - * a pseudo random generator seeded with a value derived from - * BoardUniqueId value - */ -#define LORAWAN_DEVICE_ADDRESS ( uint32_t )0x00000000 - -/*! - * AES encryption/decryption cipher network session key - */ -#define LORAWAN_NWKSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -/*! - * AES encryption/decryption cipher application session key - */ -#define LORAWAN_APPSKEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C } - -#endif - -#endif // __LORA_COMISSIONING_H__ diff --git a/src/apps/LoRaMac/radioCoverageTest/Bleeper-76/main.c b/src/apps/LoRaMac/radioCoverageTest/Bleeper-76/main.c deleted file mode 100644 index f0728eb85..000000000 --- a/src/apps/LoRaMac/radioCoverageTest/Bleeper-76/main.c +++ /dev/null @@ -1,492 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Radio coverage tester implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include -#include "board.h" - -#include "LoRaMac-api-v3.h" -#include "Comissioning.h" - -/*! - * Number of packets sent by channel - */ -#define NB_PACKETS 15 - -/*! - * Enables/Disables the downlink test - */ -#define DOWNLINK_TEST_ON 0 - -/*! - * Join requests trials duty cycle. - */ -#define OVER_THE_AIR_ACTIVATION_DUTYCYCLE 10000000 // 10 [s] value in us - -/*! - * Defines the application data transmission duty cycle. 5s, value in [us]. - */ -#define APP_TX_DUTYCYCLE 5000000 - -/*! - * Defines a random delay for application data transmission duty cycle. 1s, - * value in [us]. - */ -#define APP_TX_DUTYCYCLE_RND 1000000 - -/*! - * LoRaWAN confirmed messages - */ -#define LORAWAN_CONFIRMED_MSG_ON false - -/*! - * LoRaWAN Adaptive Data Rate - * - * \remark Please note that when ADR is enabled the end-device should be static - */ -#define LORAWAN_ADR_ON 1 - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_SIZE 6 - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -static uint8_t DevEui[] = LORAWAN_DEVICE_EUI; -static uint8_t AppEui[] = LORAWAN_APPLICATION_EUI; -static uint8_t AppKey[] = LORAWAN_APPLICATION_KEY; - -#else - -static uint8_t NwkSKey[] = LORAWAN_NWKSKEY; -static uint8_t AppSKey[] = LORAWAN_APPSKEY; - -/*! - * Device address - */ -static uint32_t DevAddr; - -#endif - -/*! - * Indicates if the MAC layer has already joined a network. - */ -static bool IsNetworkJoined = false; - -/*! - * User application data size - */ -static uint8_t AppDataSize = LORAWAN_APP_DATA_SIZE; - -/*! - * User application data buffer size - */ -#define LORAWAN_APP_DATA_MAX_SIZE 64 - -/*! - * User application data - */ -static uint8_t AppData[LORAWAN_APP_DATA_MAX_SIZE]; - -/*! - * Timer to handle the application data transmission duty cycle - */ -static TimerEvent_t TxNextPacketTimer; - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * Defines the join request timer - */ -static TimerEvent_t JoinReqTimer; - -#endif - -/*! - * Indicates if a new packet can be sent - */ -static bool TxNextPacket = true; -static bool ScheduleNextTx = false; -static bool DownlinkStatusUpdate = false; - -static LoRaMacCallbacks_t LoRaMacCallbacks; -static LoRaMacEventInfo_t LoRaMacLastRxEvent; - -static TimerEvent_t Led1Timer; -volatile bool Led1StateChanged = false; - -static TimerEvent_t Led2Timer; -volatile bool Led2StateChanged = false; - -static bool AppLedStateOn = false; -volatile bool Led3StateChanged = false; - -static TimerEvent_t StopTimer; - -static uint8_t ChannelNb; -static uint16_t DownLinkCounter = 0; - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - -/*! - * \brief Function executed on JoinReq Timeout event - */ -static void OnJoinReqTimerEvent( void ) -{ - TimerStop( &JoinReqTimer ); - TxNextPacket = true; -} - -#endif - -/*! - * \brief Function executed on TxNextPacket Timeout event - */ -static void OnTxNextPacketTimerEvent( void ) -{ - TimerStop( &TxNextPacketTimer ); - TxNextPacket = true; -} - -/*! - * \brief Function executed on Led 1 Timeout event - */ -static void OnLed1TimerEvent( void ) -{ - TimerStop( &Led1Timer ); - Led1StateChanged = true; -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -static void OnLed2TimerEvent( void ) -{ - TimerStop( &Led2Timer ); - Led2StateChanged = true; -} - -/*! - * \brief Function executed on Stop Timeout event - */ -static void OnStopTimerEvent( void ) -{ - TimerStart( &StopTimer ); -} - -/*! - * \brief Function to be executed on MAC layer event - */ -static void OnMacEvent( LoRaMacEventFlags_t *flags, LoRaMacEventInfo_t *info ) -{ - int32_t snr = 0; - - LoRaMacLastRxEvent = *info; - - if( flags->Bits.JoinAccept == 1 ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - #if ( DOWNLINK_TEST_ON == 0 ) - // Once joined disable reception windows opening - LoRaMacTestRxWindowsOn( false ); - #endif - TimerStop( &JoinReqTimer ); -#endif - IsNetworkJoined = true; - } - else - { - if( flags->Bits.Tx == 1 ) - { - } - - if( flags->Bits.Rx == 1 ) - { - if( (flags->Bits.RxData == true ) && ( ( info->RxPort == 1 ) || ( info->RxPort == 2 ) ) ) - { - AppLedStateOn = info->RxBuffer[0]; - Led3StateChanged = true; - } - - if( info->RxSnr & 0x80 ) // The SNR sign bit is 1 - { - // Invert and divide by 4 - snr = ( ( ~info->RxSnr + 1 ) & 0xFF ) >> 2; - snr = -snr; - } - else - { - // Divide by 4 - snr = ( info->RxSnr & 0xFF ) >> 2; - } - DownLinkCounter++; - - DownlinkStatusUpdate = true; - TimerStart( &Led2Timer ); - } - } - // Schedule a new transmission - ScheduleNextTx = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ -#if defined( USE_BAND_433 ) - const ChannelParams_t channels[] = - { - { 433175000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 433375000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 433575000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 433775000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 433975000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 434175000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 434300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 434500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - }; - const uint8_t channelsDatarate[] = { DR_5, DR_2, DR_0 }; -#elif defined( USE_BAND_780 ) - const ChannelParams_t channels[] = - { - { 779500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 779700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 779900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 780100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 780300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 780500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 780700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 780900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - }; - const uint8_t channelsDatarate[] = { DR_5, DR_2, DR_0 }; -#elif defined( USE_BAND_868 ) - const ChannelParams_t channels[] = - { - { 868100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 868300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 868500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 }, - }; - const uint8_t channelsDatarate[] = { DR_5, DR_2, DR_0 }; -#elif defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) - const ChannelParams_t channels[] = - { - { 902300000, { ( ( DR_3 << 4 ) | DR_0 ) }, 0 }, - { 902500000, { ( ( DR_3 << 4 ) | DR_0 ) }, 0 }, - { 902700000, { ( ( DR_3 << 4 ) | DR_0 ) }, 0 }, - { 902900000, { ( ( DR_3 << 4 ) | DR_0 ) }, 0 }, - { 903100000, { ( ( DR_3 << 4 ) | DR_0 ) }, 0 }, - { 903500000, { ( ( DR_3 << 4 ) | DR_0 ) }, 0 }, - { 903700000, { ( ( DR_3 << 4 ) | DR_0 ) }, 0 }, - { 903900000, { ( ( DR_3 << 4 ) | DR_0 ) }, 0 }, - }; - const uint8_t channelsDatarate[] = { DR_3, DR_2, DR_0 }; -#else - #error "Please define a frequency band in the compiler options." -#endif - - ChannelNb = ( sizeof( channels ) / sizeof( ChannelParams_t ) ); - -#if( OVER_THE_AIR_ACTIVATION != 0 ) - uint8_t sendFrameStatus = 0; -#endif - uint8_t tstState = 0; - int16_t pktCnt = NB_PACKETS; - LoRaMacHeader_t macHdr; - LoRaMacFrameCtrl_t fCtrl; - uint8_t channelsIndex = 0; - uint8_t datarateIndex = 0; - - BoardInitMcu( ); - BoardInitPeriph( ); - - LoRaMacCallbacks.MacEvent = OnMacEvent; - LoRaMacCallbacks.GetBatteryLevel = BoardGetBatteryLevel; - LoRaMacInit( &LoRaMacCallbacks ); - - IsNetworkJoined = false; - -#if( OVER_THE_AIR_ACTIVATION == 0 ) - // Random seed initialization - srand1( BoardGetRandomSeed( ) ); - // Choose a random device address based on Board unique ID - // NwkAddr rand [0, 33554431] - DevAddr = randr( 0, 0x01FFFFFF ); - - LoRaMacInitNwkIds( LORAWAN_NETWORK_ID, DevAddr, NwkSKey, AppSKey ); - IsNetworkJoined = true; -#else - // Initialize LoRaMac device unique ID - BoardGetUniqueId( DevEui ); - - // Sends a JoinReq Command every OVER_THE_AIR_ACTIVATION_DUTYCYCLE - // seconds until the network is joined - TimerInit( &JoinReqTimer, OnJoinReqTimerEvent ); - TimerSetValue( &JoinReqTimer, OVER_THE_AIR_ACTIVATION_DUTYCYCLE ); -#endif - - TxNextPacket = true; - TimerInit( &TxNextPacketTimer, OnTxNextPacketTimerEvent ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 25000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 25000 ); - - // Low power timer to be run when tests are finished. - TimerInit( &StopTimer, OnStopTimerEvent ); - TimerSetValue( &StopTimer, 3.6e9 ); // wakes up the microcontroller every hour - - DownLinkCounter = 0; - - // Initialize MAC frame - macHdr.Value = 0; -#if ( DOWNLINK_TEST_ON == 1 ) - macHdr.Bits.MType = FRAME_TYPE_DATA_CONFIRMED_UP; -#else - // Disable reception windows opening - LoRaMacTestRxWindowsOn( false ); - macHdr.Bits.MType = FRAME_TYPE_DATA_UNCONFIRMED_UP; -#endif - fCtrl.Value = 0; - fCtrl.Bits.FOptsLen = 0; - fCtrl.Bits.FPending = 0; - fCtrl.Bits.Ack = false; - fCtrl.Bits.AdrAckReq = false; - fCtrl.Bits.Adr = false; - - LoRaMacSetChannelsTxPower( TX_POWER_14_DBM ); - - LoRaMacTestSetDutyCycleOn( false ); - - while( 1 ) - { - while( IsNetworkJoined == false ) - { -#if( OVER_THE_AIR_ACTIVATION != 0 ) - if( TxNextPacket == true ) - { - TxNextPacket = false; - - sendFrameStatus = LoRaMacJoinReq( DevEui, AppEui, AppKey ); - switch( sendFrameStatus ) - { - case 1: // BUSY - break; - case 0: // OK - case 2: // NO_NETWORK_JOINED - case 3: // LENGTH_PORT_ERROR - case 4: // MAC_CMD_ERROR - case 6: // DEVICE_OFF - default: - // Relaunch timer for next trial - TimerStart( &JoinReqTimer ); - break; - } - } - TimerLowPowerHandler( ); -#endif - } - for( datarateIndex = 0; datarateIndex < 3; datarateIndex++ ) - { - pktCnt = NB_PACKETS * ChannelNb; - while( pktCnt > 0 ) - { - if( Led1StateChanged == true ) - { - Led1StateChanged = false; - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); - } - if( Led2StateChanged == true ) - { - Led2StateChanged = false; - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); - } - if( Led3StateChanged == true ) - { - Led3StateChanged = false; - GpioWrite( &Led3, ( ( AppLedStateOn & 0x01 ) != 0 ) ? 0 : 1 ); - } - if( DownlinkStatusUpdate == true ) - { - DownlinkStatusUpdate = false; - // Switch LED 2 ON for each received downlink - GpioWrite( &Led2, 0 ); - } - switch( tstState ) - { - case 0: // Init - AppData[0] = SelectorGetValue( ); - AppData[1] = LoRaMacLastRxEvent.RxRssi >> 8; - AppData[2] = LoRaMacLastRxEvent.RxRssi & 0xFF; - AppData[3] = LoRaMacLastRxEvent.RxSnr; - AppData[4] = ( ( DownLinkCounter >> 8 ) & 0xFF ); - AppData[5] = ( ( DownLinkCounter & 0xFF ) ); - - LoRaMacSetChannelsDatarate( channelsDatarate[datarateIndex] ); - LoRaMacSendOnChannel( channels[channelsIndex], &macHdr, &fCtrl, NULL, 15, AppData, AppDataSize ); - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - - channelsIndex = ( channelsIndex + 1 ) % ChannelNb; - - tstState = 1; - break; - case 1: // Wait for end of transmission - if( ScheduleNextTx == true ) - { - ScheduleNextTx = false; - pktCnt--; - // Schedule next packet transmission after 100 ms - TimerSetValue( &TxNextPacketTimer, 100000 ); - TimerStart( &TxNextPacketTimer ); - tstState = 2; - } - break; - case 2: // Wait for next packet timer to expire - if( TxNextPacket == true ) - { - TxNextPacket = false; - tstState = 0; - } - break; - } - - TimerLowPowerHandler( ); - } - } - - // Switch LED OFF - GpioWrite( &Led1, 1 ); - GpioWrite( &Led2, 1 ); - GpioWrite( &Led3, 1 ); - - TimerStart( &StopTimer ); - while( 1 ) // Reset device to restart - { - TimerLowPowerHandler( ); - } - } -} diff --git a/src/apps/ping-pong/Bleeper-72/main.c b/src/apps/ping-pong/Bleeper-72/main.c deleted file mode 100644 index bfee8fa76..000000000 --- a/src/apps/ping-pong/Bleeper-72/main.c +++ /dev/null @@ -1,305 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Ping-Pong implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include "board.h" -#include "radio.h" - -#define RF_FREQUENCY 868000000 // Hz -#define TX_OUTPUT_POWER 14 // dBm - -#if defined( USE_MODEM_LORA ) - -#define LORA_BANDWIDTH 0 // [0: 125 kHz, - // 1: 250 kHz, - // 2: 500 kHz, - // 3: Reserved] -#define LORA_SPREADING_FACTOR 7 // [SF7..SF12] -#define LORA_CODINGRATE 1 // [1: 4/5, - // 2: 4/6, - // 3: 4/7, - // 4: 4/8] -#define LORA_PREAMBLE_LENGTH 8 // Same for Tx and Rx -#define LORA_SYMBOL_TIMEOUT 5 // Symbols -#define LORA_FIX_LENGTH_PAYLOAD_ON false -#define LORA_IQ_INVERSION_ON false - -#elif defined( USE_MODEM_FSK ) - -#define FSK_FDEV 25e3 // Hz -#define FSK_DATARATE 50e3 // bps -#define FSK_BANDWIDTH 50e3 // Hz -#define FSK_AFC_BANDWIDTH 83.333e3 // Hz -#define FSK_PREAMBLE_LENGTH 5 // Same for Tx and Rx -#define FSK_FIX_LENGTH_PAYLOAD_ON false - -#else - #error "Please define a modem in the compiler options." -#endif - -typedef enum -{ - LOWPOWER, - RX, - RX_TIMEOUT, - RX_ERROR, - TX, - TX_TIMEOUT, -}States_t; - -#define RX_TIMEOUT_VALUE 1000000 -#define BUFFER_SIZE 64 // Define the payload size here - -const uint8_t PingMsg[] = "PING"; -const uint8_t PongMsg[] = "PONG"; - -uint16_t BufferSize = BUFFER_SIZE; -uint8_t Buffer[BUFFER_SIZE]; - -States_t State = LOWPOWER; - -int8_t RssiValue = 0; -int8_t SnrValue = 0; - -/*! - * Radio events function pointer - */ -static RadioEvents_t RadioEvents; - -/*! - * \brief Function to be executed on Radio Tx Done event - */ -void OnTxDone( void ); - -/*! - * \brief Function to be executed on Radio Rx Done event - */ -void OnRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr ); - -/*! - * \brief Function executed on Radio Tx Timeout event - */ -void OnTxTimeout( void ); - -/*! - * \brief Function executed on Radio Rx Timeout event - */ -void OnRxTimeout( void ); - -/*! - * \brief Function executed on Radio Rx Error event - */ -void OnRxError( void ); - -/** - * Main application entry point. - */ -int main( void ) -{ - bool isMaster = true; - uint8_t i; - - // Target board initialisation - BoardInitMcu( ); - BoardInitPeriph( ); - - // Radio initialization - RadioEvents.TxDone = OnTxDone; - RadioEvents.RxDone = OnRxDone; - RadioEvents.TxTimeout = OnTxTimeout; - RadioEvents.RxTimeout = OnRxTimeout; - RadioEvents.RxError = OnRxError; - - Radio.Init( &RadioEvents ); - - Radio.SetChannel( RF_FREQUENCY ); - -#if defined( USE_MODEM_LORA ) - - Radio.SetTxConfig( MODEM_LORA, TX_OUTPUT_POWER, 0, LORA_BANDWIDTH, - LORA_SPREADING_FACTOR, LORA_CODINGRATE, - LORA_PREAMBLE_LENGTH, LORA_FIX_LENGTH_PAYLOAD_ON, - true, 0, 0, LORA_IQ_INVERSION_ON, 3000000 ); - - Radio.SetRxConfig( MODEM_LORA, LORA_BANDWIDTH, LORA_SPREADING_FACTOR, - LORA_CODINGRATE, 0, LORA_PREAMBLE_LENGTH, - LORA_SYMBOL_TIMEOUT, LORA_FIX_LENGTH_PAYLOAD_ON, - 0, true, 0, 0, LORA_IQ_INVERSION_ON, true ); - -#elif defined( USE_MODEM_FSK ) - - Radio.SetTxConfig( MODEM_FSK, TX_OUTPUT_POWER, FSK_FDEV, 0, - FSK_DATARATE, 0, - FSK_PREAMBLE_LENGTH, FSK_FIX_LENGTH_PAYLOAD_ON, - true, 0, 0, 0, 3000000 ); - - Radio.SetRxConfig( MODEM_FSK, FSK_BANDWIDTH, FSK_DATARATE, - 0, FSK_AFC_BANDWIDTH, FSK_PREAMBLE_LENGTH, - 0, FSK_FIX_LENGTH_PAYLOAD_ON, 0, true, - 0, 0,false, true ); - -#else - #error "Please define a frequency band in the compiler options." -#endif - - Radio.Rx( RX_TIMEOUT_VALUE ); - - while( 1 ) - { - switch( State ) - { - case RX: - if( isMaster == true ) - { - if( BufferSize > 0 ) - { - if( strncmp( ( const char* )Buffer, ( const char* )PongMsg, 4 ) == 0 ) - { - // Indicates on a LED that the received frame is a PONG - GpioWrite( &Led1, GpioRead( &Led1 ) ^ 1 ); - - // Send the next PING frame - Buffer[0] = 'P'; - Buffer[1] = 'I'; - Buffer[2] = 'N'; - Buffer[3] = 'G'; - // We fill the buffer with numbers for the payload - for( i = 4; i < BufferSize; i++ ) - { - Buffer[i] = i - 4; - } - DelayMs( 1 ); - Radio.Send( Buffer, BufferSize ); - } - else if( strncmp( ( const char* )Buffer, ( const char* )PingMsg, 4 ) == 0 ) - { // A master already exists then become a slave - isMaster = false; - GpioWrite( &Led2, 1 ); // Set LED off - Radio.Rx( RX_TIMEOUT_VALUE ); - } - else // valid reception but neither a PING or a PONG message - { // Set device as master ans start again - isMaster = true; - Radio.Rx( RX_TIMEOUT_VALUE ); - } - } - } - else - { - if( BufferSize > 0 ) - { - if( strncmp( ( const char* )Buffer, ( const char* )PingMsg, 4 ) == 0 ) - { - // Indicates on a LED that the received frame is a PING - GpioWrite( &Led1, GpioRead( &Led1 ) ^ 1 ); - - // Send the reply to the PONG string - Buffer[0] = 'P'; - Buffer[1] = 'O'; - Buffer[2] = 'N'; - Buffer[3] = 'G'; - // We fill the buffer with numbers for the payload - for( i = 4; i < BufferSize; i++ ) - { - Buffer[i] = i - 4; - } - DelayMs( 1 ); - Radio.Send( Buffer, BufferSize ); - } - else // valid reception but not a PING as expected - { // Set device as master and start again - isMaster = true; - Radio.Rx( RX_TIMEOUT_VALUE ); - } - } - } - State = LOWPOWER; - break; - case TX: - // Indicates on a LED that we have sent a PING [Master] - // Indicates on a LED that we have sent a PONG [Slave] - GpioWrite( &Led2, GpioRead( &Led2 ) ^ 1 ); - Radio.Rx( RX_TIMEOUT_VALUE ); - State = LOWPOWER; - break; - case RX_TIMEOUT: - case RX_ERROR: - if( isMaster == true ) - { - // Send the next PING frame - Buffer[0] = 'P'; - Buffer[1] = 'I'; - Buffer[2] = 'N'; - Buffer[3] = 'G'; - for( i = 4; i < BufferSize; i++ ) - { - Buffer[i] = i - 4; - } - DelayMs( 1 ); - Radio.Send( Buffer, BufferSize ); - } - else - { - Radio.Rx( RX_TIMEOUT_VALUE ); - } - State = LOWPOWER; - break; - case TX_TIMEOUT: - Radio.Rx( RX_TIMEOUT_VALUE ); - State = LOWPOWER; - break; - case LOWPOWER: - default: - // Set low power - break; - } - - TimerLowPowerHandler( ); - - } -} - -void OnTxDone( void ) -{ - Radio.Sleep( ); - State = TX; -} - -void OnRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr ) -{ - Radio.Sleep( ); - BufferSize = size; - memcpy( Buffer, payload, BufferSize ); - RssiValue = rssi; - SnrValue = snr; - State = RX; -} - -void OnTxTimeout( void ) -{ - Radio.Sleep( ); - State = TX_TIMEOUT; -} - -void OnRxTimeout( void ) -{ - Radio.Sleep( ); - State = RX_TIMEOUT; -} - -void OnRxError( void ) -{ - Radio.Sleep( ); - State = RX_ERROR; -} diff --git a/src/apps/ping-pong/Bleeper-76/main.c b/src/apps/ping-pong/Bleeper-76/main.c deleted file mode 100644 index eaa53767a..000000000 --- a/src/apps/ping-pong/Bleeper-76/main.c +++ /dev/null @@ -1,324 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Ping-Pong implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include "board.h" -#include "radio.h" - -#if defined( USE_BAND_433 ) - -#define RF_FREQUENCY 434000000 // Hz - -#elif defined( USE_BAND_780 ) - -#define RF_FREQUENCY 780000000 // Hz - -#elif defined( USE_BAND_868 ) - -#define RF_FREQUENCY 868000000 // Hz - -#elif defined( USE_BAND_915 ) - -#define RF_FREQUENCY 915000000 // Hz - -#else - #error "Please define a frequency band in the compiler options." -#endif - -#define TX_OUTPUT_POWER 14 // dBm - -#if defined( USE_MODEM_LORA ) - -#define LORA_BANDWIDTH 0 // [0: 125 kHz, - // 1: 250 kHz, - // 2: 500 kHz, - // 3: Reserved] -#define LORA_SPREADING_FACTOR 7 // [SF7..SF12] -#define LORA_CODINGRATE 1 // [1: 4/5, - // 2: 4/6, - // 3: 4/7, - // 4: 4/8] -#define LORA_PREAMBLE_LENGTH 8 // Same for Tx and Rx -#define LORA_SYMBOL_TIMEOUT 5 // Symbols -#define LORA_FIX_LENGTH_PAYLOAD_ON false -#define LORA_IQ_INVERSION_ON false - -#elif defined( USE_MODEM_FSK ) - -#define FSK_FDEV 25e3 // Hz -#define FSK_DATARATE 50e3 // bps -#define FSK_BANDWIDTH 50e3 // Hz -#define FSK_AFC_BANDWIDTH 83.333e3 // Hz -#define FSK_PREAMBLE_LENGTH 5 // Same for Tx and Rx -#define FSK_FIX_LENGTH_PAYLOAD_ON false - -#else - #error "Please define a modem in the compiler options." -#endif - -typedef enum -{ - LOWPOWER, - RX, - RX_TIMEOUT, - RX_ERROR, - TX, - TX_TIMEOUT, -}States_t; - -#define RX_TIMEOUT_VALUE 1000000 -#define BUFFER_SIZE 64 // Define the payload size here - -const uint8_t PingMsg[] = "PING"; -const uint8_t PongMsg[] = "PONG"; - -uint16_t BufferSize = BUFFER_SIZE; -uint8_t Buffer[BUFFER_SIZE]; - -States_t State = LOWPOWER; - -int8_t RssiValue = 0; -int8_t SnrValue = 0; - -/*! - * Radio events function pointer - */ -static RadioEvents_t RadioEvents; - -/*! - * \brief Function to be executed on Radio Tx Done event - */ -void OnTxDone( void ); - -/*! - * \brief Function to be executed on Radio Rx Done event - */ -void OnRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr ); - -/*! - * \brief Function executed on Radio Tx Timeout event - */ -void OnTxTimeout( void ); - -/*! - * \brief Function executed on Radio Rx Timeout event - */ -void OnRxTimeout( void ); - -/*! - * \brief Function executed on Radio Rx Error event - */ -void OnRxError( void ); - -/** - * Main application entry point. - */ -int main( void ) -{ - bool isMaster = true; - uint8_t i; - - // Target board initialisation - BoardInitMcu( ); - BoardInitPeriph( ); - - // Radio initialization - RadioEvents.TxDone = OnTxDone; - RadioEvents.RxDone = OnRxDone; - RadioEvents.TxTimeout = OnTxTimeout; - RadioEvents.RxTimeout = OnRxTimeout; - RadioEvents.RxError = OnRxError; - - Radio.Init( &RadioEvents ); - - Radio.SetChannel( RF_FREQUENCY ); - -#if defined( USE_MODEM_LORA ) - - Radio.SetTxConfig( MODEM_LORA, TX_OUTPUT_POWER, 0, LORA_BANDWIDTH, - LORA_SPREADING_FACTOR, LORA_CODINGRATE, - LORA_PREAMBLE_LENGTH, LORA_FIX_LENGTH_PAYLOAD_ON, - true, 0, 0, LORA_IQ_INVERSION_ON, 3000000 ); - - Radio.SetRxConfig( MODEM_LORA, LORA_BANDWIDTH, LORA_SPREADING_FACTOR, - LORA_CODINGRATE, 0, LORA_PREAMBLE_LENGTH, - LORA_SYMBOL_TIMEOUT, LORA_FIX_LENGTH_PAYLOAD_ON, - 0, true, 0, 0, LORA_IQ_INVERSION_ON, true ); - -#elif defined( USE_MODEM_FSK ) - - Radio.SetTxConfig( MODEM_FSK, TX_OUTPUT_POWER, FSK_FDEV, 0, - FSK_DATARATE, 0, - FSK_PREAMBLE_LENGTH, FSK_FIX_LENGTH_PAYLOAD_ON, - true, 0, 0, 0, 3000000 ); - - Radio.SetRxConfig( MODEM_FSK, FSK_BANDWIDTH, FSK_DATARATE, - 0, FSK_AFC_BANDWIDTH, FSK_PREAMBLE_LENGTH, - 0, FSK_FIX_LENGTH_PAYLOAD_ON, 0, true, - 0, 0,false, true ); - -#else - #error "Please define a frequency band in the compiler options." -#endif - - Radio.Rx( RX_TIMEOUT_VALUE ); - - while( 1 ) - { - switch( State ) - { - case RX: - if( isMaster == true ) - { - if( BufferSize > 0 ) - { - if( strncmp( ( const char* )Buffer, ( const char* )PongMsg, 4 ) == 0 ) - { - // Indicates on a LED that the received frame is a PONG - GpioWrite( &Led1, GpioRead( &Led1 ) ^ 1 ); - - // Send the next PING frame - Buffer[0] = 'P'; - Buffer[1] = 'I'; - Buffer[2] = 'N'; - Buffer[3] = 'G'; - // We fill the buffer with numbers for the payload - for( i = 4; i < BufferSize; i++ ) - { - Buffer[i] = i - 4; - } - DelayMs( 1 ); - Radio.Send( Buffer, BufferSize ); - } - else if( strncmp( ( const char* )Buffer, ( const char* )PingMsg, 4 ) == 0 ) - { // A master already exists then become a slave - isMaster = false; - GpioWrite( &Led2, 1 ); // Set LED off - Radio.Rx( RX_TIMEOUT_VALUE ); - } - else // valid reception but neither a PING or a PONG message - { // Set device as master ans start again - isMaster = true; - Radio.Rx( RX_TIMEOUT_VALUE ); - } - } - } - else - { - if( BufferSize > 0 ) - { - if( strncmp( ( const char* )Buffer, ( const char* )PingMsg, 4 ) == 0 ) - { - // Indicates on a LED that the received frame is a PING - GpioWrite( &Led1, GpioRead( &Led1 ) ^ 1 ); - - // Send the reply to the PONG string - Buffer[0] = 'P'; - Buffer[1] = 'O'; - Buffer[2] = 'N'; - Buffer[3] = 'G'; - // We fill the buffer with numbers for the payload - for( i = 4; i < BufferSize; i++ ) - { - Buffer[i] = i - 4; - } - DelayMs( 1 ); - Radio.Send( Buffer, BufferSize ); - } - else // valid reception but not a PING as expected - { // Set device as master and start again - isMaster = true; - Radio.Rx( RX_TIMEOUT_VALUE ); - } - } - } - State = LOWPOWER; - break; - case TX: - // Indicates on a LED that we have sent a PING [Master] - // Indicates on a LED that we have sent a PONG [Slave] - GpioWrite( &Led2, GpioRead( &Led2 ) ^ 1 ); - Radio.Rx( RX_TIMEOUT_VALUE ); - State = LOWPOWER; - break; - case RX_TIMEOUT: - case RX_ERROR: - if( isMaster == true ) - { - // Send the next PING frame - Buffer[0] = 'P'; - Buffer[1] = 'I'; - Buffer[2] = 'N'; - Buffer[3] = 'G'; - for( i = 4; i < BufferSize; i++ ) - { - Buffer[i] = i - 4; - } - DelayMs( 1 ); - Radio.Send( Buffer, BufferSize ); - } - else - { - Radio.Rx( RX_TIMEOUT_VALUE ); - } - State = LOWPOWER; - break; - case TX_TIMEOUT: - Radio.Rx( RX_TIMEOUT_VALUE ); - State = LOWPOWER; - break; - case LOWPOWER: - default: - // Set low power - break; - } - - TimerLowPowerHandler( ); - - } -} - -void OnTxDone( void ) -{ - Radio.Sleep( ); - State = TX; -} - -void OnRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr ) -{ - Radio.Sleep( ); - BufferSize = size; - memcpy( Buffer, payload, BufferSize ); - RssiValue = rssi; - SnrValue = snr; - State = RX; -} - -void OnTxTimeout( void ) -{ - Radio.Sleep( ); - State = TX_TIMEOUT; -} - -void OnRxTimeout( void ) -{ - Radio.Sleep( ); - State = RX_TIMEOUT; -} - -void OnRxError( void ) -{ - Radio.Sleep( ); - State = RX_ERROR; -} diff --git a/src/apps/rx-sensi/Bleeper-72/main.c b/src/apps/rx-sensi/Bleeper-72/main.c deleted file mode 100644 index 610ef90a8..000000000 --- a/src/apps/rx-sensi/Bleeper-72/main.c +++ /dev/null @@ -1,111 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Radio sensitivity test. - When LED1 stops blinking LoRa packets aren't received any more and - the sensitivity level has been reached. - By reading the RF generator output power we can estimate the board - sensitivity. - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include "board.h" -#include "radio.h" - -#define RF_FREQUENCY 868000000 // Hz - -#if defined( USE_MODEM_LORA ) - -#define LORA_BANDWIDTH 0 // [0: 125 kHz, - // 1: 250 kHz, - // 2: 500 kHz, - // 3: Reserved] -#define LORA_SPREADING_FACTOR 10 // [SF7..SF12] -#define LORA_CODINGRATE 1 // [1: 4/5, - // 2: 4/6, - // 3: 4/7, - // 4: 4/8] -#define LORA_SYMBOL_TIMEOUT 5 // Symbols -#define LORA_PREAMBLE_LENGTH 8 // Same for Tx and Rx -#define LORA_FIX_LENGTH_PAYLOAD_ON false -#define LORA_IQ_INVERSION_ON false - -#elif defined( USE_MODEM_FSK ) - -#define FSK_DATARATE 50e3 // bps -#define FSK_BANDWIDTH 50e3 // Hz -#define FSK_AFC_BANDWIDTH 83.333e3 // Hz -#define FSK_PREAMBLE_LENGTH 5 // Same for Tx and Rx -#define FSK_FIX_LENGTH_PAYLOAD_ON false - -#else - #error "Please define a modem in the compiler options." -#endif - -/*! - * Radio events function pointer - */ -static RadioEvents_t RadioEvents; - -/*! - * \brief Function to be executed on Radio Rx Done event - */ -void OnRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr ); - -/*! - * Main application entry point. - */ -int main( void ) -{ - // Target board initialisation - BoardInitMcu( ); - BoardInitPeriph( ); - - // Radio initialization - RadioEvents.RxDone = OnRxDone; - - Radio.Init( &RadioEvents ); - - Radio.SetChannel( RF_FREQUENCY ); - -#if defined( USE_MODEM_LORA ) - - Radio.SetRxConfig( MODEM_LORA, LORA_BANDWIDTH, LORA_SPREADING_FACTOR, - LORA_CODINGRATE, 0, LORA_PREAMBLE_LENGTH, - LORA_SYMBOL_TIMEOUT, LORA_FIX_LENGTH_PAYLOAD_ON, - 0, true, 0, 0, LORA_IQ_INVERSION_ON, true ); - -#elif defined( USE_MODEM_FSK ) - - Radio.SetRxConfig( MODEM_FSK, FSK_BANDWIDTH, FSK_DATARATE, - 0, FSK_AFC_BANDWIDTH, FSK_PREAMBLE_LENGTH, - 0, FSK_FIX_LENGTH_PAYLOAD_ON, 0, true, - 0, 0, false, true ); - -#else - #error "Please define a frequency band in the compiler options." -#endif - - Radio.Rx( 0 ); // Continuous Rx - - while( 1 ) - { - TimerLowPowerHandler( ); - } -} - -void OnRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr ) -{ - static uint8_t ledState = 1; - // Toggle LED 1 - ledState ^= 1; - GpioWrite( &Led1, ledState ); -} diff --git a/src/apps/rx-sensi/Bleeper-76/main.c b/src/apps/rx-sensi/Bleeper-76/main.c deleted file mode 100644 index 30deb11ae..000000000 --- a/src/apps/rx-sensi/Bleeper-76/main.c +++ /dev/null @@ -1,129 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Radio sensitivity test. - When LED1 stops blinking LoRa packets aren't received any more and - the sensitivity level has been reached. - By reading the RF generator output power we can estimate the board - sensitivity. - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include "board.h" -#include "radio.h" - -#if defined( USE_BAND_433 ) - -#define RF_FREQUENCY 434000000 // Hz - -#elif defined( USE_BAND_780 ) - -#define RF_FREQUENCY 780000000 // Hz - -#elif defined( USE_BAND_868 ) - -#define RF_FREQUENCY 868000000 // Hz - -#elif defined( USE_BAND_915 ) - -#define RF_FREQUENCY 915000000 // Hz - -#else - #error "Please define a frequency band in the compiler options." -#endif - -#if defined( USE_MODEM_LORA ) - -#define LORA_BANDWIDTH 0 // [0: 125 kHz, - // 1: 250 kHz, - // 2: 500 kHz, - // 3: Reserved] -#define LORA_SPREADING_FACTOR 10 // [SF7..SF12] -#define LORA_CODINGRATE 1 // [1: 4/5, - // 2: 4/6, - // 3: 4/7, - // 4: 4/8] -#define LORA_SYMBOL_TIMEOUT 5 // Symbols -#define LORA_PREAMBLE_LENGTH 8 // Same for Tx and Rx -#define LORA_FIX_LENGTH_PAYLOAD_ON false -#define LORA_IQ_INVERSION_ON false - -#elif defined( USE_MODEM_FSK ) - -#define FSK_DATARATE 50e3 // bps -#define FSK_BANDWIDTH 50e3 // Hz -#define FSK_AFC_BANDWIDTH 83.333e3 // Hz -#define FSK_PREAMBLE_LENGTH 5 // Same for Tx and Rx -#define FSK_FIX_LENGTH_PAYLOAD_ON false - -#else - #error "Please define a modem in the compiler options." -#endif - -/*! - * Radio events function pointer - */ -static RadioEvents_t RadioEvents; - -/*! - * \brief Function to be executed on Radio Rx Done event - */ -void OnRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr ); - -/*! - * Main application entry point. - */ -int main( void ) -{ - // Target board initialisation - BoardInitMcu( ); - BoardInitPeriph( ); - - // Radio initialization - RadioEvents.RxDone = OnRxDone; - - Radio.Init( &RadioEvents ); - - Radio.SetChannel( RF_FREQUENCY ); - -#if defined( USE_MODEM_LORA ) - - Radio.SetRxConfig( MODEM_LORA, LORA_BANDWIDTH, LORA_SPREADING_FACTOR, - LORA_CODINGRATE, 0, LORA_PREAMBLE_LENGTH, - LORA_SYMBOL_TIMEOUT, LORA_FIX_LENGTH_PAYLOAD_ON, - 0, true, 0, 0, LORA_IQ_INVERSION_ON, true ); - -#elif defined( USE_MODEM_FSK ) - - Radio.SetRxConfig( MODEM_FSK, FSK_BANDWIDTH, FSK_DATARATE, - 0, FSK_AFC_BANDWIDTH, FSK_PREAMBLE_LENGTH, - 0, FSK_FIX_LENGTH_PAYLOAD_ON, 0, true, - 0, 0, false, true ); - -#else - #error "Please define a frequency band in the compiler options." -#endif - - Radio.Rx( 0 ); // Continuous Rx - - while( 1 ) - { - TimerLowPowerHandler( ); - } -} - -void OnRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr ) -{ - static uint8_t ledState = 1; - // Toggle LED 1 - ledState ^= 1; - GpioWrite( &Led1, ledState ); -} diff --git a/src/apps/tx-cw/Bleeper-72/main.c b/src/apps/tx-cw/Bleeper-72/main.c deleted file mode 100644 index 4eaecaabc..000000000 --- a/src/apps/tx-cw/Bleeper-72/main.c +++ /dev/null @@ -1,150 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Tx Continuous Wave implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include "board.h" -#include "radio.h" - -#define RF_FREQUENCY 868000000 // Hz -#define TX_OUTPUT_POWER 14 // 14 dBm - -#define LORA_BANDWIDTH 0 // [0: 125 kHz, - // 1: 250 kHz, - // 2: 500 kHz, - // 3: Reserved] -#define LORA_SPREADING_FACTOR 9 // [SF7..SF12] -#define LORA_CODINGRATE 1 // [1: 4/5, - // 2: 4/6, - // 3: 4/7, - // 4: 4/8] -#define LORA_PREAMBLE_LENGTH 8 // Same for Tx and Rx -#define LORA_FIX_LENGTH_PAYLOAD_ON false -#define LORA_IQ_INVERSION_ON false - -static TimerEvent_t Led1Timer; -volatile bool Led1TimerEvent = false; - -static TimerEvent_t Led2Timer; -volatile bool Led2TimerEvent = false; - -static TimerEvent_t Led3Timer; -volatile bool Led3TimerEvent = false; - -/*! - * \brief Function executed on Led 1 Timeout event - */ -void OnLed1TimerEvent( void ) -{ - Led1TimerEvent = true; -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -void OnLed2TimerEvent( void ) -{ - Led2TimerEvent = true; -} - -/*! - * \brief Function executed on Led 3 Timeout event - */ -void OnLed3TimerEvent( void ) -{ - Led3TimerEvent = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ - // Target board initialisation - BoardInitMcu( ); - BoardInitPeriph( ); - - // Radio initialization - Radio.Init( NULL ); - - Radio.SetChannel( RF_FREQUENCY ); - - Radio.SetTxConfig( MODEM_LORA, TX_OUTPUT_POWER, 0, LORA_BANDWIDTH, - LORA_SPREADING_FACTOR, LORA_CODINGRATE, - LORA_PREAMBLE_LENGTH, LORA_FIX_LENGTH_PAYLOAD_ON, - true, 0, 0, LORA_IQ_INVERSION_ON, 3000000 ); - - /**********************************************/ - /* WARNING */ - /* The below settings can damage the chipset */ - /* if wrongly used. DO NOT CHANGE THE VALUES! */ - /* */ - /**********************************************/ - - Radio.Write( 0x3D, 0xAF ); - Radio.Write( 0x1e, 0x08 ); - Radio.Write( 0x01, 0x83 ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 90000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 90000 ); - - TimerInit( &Led3Timer, OnLed3TimerEvent ); - TimerSetValue( &Led3Timer, 90000 ); - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - - // Sets the radio in Tx mode - Radio.Send( NULL, 0 ); - - // Blink LEDs just to show some activity - while( 1 ) - { - if( Led1TimerEvent == true ) - { - Led1TimerEvent = false; - - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); - // Switch LED 2 ON - GpioWrite( &Led2, 0 ); - TimerStart( &Led2Timer ); - } - - if( Led2TimerEvent == true ) - { - Led2TimerEvent = false; - - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); - // Switch LED 3 ON - GpioWrite( &Led3, 0 ); - TimerStart( &Led3Timer ); - } - - if( Led3TimerEvent == true ) - { - Led3TimerEvent = false; - - // Switch LED 3 OFF - GpioWrite( &Led3, 1 ); - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - } - } -} diff --git a/src/apps/tx-cw/Bleeper-76/main.c b/src/apps/tx-cw/Bleeper-76/main.c deleted file mode 100644 index 513d3b6b1..000000000 --- a/src/apps/tx-cw/Bleeper-76/main.c +++ /dev/null @@ -1,187 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Tx Continuous Wave implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include "board.h" -#include "radio.h" - -#if defined( USE_BAND_433 ) - -#define RF_FREQUENCY 434000000 // Hz -#define TX_OUTPUT_POWER 14 // 14 dBm - -#elif defined( USE_BAND_780 ) - -#define RF_FREQUENCY 780000000 // Hz -#define TX_OUTPUT_POWER 14 // 14 dBm - -#elif defined( USE_BAND_868 ) - -#define RF_FREQUENCY 868000000 // Hz -#define TX_OUTPUT_POWER 20 // 20 dBm - -#elif defined( USE_BAND_915 ) - -#define RF_FREQUENCY 915000000 // Hz -#define TX_OUTPUT_POWER 20 // 20 dBm - -#else - #error "Please define a frequency band in the compiler options." -#endif - - -#define LORA_BANDWIDTH 0 // [0: 125 kHz, - // 1: 250 kHz, - // 2: 500 kHz, - // 3: Reserved] -#define LORA_SPREADING_FACTOR 9 // [SF7..SF12] -#define LORA_CODINGRATE 1 // [1: 4/5, - // 2: 4/6, - // 3: 4/7, - // 4: 4/8] -#define LORA_PREAMBLE_LENGTH 8 // Same for Tx and Rx -#define LORA_FIX_LENGTH_PAYLOAD_ON false -#define LORA_IQ_INVERSION_ON false - -static TimerEvent_t Led1Timer; -volatile bool Led1TimerEvent = false; - -static TimerEvent_t Led2Timer; -volatile bool Led2TimerEvent = false; - -static TimerEvent_t Led3Timer; -volatile bool Led3TimerEvent = false; - -/*! - * \brief Function executed on Led 1 Timeout event - */ -void OnLed1TimerEvent( void ) -{ - Led1TimerEvent = true; -} - -/*! - * \brief Function executed on Led 2 Timeout event - */ -void OnLed2TimerEvent( void ) -{ - Led2TimerEvent = true; -} - -/*! - * \brief Function executed on Led 3 Timeout event - */ -void OnLed3TimerEvent( void ) -{ - Led3TimerEvent = true; -} - -/** - * Main application entry point. - */ -int main( void ) -{ - // Target board initialisation - BoardInitMcu( ); - BoardInitPeriph( ); - - // Radio initialization - Radio.Init( NULL ); - - Radio.SetChannel( RF_FREQUENCY ); - /**********************************************/ - /* WARNING */ - /* The below settings can damage the chipset */ - /* if wrongly used. DO NOT CHANGE THE VALUES! */ - /* */ - /**********************************************/ -#if defined( USE_BAND_433 ) - - Radio.Write( 0x01, 0x88 ); - Radio.Write( 0x3D, 0xA1 ); - Radio.Write( 0x36, 0x01 ); - Radio.Write( 0x1e, 0x08 ); - -#elif ( defined( USE_BAND_780 ) || defined( USE_BAND_868 ) || defined( USE_BAND_915 ) ) - - Radio.Write( 0x01, 0x80 ); - Radio.Write( 0x44, 0x7B ); - Radio.Write( 0x3D, 0xA1 ); - Radio.Write( 0x36, 0x01 ); - Radio.Write( 0x1e, 0x08 ); - Radio.Write( 0x45, 0xDF ); - Radio.Write( 0x46, 0x03 ); - Radio.Write( 0x4D, 0x87 ); - Radio.Write( 0x52, 0x60 ); - -#endif - - Radio.SetTxConfig( MODEM_LORA, TX_OUTPUT_POWER, 0, LORA_BANDWIDTH, - LORA_SPREADING_FACTOR, LORA_CODINGRATE, - LORA_PREAMBLE_LENGTH, LORA_FIX_LENGTH_PAYLOAD_ON, - true, 0, 0, LORA_IQ_INVERSION_ON, 3000000 ); - - TimerInit( &Led1Timer, OnLed1TimerEvent ); - TimerSetValue( &Led1Timer, 90000 ); - - TimerInit( &Led2Timer, OnLed2TimerEvent ); - TimerSetValue( &Led2Timer, 90000 ); - - TimerInit( &Led3Timer, OnLed3TimerEvent ); - TimerSetValue( &Led3Timer, 90000 ); - - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - - // Sets the radio in Tx mode - Radio.Send( NULL, 0 ); - - // Blink LEDs just to show some activity - while( 1 ) - { - if( Led1TimerEvent == true ) - { - Led1TimerEvent = false; - - // Switch LED 1 OFF - GpioWrite( &Led1, 1 ); - // Switch LED 2 ON - GpioWrite( &Led2, 0 ); - TimerStart( &Led2Timer ); - } - - if( Led2TimerEvent == true ) - { - Led2TimerEvent = false; - - // Switch LED 2 OFF - GpioWrite( &Led2, 1 ); - // Switch LED 3 ON - GpioWrite( &Led3, 0 ); - TimerStart( &Led3Timer ); - } - - if( Led3TimerEvent == true ) - { - Led3TimerEvent = false; - - // Switch LED 3 OFF - GpioWrite( &Led3, 1 ); - // Switch LED 1 ON - GpioWrite( &Led1, 0 ); - TimerStart( &Led1Timer ); - } - } -} diff --git a/src/boards/Bleeper-72/LoRaMac-board.h b/src/boards/Bleeper-72/LoRaMac-board.h deleted file mode 100644 index 403f0baa5..000000000 --- a/src/boards/Bleeper-72/LoRaMac-board.h +++ /dev/null @@ -1,143 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRa MAC layer board dependent definitions - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __LORAMAC_BOARD_H__ -#define __LORAMAC_BOARD_H__ - -/*! - * Returns individual channel mask - * - * \param[IN] channelIndex Channel index 1 based - * \retval channelMask - */ -#define LC( channelIndex ) ( uint16_t )( 1 << ( channelIndex - 1 ) ) - -#if defined( USE_BAND_868 ) - -/*! - * LoRaMac maximum number of channels - */ -#define LORA_MAX_NB_CHANNELS 16 - -/*! - * Minimal datarate that can be used by the node - */ -#define LORAMAC_MIN_DATARATE DR_0 - -/*! - * Minimal datarate that can be used by the node - */ -#define LORAMAC_MAX_DATARATE DR_7 - -/*! - * Default datarate used by the node - */ -#define LORAMAC_DEFAULT_DATARATE DR_0 - -/*! - * Minimal Rx1 receive datarate offset - */ -#define LORAMAC_MIN_RX1_DR_OFFSET 0 - -/*! - * Maximal Rx1 receive datarate offset - */ -#define LORAMAC_MAX_RX1_DR_OFFSET 5 - -/*! - * Minimal Tx output power that can be used by the node - */ -#define LORAMAC_MIN_TX_POWER TX_POWER_02_DBM - -/*! - * Minimal Tx output power that can be used by the node - */ -#define LORAMAC_MAX_TX_POWER TX_POWER_20_DBM - -/*! - * Default Tx output power used by the node - */ -#define LORAMAC_DEFAULT_TX_POWER TX_POWER_14_DBM - -/*! - * LoRaMac TxPower definition - */ -#define TX_POWER_20_DBM 0 -#define TX_POWER_14_DBM 1 -#define TX_POWER_11_DBM 2 -#define TX_POWER_08_DBM 3 -#define TX_POWER_05_DBM 4 -#define TX_POWER_02_DBM 5 - -/*! - * LoRaMac datarates definition - */ -#define DR_0 0 // SF12 - BW125 -#define DR_1 1 // SF11 - BW125 -#define DR_2 2 // SF10 - BW125 -#define DR_3 3 // SF9 - BW125 -#define DR_4 4 // SF8 - BW125 -#define DR_5 5 // SF7 - BW125 -#define DR_6 6 // SF7 - BW250 -#define DR_7 7 // FSK - -/*! - * Second reception window channel definition. - */ -// Channel = { Frequency [Hz], Datarate } -#define RX_WND_2_CHANNEL { 869525000, DR_0 } - -/*! - * LoRaMac maximum number of bands - */ -#define LORA_MAX_NB_BANDS 5 - -/*! - * LoRaMac EU868 default bands - */ -typedef enum -{ - BAND_G1_0, - BAND_G1_1, - BAND_G1_2, - BAND_G1_3, - BAND_G1_4, -}BandId_t; - -// Band = { DutyCycle, TxMaxPower, LastTxDoneTime, TimeOff } -#define BAND0 { 100 , TX_POWER_14_DBM, 0, 0 } // 1.0 % -#define BAND1 { 100 , TX_POWER_14_DBM, 0, 0 } // 1.0 % -#define BAND2 { 1000, TX_POWER_14_DBM, 0, 0 } // 0.1 % -#define BAND3 { 10 , TX_POWER_14_DBM, 0, 0 } // 10.0 % -#define BAND4 { 100 , TX_POWER_14_DBM, 0, 0 } // 1.0 % - -/*! - * LoRaMac default channels - */ -// Channel = { Frequency [Hz], { ( ( DrMax << 4 ) | DrMin ) }, Band } -#define LC1 { 868100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 1 } -#define LC2 { 868300000, { ( ( DR_6 << 4 ) | DR_0 ) }, 1 } -#define LC3 { 868500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 1 } -#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } - -#else - #error "Please define a frequency band in the compiler options." -#endif - -#endif // __LORAMAC_BOARD_H__ diff --git a/src/boards/Bleeper-72/board.c b/src/boards/Bleeper-72/board.c deleted file mode 100644 index 117b4fd78..000000000 --- a/src/boards/Bleeper-72/board.c +++ /dev/null @@ -1,284 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Target board general functions implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include "board.h" - -/*! - * Unique Devices IDs register set ( STM32L1xxx ) - */ -#define ID1 ( 0x1FF80050 ) -#define ID2 ( 0x1FF80054 ) -#define ID3 ( 0x1FF80064 ) - -/*! - * LED GPIO pins objects - */ -Gpio_t Led1; -Gpio_t Led2; -Gpio_t Led3; - -/*! - * Hex coder selector GPIO pins objects - */ -Gpio_t Sel1; -Gpio_t Sel2; -Gpio_t Sel3; -Gpio_t Sel4; - -#if defined( USE_DEBUG_PINS ) -Gpio_t DbgPin1; -Gpio_t DbgPin2; -Gpio_t DbgPin3; -Gpio_t DbgPin4; -#endif - -I2c_t I2c; - -/*! - * Initializes the unused GPIO to a know status - */ -static void BoardUnusedIoInit( void ); - -/*! - * Flag to indicate if the MCU is Initialized - */ -static bool McuInitialized = false; - -volatile uint8_t Led3Status = 1; - -void BoardInitPeriph( void ) -{ - GpioInit( &Sel1, SEL_1, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &Sel2, SEL_2, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &Sel3, SEL_3, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &Sel4, SEL_4, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - - GpioInit( &Led1, LED_1, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - GpioInit( &Led2, LED_2, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - GpioInit( &Led3, LED_3, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, Led3Status ); - - // Init temperature, pressure and altitude sensor - MPL3115Init( ); -} - -void BoardInitMcu( void ) -{ - if( McuInitialized == false ) - { - // We use IRQ priority group 4 for the entire project - // When setting the IRQ, only the preemption priority is used - NVIC_PriorityGroupConfig( NVIC_PriorityGroup_4 ); - - // Disable Systick - SysTick->CTRL &= ~SysTick_CTRL_TICKINT_Msk; // Systick IRQ off - SCB->ICSR |= SCB_ICSR_PENDSTCLR_Msk; // Clear SysTick Exception pending flag - - I2cInit( &I2c, I2C_SCL, I2C_SDA ); - - SpiInit( &SX1272.Spi, RADIO_MOSI, RADIO_MISO, RADIO_SCLK, NC ); - SX1272IoInit( ); - -#if defined( USE_DEBUG_PINS ) - GpioInit( &DbgPin1, J5_1, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &DbgPin2, J5_2, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &DbgPin3, J5_3, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &DbgPin4, J5_4, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); -#endif - BoardInitPeriph( ); - -#if( LOW_POWER_MODE_ENABLE ) - TimerSetLowPowerEnable( true ); -#else - TimerSetLowPowerEnable( false ); -#endif - BoardUnusedIoInit( ); - - if( TimerGetLowPowerEnable( ) == true ) - { - RtcInit( ); - } - else - { - TimerHwInit( ); - } - McuInitialized = true; - } -} - -void BoardDeInitMcu( void ) -{ - Gpio_t ioPin; - - I2cDeInit( &I2c ); - SpiDeInit( &SX1272.Spi ); - SX1272IoDeInit( ); - - GpioInit( &Led1, LED_1, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - GpioInit( &Led2, LED_2, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - Led3Status = GpioRead( &Led3 ); - if( Led3Status == 1 ) - { - GpioInit( &Led3, LED_3, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - } - - GpioInit( &Sel1, SEL_1, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &Sel2, SEL_2, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &Sel3, SEL_3, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &Sel4, SEL_4, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - -#if ( defined( USE_DEBUG_PINS ) && !defined( LOW_POWER_MODE_ENABLE ) ) - GpioInit( &DbgPin1, J5_1, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &DbgPin2, J5_2, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &DbgPin3, J5_3, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &DbgPin4, J5_4, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); -#endif - - GpioInit( &ioPin, OSC_HSE_IN, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - GpioInit( &ioPin, OSC_HSE_OUT, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - - GpioInit( &ioPin, OSC_LSE_IN, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_DOWN, 1 ); - GpioInit( &ioPin, OSC_LSE_OUT, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_DOWN, 1 ); - - McuInitialized = false; -} - -uint32_t BoardGetRandomSeed( void ) -{ - return ( ( *( uint32_t* )ID1 ) ^ ( *( uint32_t* )ID2 ) ^ ( *( uint32_t* )ID3 ) ); -} - -void BoardGetUniqueId( uint8_t *id ) -{ - id[7] = ( ( *( uint32_t* )ID1 )+ ( *( uint32_t* )ID3 ) ) >> 24; - id[6] = ( ( *( uint32_t* )ID1 )+ ( *( uint32_t* )ID3 ) ) >> 16; - id[5] = ( ( *( uint32_t* )ID1 )+ ( *( uint32_t* )ID3 ) ) >> 8; - id[4] = ( ( *( uint32_t* )ID1 )+ ( *( uint32_t* )ID3 ) ); - id[3] = ( ( *( uint32_t* )ID2 ) ) >> 24; - id[2] = ( ( *( uint32_t* )ID2 ) ) >> 16; - id[1] = ( ( *( uint32_t* )ID2 ) ) >> 8; - id[0] = ( ( *( uint32_t* )ID2 ) ); -} - -uint8_t BoardGetBatteryLevel( void ) -{ - uint8_t batteryLevel = 0; - uint8_t i, result = 0; - uint32_t tmpreg = 0; - - RCC_APB1PeriphClockCmd( RCC_APB1Periph_PWR, ENABLE ); - - PWR_PVDCmd( ENABLE ); // activate the voltage reference - DelayMs( 1 ); - - tmpreg = PWR->CR; // get the CR register for a read-modify-write - - for( i = 0; i <= 6; i++ ) - { - PWR->CR = ( ( tmpreg & 0xFFFFFF1F ) | ( i << 5 ) ); // set PVD level from 0 to 6 - DelayMs( 1 ); - if( PWR_GetFlagStatus( PWR_FLAG_PVDO ) == 1 ) - { - result |= 0x01 << i; // use 'result' as a bit array - } - } - PWR_PVDCmd( DISABLE ); // shut down voltage reference - - switch( result ) { // transcribe result and detect invalid codes - case 0x7F: - batteryLevel = 0x1F; // Vbat < 1.9V - break; - case 0x7E: - batteryLevel = 0x3F; // 1.9 < Vbat < 2.1 - break; - case 0x7C: - batteryLevel = 0x5F; // 2.1 < Vbat < 2.3 - break; - case 0x78: - batteryLevel = 0x7F; // 2.3 < Vbat < 2.5 - break; - case 0x70: - batteryLevel = 0x9F; // 2.5 < Vbat < 2.7 - break; - case 0x60: - batteryLevel = 0xBF; // 2.7 < Vbat < 2.9 - break; - case 0x40: - batteryLevel = 0xDF; // 2.9 < Vbat < 3.1 - break; - case 0x00: - batteryLevel = 0xFE; // Vbat > 3.1V - break; - default: - batteryLevel = 0xFF; // Fail - break; - } - return batteryLevel; -} - -static void BoardUnusedIoInit( void ) -{ - Gpio_t ioPin; - - /* Non Connected pin */ - GpioInit( &ioPin, NC_1, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, NC_2, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, NC_3, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, NC_4, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - - /* External Connector J5 */ -#if !defined( USE_DEBUG_PINS ) - GpioInit( &ioPin, J5_1, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, J5_2, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, J5_3, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, J5_4, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); -#endif - - /* External Connector J2 */ - GpioInit( &ioPin, J2_2, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, J2_3, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - - /* SD Card */ - GpioInit( &ioPin, SD_DET, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, SD_DAT0, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, SD_DAT1, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, SD_DAT2, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, SD_DAT3, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, SD_CLK, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, SD_CMD, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - - /* USB */ -#if !defined( USE_USB_CDC ) - GpioInit( &ioPin, USB_DM, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, USB_DP, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); -#endif - - /* BOOT1 pin */ - GpioInit( &ioPin, BOOT_1, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - -#if defined( USE_DEBUGGER ) - DBGMCU_Config( DBGMCU_SLEEP, ENABLE ); - DBGMCU_Config( DBGMCU_STOP, ENABLE); - DBGMCU_Config( DBGMCU_STANDBY, ENABLE); -#else - DBGMCU_Config( DBGMCU_SLEEP, DISABLE ); - DBGMCU_Config( DBGMCU_STOP, DISABLE ); - DBGMCU_Config( DBGMCU_STANDBY, DISABLE ); - - GpioInit( &ioPin, JTAG_TMS, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, JTAG_TCK, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, JTAG_TDI, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, JTAG_TDO, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, JTAG_NRST, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); -#endif -} diff --git a/src/boards/Bleeper-72/board.h b/src/boards/Bleeper-72/board.h deleted file mode 100644 index 206128e73..000000000 --- a/src/boards/Bleeper-72/board.h +++ /dev/null @@ -1,186 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Target board general functions implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __BOARD_H__ -#define __BOARD_H__ - -#include -#include -#include -#include -#include -#include "stm32l1xx.h" -#include "utilities.h" -#include "timer.h" -#include "delay.h" -#include "gpio.h" -#include "spi.h" -#include "i2c.h" -#include "radio.h" -#include "sx1272/sx1272.h" -#include "mpl3115.h" -#include "rtc-board.h" -#include "timer-board.h" -#include "sx1272-board.h" -#include "selector.h" - -/*! - * Generic definition - */ -#ifndef SUCCESS -#define SUCCESS 1 -#endif - -#ifndef FAIL -#define FAIL 0 -#endif - -/*! - * Board MCU pins definitions - */ -#define LED_1 PB_9 -#define LED_2 PB_8 -#define LED_3 PB_5 - -#define RADIO_RESET PC_2 - -#define RADIO_MOSI PA_7 -#define RADIO_MISO PA_6 -#define RADIO_SCLK PA_5 -#define RADIO_NSS PA_4 - -#define RADIO_DIO_0 PA_0 -#define RADIO_DIO_1 PA_1 -#define RADIO_DIO_2 PA_2 -#define RADIO_DIO_3 PA_3 -#define RADIO_DIO_4 PC_4 -#define RADIO_DIO_5 PC_5 - -#define RADIO_ANT_SWITCH_RX PC_0 -#define RADIO_ANT_SWITCH_TX PC_1 - -#define OSC_LSE_IN PC_14 -#define OSC_LSE_OUT PC_15 - -#define OSC_HSE_IN PH_0 -#define OSC_HSE_OUT PH_1 - -#define NC_1 PC_13 -#define NC_2 PC_3 -#define NC_3 PB_1 -#define NC_4 PA_10 - -#define J5_1 PB_12 -#define J5_2 PB_15 -#define J5_3 PB_14 -#define J5_4 PB_13 - -#define J2_2 PB_7 -#define J2_3 PB_6 - -#define SEL_1 PA_8 -#define SEL_2 PA_9 -#define SEL_3 PC_6 -#define SEL_4 PC_7 - -#define USB_DM PA_11 -#define USB_DP PA_12 - -#define BOOT_1 PB_2 - -#define JTAG_TMS PA_13 -#define JTAG_TCK PA_14 -#define JTAG_TDI PA_15 -#define JTAG_TDO PB_3 -#define JTAG_NRST PB_4 - -#define SD_DET PB_0 -#define SD_DAT0 PC_8 -#define SD_DAT1 PC_9 -#define SD_DAT2 PC_10 -#define SD_DAT3 PC_11 -#define SD_CLK PC_12 -#define SD_CMD PD_2 - -#define I2C_SCL PB_10 -#define I2C_SDA PB_11 - -/*! - * LED GPIO pins objects - */ -extern Gpio_t Led1; -extern Gpio_t Led2; -extern Gpio_t Led3; - -/*! - * Hex coder selector GPIO pins objects - */ -extern Gpio_t Sel1; -extern Gpio_t Sel2; -extern Gpio_t Sel3; -extern Gpio_t Sel4; - -/*! - * Debug GPIO pins objects - */ -#if defined( USE_DEBUG_PINS ) -extern Gpio_t DbgPin1; -extern Gpio_t DbgPin2; -extern Gpio_t DbgPin3; -extern Gpio_t DbgPin4; -#endif - -/*! - * MCU objects - */ -extern I2c_t I2c; - -/*! - * \brief Initializes the target board peripherals. - */ -void BoardInitMcu( void ); - -/*! - * \brief Initializes the boards peripherals. - */ -void BoardInitPeriph( void ); - -/*! - * \brief De-initializes the target board peripherals to decrease power - * consumption. - */ -void BoardDeInitMcu( void ); - -/*! - * \brief Get the current battery level - * - * \retval value battery level ( 0: very low, 254: fully charged ) - */ -uint8_t BoardGetBatteryLevel( void ); - -/*! - * Returns a pseudo random seed generated using the MCU Unique ID - * - * \retval seed Generated pseudo random seed - */ -uint32_t BoardGetRandomSeed( void ); - -/*! - * \brief Gets the board 64 bits unique ID - * - * \param [IN] id Pointer to an array that will contain the Unique ID - */ -void BoardGetUniqueId( uint8_t *id ); - -#endif // __BOARD_H__ diff --git a/src/boards/Bleeper-72/cmsis/arm-gcc/startup_stm32l1xx_hd.s b/src/boards/Bleeper-72/cmsis/arm-gcc/startup_stm32l1xx_hd.s deleted file mode 100644 index 926aad7e1..000000000 --- a/src/boards/Bleeper-72/cmsis/arm-gcc/startup_stm32l1xx_hd.s +++ /dev/null @@ -1,419 +0,0 @@ -/** - ****************************************************************************** - * @file startup_stm32l1xx_hd.s - * @author MCD Application Team - * @version V1.2.0 - * @date 22-February-2013 - * @brief STM32L1xx Ultra Low Power High-density Devices vector table for - * RIDE7 toolchain. - * This module performs: - * - Set the initial SP - * - Set the initial PC == Reset_Handler, - * - Set the vector table entries with the exceptions ISR address - * - 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 2013 STMicroelectronics

- * - * Licensed under MCD-ST Liberty SW License Agreement V2, (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.st.com/software_license_agreement_liberty_v2 - * - * 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. - * - ****************************************************************************** - */ - - .syntax unified - .cpu cortex-m3 - .fpu softvfp - .thumb - -.global g_pfnVectors -.global Default_Handler - -/* start address for the initialization values of the .data section. -defined in linker script */ -.word _sidata -/* start address for the .data section. defined in linker script */ -.word _sdata -/* end address for the .data section. defined in linker script */ -.word _edata -/* start address for the .bss section. defined in linker script */ -.word _sbss -/* end address for the .bss section. defined in linker script */ -.word _ebss - -.equ BootRAM, 0xF108F85F -/** - * @brief This is the code that gets called when the processor first - * starts execution following a reset event. Only the absolutely - * necessary set is performed, after which the application - * supplied main() routine is called. - * @param None - * @retval : None -*/ - - .section .text.Reset_Handler - .weak Reset_Handler - .type Reset_Handler, %function -Reset_Handler: - -/* Copy the data segment initializers from flash to SRAM */ - movs r1, #0 - b LoopCopyDataInit - -CopyDataInit: - ldr r3, =_sidata - ldr r3, [r3, r1] - str r3, [r0, r1] - adds r1, r1, #4 - -LoopCopyDataInit: - ldr r0, =_sdata - ldr r3, =_edata - adds r2, r0, r1 - cmp r2, r3 - bcc CopyDataInit - ldr r2, =_sbss - b LoopFillZerobss -/* Zero fill the bss segment. */ -FillZerobss: - movs r3, #0 - str r3, [r2], #4 - -LoopFillZerobss: - ldr r3, = _ebss - cmp r2, r3 - bcc FillZerobss -/* Call the clock system intitialization function.*/ - bl SystemInit -/* 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_STAMP_IRQHandler - .word RTC_WKUP_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_IRQHandler - .word USB_HP_IRQHandler - .word USB_LP_IRQHandler - .word DAC_IRQHandler - .word COMP_IRQHandler - .word EXTI9_5_IRQHandler - .word LCD_IRQHandler - .word TIM9_IRQHandler - .word TIM10_IRQHandler - .word TIM11_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 USB_FS_WKUP_IRQHandler - .word TIM6_IRQHandler - .word TIM7_IRQHandler - .word SDIO_IRQHandler - .word TIM5_IRQHandler - .word SPI3_IRQHandler - .word UART4_IRQHandler - .word UART5_IRQHandler - .word DMA2_Channel1_IRQHandler - .word DMA2_Channel2_IRQHandler - .word DMA2_Channel3_IRQHandler - .word DMA2_Channel4_IRQHandler - .word DMA2_Channel5_IRQHandler - .word AES_IRQHandler - .word COMP_ACQ_IRQHandler - .word 0 - .word 0 - .word 0 - .word 0 - .word 0 - .word BootRAM /* @0x108. This is for boot in RAM mode for - STM32L15x ULtra Low Power 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_STAMP_IRQHandler - .thumb_set TAMPER_STAMP_IRQHandler,Default_Handler - - .weak RTC_WKUP_IRQHandler - .thumb_set RTC_WKUP_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_IRQHandler - .thumb_set ADC1_IRQHandler,Default_Handler - - .weak USB_HP_IRQHandler - .thumb_set USB_HP_IRQHandler,Default_Handler - - .weak USB_LP_IRQHandler - .thumb_set USB_LP_IRQHandler,Default_Handler - - .weak DAC_IRQHandler - .thumb_set DAC_IRQHandler,Default_Handler - - .weak COMP_IRQHandler - .thumb_set COMP_IRQHandler,Default_Handler - - .weak EXTI9_5_IRQHandler - .thumb_set EXTI9_5_IRQHandler,Default_Handler - - .weak LCD_IRQHandler - .thumb_set LCD_IRQHandler,Default_Handler - - .weak TIM9_IRQHandler - .thumb_set TIM9_IRQHandler,Default_Handler - - .weak TIM10_IRQHandler - .thumb_set TIM10_IRQHandler,Default_Handler - - .weak TIM11_IRQHandler - .thumb_set TIM11_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 USB_FS_WKUP_IRQHandler - .thumb_set USB_FS_WKUP_IRQHandler,Default_Handler - - .weak TIM6_IRQHandler - .thumb_set TIM6_IRQHandler,Default_Handler - - .weak TIM7_IRQHandler - .thumb_set TIM7_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 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_IRQHandler - .thumb_set DMA2_Channel4_IRQHandler,Default_Handler - - .weak DMA2_Channel5_IRQHandler - .thumb_set DMA2_Channel5_IRQHandler,Default_Handler - - .weak AES_IRQHandler - .thumb_set AES_IRQHandler,Default_Handler - - .weak COMP_ACQ_IRQHandler - .thumb_set COMP_ACQ_IRQHandler,Default_Handler - -/************************* (C) COPYRIGHT STMicroelectronics *****END OF FILE***/ - diff --git a/src/boards/Bleeper-72/cmsis/arm-gcc/stm32l1xx_hd_flash.ld b/src/boards/Bleeper-72/cmsis/arm-gcc/stm32l1xx_hd_flash.ld deleted file mode 100644 index c9382e2b5..000000000 --- a/src/boards/Bleeper-72/cmsis/arm-gcc/stm32l1xx_hd_flash.ld +++ /dev/null @@ -1,131 +0,0 @@ -/* Memory regions.*/ -MEMORY -{ - FLASH (rx) : ORIGIN = 0x08000000, LENGTH = 384K - RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 48K -} - -/* Entry Point */ -ENTRY(Reset_Handler) - -_estack = 0x20000000 + 48K; - -/* Define output sections */ -SECTIONS -{ - .text : - { - KEEP(*(.isr_vector)) - *(.text*) - - KEEP(*(.init)) - KEEP(*(.fini)) - - /* .ctors */ - *crtbegin.o(.ctors) - *crtbegin?.o(.ctors) - *(EXCLUDE_FILE(*crtend?.o *crtend.o) .ctors) - *(SORT(.ctors.*)) - *(.ctors) - - /* .dtors */ - *crtbegin.o(.dtors) - *crtbegin?.o(.dtors) - *(EXCLUDE_FILE(*crtend?.o *crtend.o) .dtors) - *(SORT(.dtors.*)) - *(.dtors) - - *(.rodata*) - - KEEP(*(.eh_frame*)) - } > FLASH - - .ARM.extab : - { - *(.ARM.extab* .gnu.linkonce.armextab.*) - } > FLASH - - __exidx_start = .; - .ARM.exidx : - { - *(.ARM.exidx* .gnu.linkonce.armexidx.*) - } > FLASH - __exidx_end = .; - __etext = .; - - /* used by the startup to initialize data */ - _sidata = __etext; - - .data : AT (__etext) - { - __data_start__ = .; - _sdata = .; - *(vtable) - *(.data*) - - . = ALIGN(4); - /* preinit data */ - PROVIDE_HIDDEN (__preinit_array_start = .); - KEEP(*(.preinit_array)) - PROVIDE_HIDDEN (__preinit_array_end = .); - - . = ALIGN(4); - /* init data */ - PROVIDE_HIDDEN (__init_array_start = .); - KEEP(*(SORT(.init_array.*))) - KEEP(*(.init_array)) - PROVIDE_HIDDEN (__init_array_end = .); - - - . = ALIGN(4); - /* finit data */ - PROVIDE_HIDDEN (__fini_array_start = .); - KEEP(*(SORT(.fini_array.*))) - KEEP(*(.fini_array)) - PROVIDE_HIDDEN (__fini_array_end = .); - - KEEP(*(.jcr*)) - . = ALIGN(4); - /* All data end */ - __data_end__ = .; - _edata = .; - } > RAM - - .bss : - { - . = ALIGN(4); - __bss_start__ = .; - _sbss = .; - *(.bss*) - *(COMMON) - . = ALIGN(4); - __bss_end__ = .; - _ebss = .; - } > RAM - - .heap (COPY): - { - __end__ = .; - PROVIDE(_end = .); - PROVIDE(end = .); - *(.heap*) - __HeapLimit = .; - } > RAM - - /* .stack_dummy section doesn't contains any symbols. It is only - * used for linker to calculate size of stack sections, and assign - * values to stack symbols later */ - .stack_dummy (COPY): - { - *(.stack*) - } > RAM - - /* Set stack top to end of RAM, and stack limit move down by - * size of stack_dummy section */ - __StackTop = ORIGIN(RAM) + LENGTH(RAM); - __StackLimit = __StackTop - SIZEOF(.stack_dummy); - PROVIDE(__stack = __StackTop); - - /* Check if data + heap + stack exceeds RAM limit */ - ASSERT(__StackLimit >= __HeapLimit, "region RAM overflowed with stack") -} diff --git a/src/boards/Bleeper-72/cmsis/arm-std/startup_stm32l1xx_hd.s b/src/boards/Bleeper-72/cmsis/arm-std/startup_stm32l1xx_hd.s deleted file mode 100644 index c7d1e5e4a..000000000 --- a/src/boards/Bleeper-72/cmsis/arm-std/startup_stm32l1xx_hd.s +++ /dev/null @@ -1,356 +0,0 @@ -;******************** (C) COPYRIGHT 2012 STMicroelectronics ******************** -;* File Name : startup_stm32l1xx_hd.s -;* Author : MCD Application Team -;* Version : V1.1.1 -;* Date : 09-March-2012 -;* Description : STM32L1xx Ultra Low Power High-density Devices vector -;* table for MDK-ARM toolchain. -;* This module performs: -;* - Set the initial SP -;* - Set the initial PC == Reset_Handler -;* - Set the vector table entries with the exceptions ISR address -;* - Branches to __main in the C library (which eventually -;* calls main()). -;* After Reset the CortexM3 processor is in Thread mode, -;* priority is Privileged, and the Stack is set to Main. -;* <<< Use Configuration Wizard in Context Menu >>> -;******************************************************************************* -; -; Licensed under MCD-ST Liberty SW License Agreement V2, (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.st.com/software_license_agreement_liberty_v2 -; -; 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. -; -;******************************************************************************* - -; Amount of memory (in bytes) allocated for Stack -; Tailor this value to your application needs -; Stack Configuration -; Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> -; - -Stack_Size EQU 0x00000400 - - AREA STACK, NOINIT, READWRITE, ALIGN=3 -Stack_Mem SPACE Stack_Size -__initial_sp - - -; Heap Configuration -; Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> -; - -Heap_Size EQU 0x00000200 - - AREA HEAP, NOINIT, READWRITE, ALIGN=3 -__heap_base -Heap_Mem SPACE Heap_Size -__heap_limit - - PRESERVE8 - THUMB - - -; Vector Table Mapped to Address 0 at Reset - AREA RESET, DATA, READONLY - EXPORT __Vectors - EXPORT __Vectors_End - EXPORT __Vectors_Size - -__Vectors DCD __initial_sp ; Top of Stack - DCD Reset_Handler ; Reset Handler - DCD NMI_Handler ; NMI Handler - DCD HardFault_Handler ; Hard Fault Handler - DCD MemManage_Handler ; MPU Fault Handler - DCD BusFault_Handler ; Bus Fault Handler - DCD UsageFault_Handler ; Usage Fault Handler - DCD 0 ; Reserved - DCD 0 ; Reserved - DCD 0 ; Reserved - DCD 0 ; Reserved - DCD SVC_Handler ; SVCall Handler - DCD DebugMon_Handler ; Debug Monitor Handler - DCD 0 ; Reserved - DCD PendSV_Handler ; PendSV Handler - DCD SysTick_Handler ; SysTick Handler - - ; External Interrupts - DCD WWDG_IRQHandler ; Window Watchdog - DCD PVD_IRQHandler ; PVD through EXTI Line detect - DCD TAMPER_STAMP_IRQHandler ; Tamper and Time Stamp - DCD RTC_WKUP_IRQHandler ; RTC Wakeup - DCD FLASH_IRQHandler ; FLASH - DCD RCC_IRQHandler ; RCC - DCD EXTI0_IRQHandler ; EXTI Line 0 - DCD EXTI1_IRQHandler ; EXTI Line 1 - DCD EXTI2_IRQHandler ; EXTI Line 2 - DCD EXTI3_IRQHandler ; EXTI Line 3 - DCD EXTI4_IRQHandler ; EXTI Line 4 - DCD DMA1_Channel1_IRQHandler ; DMA1 Channel 1 - DCD DMA1_Channel2_IRQHandler ; DMA1 Channel 2 - DCD DMA1_Channel3_IRQHandler ; DMA1 Channel 3 - DCD DMA1_Channel4_IRQHandler ; DMA1 Channel 4 - DCD DMA1_Channel5_IRQHandler ; DMA1 Channel 5 - DCD DMA1_Channel6_IRQHandler ; DMA1 Channel 6 - DCD DMA1_Channel7_IRQHandler ; DMA1 Channel 7 - DCD ADC1_IRQHandler ; ADC1 - DCD USB_HP_IRQHandler ; USB High Priority - DCD USB_LP_IRQHandler ; USB Low Priority - DCD DAC_IRQHandler ; DAC - DCD COMP_IRQHandler ; COMP through EXTI Line - DCD EXTI9_5_IRQHandler ; EXTI Line 9..5 - DCD LCD_IRQHandler ; LCD - DCD TIM9_IRQHandler ; TIM9 - DCD TIM10_IRQHandler ; TIM10 - DCD TIM11_IRQHandler ; TIM11 - DCD TIM2_IRQHandler ; TIM2 - DCD TIM3_IRQHandler ; TIM3 - DCD TIM4_IRQHandler ; TIM4 - DCD I2C1_EV_IRQHandler ; I2C1 Event - DCD I2C1_ER_IRQHandler ; I2C1 Error - DCD I2C2_EV_IRQHandler ; I2C2 Event - DCD I2C2_ER_IRQHandler ; I2C2 Error - DCD SPI1_IRQHandler ; SPI1 - DCD SPI2_IRQHandler ; SPI2 - DCD USART1_IRQHandler ; USART1 - DCD USART2_IRQHandler ; USART2 - DCD USART3_IRQHandler ; USART3 - DCD EXTI15_10_IRQHandler ; EXTI Line 15..10 - DCD RTC_Alarm_IRQHandler ; RTC Alarm through EXTI Line - DCD USB_FS_WKUP_IRQHandler ; USB FS Wakeup from suspend - DCD TIM6_IRQHandler ; TIM6 - DCD TIM7_IRQHandler ; TIM7 - DCD SDIO_IRQHandler ; SDIO - DCD TIM5_IRQHandler ; TIM5 - DCD SPI3_IRQHandler ; SPI3 - DCD UART4_IRQHandler ; UART4 - DCD UART5_IRQHandler ; UART5 - DCD DMA2_Channel1_IRQHandler ; DMA2 Channel 1 - DCD DMA2_Channel2_IRQHandler ; DMA2 Channel 2 - DCD DMA2_Channel3_IRQHandler ; DMA2 Channel 3 - DCD DMA2_Channel4_IRQHandler ; DMA2 Channel 4 - DCD DMA2_Channel5_IRQHandler ; DMA2 Channel 5 - DCD AES_IRQHandler ; AES - DCD COMP_ACQ_IRQHandler ; Comparator Channel Acquisition - -__Vectors_End - -__Vectors_Size EQU __Vectors_End - __Vectors - - AREA |.text|, CODE, READONLY - -; Reset handler routine -Reset_Handler PROC - EXPORT Reset_Handler [WEAK] - IMPORT __main - IMPORT SystemInit - LDR R0, =SystemInit - BLX R0 - LDR R0, =__main - BX R0 - ENDP - -; Dummy Exception Handlers (infinite loops which can be modified) - -NMI_Handler PROC - EXPORT NMI_Handler [WEAK] - B . - ENDP -HardFault_Handler\ - PROC - EXPORT HardFault_Handler [WEAK] - B . - ENDP -MemManage_Handler\ - PROC - EXPORT MemManage_Handler [WEAK] - B . - ENDP -BusFault_Handler\ - PROC - EXPORT BusFault_Handler [WEAK] - B . - ENDP -UsageFault_Handler\ - PROC - EXPORT UsageFault_Handler [WEAK] - B . - ENDP -SVC_Handler PROC - EXPORT SVC_Handler [WEAK] - B . - ENDP -DebugMon_Handler\ - PROC - EXPORT DebugMon_Handler [WEAK] - B . - ENDP -PendSV_Handler PROC - EXPORT PendSV_Handler [WEAK] - B . - ENDP -SysTick_Handler PROC - EXPORT SysTick_Handler [WEAK] - B . - ENDP - -Default_Handler PROC - - EXPORT WWDG_IRQHandler [WEAK] - EXPORT PVD_IRQHandler [WEAK] - EXPORT TAMPER_STAMP_IRQHandler [WEAK] - EXPORT RTC_WKUP_IRQHandler [WEAK] - EXPORT FLASH_IRQHandler [WEAK] - EXPORT RCC_IRQHandler [WEAK] - EXPORT EXTI0_IRQHandler [WEAK] - EXPORT EXTI1_IRQHandler [WEAK] - EXPORT EXTI2_IRQHandler [WEAK] - EXPORT EXTI3_IRQHandler [WEAK] - EXPORT EXTI4_IRQHandler [WEAK] - EXPORT DMA1_Channel1_IRQHandler [WEAK] - EXPORT DMA1_Channel2_IRQHandler [WEAK] - EXPORT DMA1_Channel3_IRQHandler [WEAK] - EXPORT DMA1_Channel4_IRQHandler [WEAK] - EXPORT DMA1_Channel5_IRQHandler [WEAK] - EXPORT DMA1_Channel6_IRQHandler [WEAK] - EXPORT DMA1_Channel7_IRQHandler [WEAK] - EXPORT ADC1_IRQHandler [WEAK] - EXPORT USB_HP_IRQHandler [WEAK] - EXPORT USB_LP_IRQHandler [WEAK] - EXPORT DAC_IRQHandler [WEAK] - EXPORT COMP_IRQHandler [WEAK] - EXPORT EXTI9_5_IRQHandler [WEAK] - EXPORT LCD_IRQHandler [WEAK] - EXPORT TIM9_IRQHandler [WEAK] - EXPORT TIM10_IRQHandler [WEAK] - EXPORT TIM11_IRQHandler [WEAK] - EXPORT TIM2_IRQHandler [WEAK] - EXPORT TIM3_IRQHandler [WEAK] - EXPORT TIM4_IRQHandler [WEAK] - EXPORT I2C1_EV_IRQHandler [WEAK] - EXPORT I2C1_ER_IRQHandler [WEAK] - EXPORT I2C2_EV_IRQHandler [WEAK] - EXPORT I2C2_ER_IRQHandler [WEAK] - EXPORT SPI1_IRQHandler [WEAK] - EXPORT SPI2_IRQHandler [WEAK] - EXPORT USART1_IRQHandler [WEAK] - EXPORT USART2_IRQHandler [WEAK] - EXPORT USART3_IRQHandler [WEAK] - EXPORT EXTI15_10_IRQHandler [WEAK] - EXPORT RTC_Alarm_IRQHandler [WEAK] - EXPORT USB_FS_WKUP_IRQHandler [WEAK] - EXPORT TIM6_IRQHandler [WEAK] - EXPORT TIM7_IRQHandler [WEAK] - EXPORT SDIO_IRQHandler [WEAK] - EXPORT TIM5_IRQHandler [WEAK] - EXPORT SPI3_IRQHandler [WEAK] - EXPORT UART4_IRQHandler [WEAK] - EXPORT UART5_IRQHandler [WEAK] - EXPORT DMA2_Channel1_IRQHandler [WEAK] - EXPORT DMA2_Channel2_IRQHandler [WEAK] - EXPORT DMA2_Channel3_IRQHandler [WEAK] - EXPORT DMA2_Channel4_IRQHandler [WEAK] - EXPORT DMA2_Channel5_IRQHandler [WEAK] - EXPORT AES_IRQHandler [WEAK] - EXPORT COMP_ACQ_IRQHandler [WEAK] - -WWDG_IRQHandler -PVD_IRQHandler -TAMPER_STAMP_IRQHandler -RTC_WKUP_IRQHandler -FLASH_IRQHandler -RCC_IRQHandler -EXTI0_IRQHandler -EXTI1_IRQHandler -EXTI2_IRQHandler -EXTI3_IRQHandler -EXTI4_IRQHandler -DMA1_Channel1_IRQHandler -DMA1_Channel2_IRQHandler -DMA1_Channel3_IRQHandler -DMA1_Channel4_IRQHandler -DMA1_Channel5_IRQHandler -DMA1_Channel6_IRQHandler -DMA1_Channel7_IRQHandler -ADC1_IRQHandler -USB_HP_IRQHandler -USB_LP_IRQHandler -DAC_IRQHandler -COMP_IRQHandler -EXTI9_5_IRQHandler -LCD_IRQHandler -TIM9_IRQHandler -TIM10_IRQHandler -TIM11_IRQHandler -TIM2_IRQHandler -TIM3_IRQHandler -TIM4_IRQHandler -I2C1_EV_IRQHandler -I2C1_ER_IRQHandler -I2C2_EV_IRQHandler -I2C2_ER_IRQHandler -SPI1_IRQHandler -SPI2_IRQHandler -USART1_IRQHandler -USART2_IRQHandler -USART3_IRQHandler -EXTI15_10_IRQHandler -RTC_Alarm_IRQHandler -USB_FS_WKUP_IRQHandler -TIM6_IRQHandler -TIM7_IRQHandler -SDIO_IRQHandler -TIM5_IRQHandler -SPI3_IRQHandler -UART4_IRQHandler -UART5_IRQHandler -DMA2_Channel1_IRQHandler -DMA2_Channel2_IRQHandler -DMA2_Channel3_IRQHandler -DMA2_Channel4_IRQHandler -DMA2_Channel5_IRQHandler -AES_IRQHandler -COMP_ACQ_IRQHandler - - B . - - ENDP - - ALIGN - -;******************************************************************************* -; User Stack and Heap initialization -;******************************************************************************* - IF :DEF:__MICROLIB - - EXPORT __initial_sp - EXPORT __heap_base - EXPORT __heap_limit - - ELSE - - IMPORT __use_two_region_memory - EXPORT __user_initial_stackheap - -__user_initial_stackheap - - LDR R0, = Heap_Mem - LDR R1, =(Stack_Mem + Stack_Size) - LDR R2, = (Heap_Mem + Heap_Size) - LDR R3, = Stack_Mem - BX LR - - ALIGN - - ENDIF - - END - -;************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE***** diff --git a/src/boards/Bleeper-72/cmsis/stm32l1xx.h b/src/boards/Bleeper-72/cmsis/stm32l1xx.h deleted file mode 100644 index 053b6935b..000000000 --- a/src/boards/Bleeper-72/cmsis/stm32l1xx.h +++ /dev/null @@ -1,6355 +0,0 @@ -/** - ****************************************************************************** - * @file stm32l1xx.h - * @author MCD Application Team - * @version V1.2.0 - * @date 22-February-2013 - * @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 STM32L1xx High-density, Medium-density - * and Medium-density Plus devices. - * - * The file is the unique include file that the application programmer - * is using in the C source code, usually in main.c. This file contains: - * - Configuration section that allows to select: - * - The device used in the target application - * - To use or not the peripheral’s drivers in application code(i.e. - * code will be based on direct access to peripheral’s registers - * rather than drivers API), this option is controlled by - * "#define USE_STDPERIPH_DRIVER" - * - To change few application-specific parameters such as the HSE - * crystal frequency - * - 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 2013 STMicroelectronics

- * - * Licensed under MCD-ST Liberty SW License Agreement V2, (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.st.com/software_license_agreement_liberty_v2 - * - * 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. - * - ****************************************************************************** - */ - -/** @addtogroup CMSIS - * @{ - */ - -/** @addtogroup stm32l1xx - * @{ - */ - -#ifndef __STM32L1XX_H -#define __STM32L1XX_H - -#ifdef __cplusplus - extern "C" { -#endif - -/** @addtogroup Library_configuration_section - * @{ - */ - -/* Uncomment the line below according to the target STM32L device used in your - application - */ - -#if !defined (STM32L1XX_MD) && !defined (STM32L1XX_MDP) && !defined (STM32L1XX_HD) - -/* #define STM32L1XX_MD */ /*!< - Ultra Low Power Medium-density devices: STM32L151x6xx, STM32L151x8xx, - STM32L151xBxx, STM32L152x6xx, STM32L152x8xx and STM32L152xBxx. - - Ultra Low Power Medium-density Value Line devices: STM32L100x6xx, - STM32L100x8xx and STM32L100xBxx. */ - -/* #define STM32L1XX_MDP */ /*!< - Ultra Low Power Medium-density Plus devices: STM32L151xCxx, STM32L152xCxx and STM32L162xCxx - - Ultra Low Power Medium-density Plus Value Line devices: STM32L100xCxx */ - - #define STM32L1XX_HD /*!< Ultra Low Power High-density devices: STM32L151xDxx, STM32L152xDxx and STM32L162xDxx */ -#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 (STM32L1XX_MD) && !defined (STM32L1XX_MDP) && !defined (STM32L1XX_HD) - #error "Please select first the target STM32L1xx device used in your application (in stm32l1xx.h file)" -#endif - -#if !defined USE_STDPERIPH_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_STDPERIPH_DRIVER -#endif - -/** - * @brief In the following line adjust the value of External High Speed oscillator (HSE) - used in your application - - 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. - */ -#if !defined (HSE_VALUE) -#define HSE_VALUE ((uint32_t)12000000) /*!< Value of the External oscillator in Hz */ -#endif - -/** - * @brief In the following line adjust the External High Speed oscillator (HSE) Startup - Timeout value - */ -#if !defined (HSE_STARTUP_TIMEOUT) -#define HSE_STARTUP_TIMEOUT ((uint16_t)0x0500) /*!< Time out for HSE start up */ -#endif - -/** - * @brief In the following line adjust the Internal High Speed oscillator (HSI) Startup - Timeout value - */ -#if !defined (HSI_STARTUP_TIMEOUT) -#define HSI_STARTUP_TIMEOUT ((uint16_t)0x0500) /*!< Time out for HSI start up */ -#endif - -#if !defined (HSI_VALUE) -#define HSI_VALUE ((uint32_t)16000000) /*!< Value of the Internal High Speed oscillator in Hz. - The real value may vary depending on the variations - in voltage and temperature. */ -#endif - -#if !defined (LSI_VALUE) -#define LSI_VALUE ((uint32_t)37000) /*!< Value of the Internal Low Speed oscillator in Hz - The real value may vary depending on the variations - in voltage and temperature. */ -#endif - -#if !defined (LSE_VALUE) -#define LSE_VALUE ((uint32_t)32768) /*!< Value of the External Low Speed oscillator in Hz */ -#endif - -/** - * @brief STM32L1xx Standard Peripheral Library version number V1.2.0 - */ -#define __STM32L1XX_STDPERIPH_VERSION_MAIN (0x01) /*!< [31:24] main version */ -#define __STM32L1XX_STDPERIPH_VERSION_SUB1 (0x02) /*!< [23:16] sub1 version */ -#define __STM32L1XX_STDPERIPH_VERSION_SUB2 (0x00) /*!< [15:8] sub2 version */ -#define __STM32L1XX_STDPERIPH_VERSION_RC (0x00) /*!< [7:0] release candidate */ -#define __STM32L1XX_STDPERIPH_VERSION ( (__STM32L1XX_STDPERIPH_VERSION_MAIN << 24)\ - |(__STM32L1XX_STDPERIPH_VERSION_SUB1 << 16)\ - |(__STM32L1XX_STDPERIPH_VERSION_SUB2 << 8)\ - |(__STM32L1XX_STDPERIPH_VERSION_RC)) - -/** - * @} - */ - -/** @addtogroup Configuration_section_for_CMSIS - * @{ - */ - -/** - * @brief STM32L1xx Interrupt Number Definition, according to the selected device - * in @ref Library_configuration_section - */ -#define __CM3_REV 0x200 /*!< Cortex-M3 Revision r2p0 */ -#define __MPU_PRESENT 1 /*!< STM32L1 provides MPU */ -#define __NVIC_PRIO_BITS 4 /*!< STM32L1 uses 4 Bits for the Priority Levels */ -#define __Vendor_SysTickConfig 0 /*!< Set to 1 if different SysTick Config is used */ - -/*!< Interrupt Number Definition */ -typedef enum IRQn -{ -/****** Cortex-M3 Processor Exceptions Numbers ******************************************************/ - NonMaskableInt_IRQn = -14, /*!< 2 Non Maskable 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 */ - SVC_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 */ - -/****** STM32L specific Interrupt Numbers ***********************************************************/ - WWDG_IRQn = 0, /*!< Window WatchDog Interrupt */ - PVD_IRQn = 1, /*!< PVD through EXTI Line detection Interrupt */ - TAMPER_STAMP_IRQn = 2, /*!< Tamper and Time Stamp through EXTI Line Interrupts */ - RTC_WKUP_IRQn = 3, /*!< RTC Wakeup Timer through EXTI Line 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_IRQn = 18, /*!< ADC1 global Interrupt */ - USB_HP_IRQn = 19, /*!< USB High Priority Interrupt */ - USB_LP_IRQn = 20, /*!< USB Low Priority Interrupt */ - DAC_IRQn = 21, /*!< DAC Interrupt */ - COMP_IRQn = 22, /*!< Comparator through EXTI Line Interrupt */ - EXTI9_5_IRQn = 23, /*!< External Line[9:5] Interrupts */ - LCD_IRQn = 24, /*!< LCD Interrupt */ - TIM9_IRQn = 25, /*!< TIM9 global Interrupt */ - TIM10_IRQn = 26, /*!< TIM10 global Interrupt */ - TIM11_IRQn = 27, /*!< TIM11 global 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 */ - USB_FS_WKUP_IRQn = 42, /*!< USB FS WakeUp from suspend through EXTI Line Interrupt */ - TIM6_IRQn = 43, /*!< TIM6 global Interrupt */ -#ifdef STM32L1XX_MD - TIM7_IRQn = 44 /*!< TIM7 global Interrupt */ -#endif /* STM32L1XX_MD */ - -#ifdef STM32L1XX_MDP - TIM7_IRQn = 44, /*!< TIM7 global Interrupt */ - TIM5_IRQn = 46, /*!< TIM5 global Interrupt */ - SPI3_IRQn = 47, /*!< SPI3 global Interrupt */ - DMA2_Channel1_IRQn = 50, /*!< DMA2 Channel 1 global Interrupt */ - DMA2_Channel2_IRQn = 51, /*!< DMA2 Channel 2 global Interrupt */ - DMA2_Channel3_IRQn = 52, /*!< DMA2 Channel 3 global Interrupt */ - DMA2_Channel4_IRQn = 53, /*!< DMA2 Channel 4 global Interrupt */ - DMA2_Channel5_IRQn = 54, /*!< DMA2 Channel 5 global Interrupt */ - AES_IRQn = 55, /*!< AES global Interrupt */ - COMP_ACQ_IRQn = 56 /*!< Comparator Channel Acquisition global Interrupt */ -#endif /* STM32L1XX_MDP */ - -#ifdef STM32L1XX_HD - TIM7_IRQn = 44, /*!< TIM7 global Interrupt */ - SDIO_IRQn = 45, /*!< SDIO global Interrupt */ - TIM5_IRQn = 46, /*!< TIM5 global Interrupt */ - SPI3_IRQn = 47, /*!< SPI3 global Interrupt */ - UART4_IRQn = 48, /*!< UART4 global Interrupt */ - UART5_IRQn = 49, /*!< UART5 global Interrupt */ - DMA2_Channel1_IRQn = 50, /*!< DMA2 Channel 1 global Interrupt */ - DMA2_Channel2_IRQn = 51, /*!< DMA2 Channel 2 global Interrupt */ - DMA2_Channel3_IRQn = 52, /*!< DMA2 Channel 3 global Interrupt */ - DMA2_Channel4_IRQn = 53, /*!< DMA2 Channel 4 global Interrupt */ - DMA2_Channel5_IRQn = 54, /*!< DMA2 Channel 5 global Interrupt */ - AES_IRQn = 55, /*!< AES global Interrupt */ - COMP_ACQ_IRQn = 56 /*!< Comparator Channel Acquisition global Interrupt */ -#endif /* STM32L1XX_HD */ -} IRQn_Type; - -/** - * @} - */ - -#include "core_cm3.h" -#include "system_stm32l1xx.h" -#include - -/** @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 {ERROR = 0, SUCCESS = !ERROR} ErrorStatus; - -/** - * @brief __RAM_FUNC definition - */ -#if defined ( __CC_ARM ) -/* ARM Compiler - ------------ - 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 FLASH_Status - -#elif defined ( __ICCARM__ ) -/* ICCARM Compiler - --------------- - RAM functions are defined using a specific toolchain keyword "__ramfunc". -*/ - #define __RAM_FUNC __ramfunc FLASH_Status - -#elif defined ( __GNUC__ ) -/* GNU Compiler - ------------ - RAM functions are defined using a specific toolchain attribute - "__attribute__((section(".data")))". -*/ - #define __RAM_FUNC FLASH_Status __attribute__((section(".data"))) - -#elif defined ( __TASKING__ ) -/* TASKING Compiler - ---------------- - RAM functions are defined using a specific toolchain pragma. This pragma is - defined in the stm32l1xx_flash_ramfunc.c -*/ - #define __RAM_FUNC FLASH_Status - -#endif - -/** - * @} - */ - -/** @addtogroup Peripheral_registers_structures - * @{ - */ - -/** - * @brief Analog to Digital Converter - */ - -typedef struct -{ - __IO uint32_t SR; /*!< ADC status register, Address offset: 0x00 */ - __IO uint32_t CR1; /*!< ADC control register 1, Address offset: 0x04 */ - __IO uint32_t CR2; /*!< ADC control register 2, Address offset: 0x08 */ - __IO uint32_t SMPR1; /*!< ADC sample time register 1, Address offset: 0x0C */ - __IO uint32_t SMPR2; /*!< ADC sample time register 2, Address offset: 0x10 */ - __IO uint32_t SMPR3; /*!< ADC sample time register 3, Address offset: 0x14 */ - __IO uint32_t JOFR1; /*!< ADC injected channel data offset register 1, Address offset: 0x18 */ - __IO uint32_t JOFR2; /*!< ADC injected channel data offset register 2, Address offset: 0x1C */ - __IO uint32_t JOFR3; /*!< ADC injected channel data offset register 3, Address offset: 0x20 */ - __IO uint32_t JOFR4; /*!< ADC injected channel data offset register 4, Address offset: 0x24 */ - __IO uint32_t HTR; /*!< ADC watchdog higher threshold register, Address offset: 0x28 */ - __IO uint32_t LTR; /*!< ADC watchdog lower threshold register, Address offset: 0x2C */ - __IO uint32_t SQR1; /*!< ADC regular sequence register 1, Address offset: 0x30 */ - __IO uint32_t SQR2; /*!< ADC regular sequence register 2, Address offset: 0x34 */ - __IO uint32_t SQR3; /*!< ADC regular sequence register 3, Address offset: 0x38 */ - __IO uint32_t SQR4; /*!< ADC regular sequence register 4, Address offset: 0x3C */ - __IO uint32_t SQR5; /*!< ADC regular sequence register 5, Address offset: 0x40 */ - __IO uint32_t JSQR; /*!< ADC injected sequence register, Address offset: 0x44 */ - __IO uint32_t JDR1; /*!< ADC injected data register 1, Address offset: 0x48 */ - __IO uint32_t JDR2; /*!< ADC injected data register 2, Address offset: 0x4C */ - __IO uint32_t JDR3; /*!< ADC injected data register 3, Address offset: 0x50 */ - __IO uint32_t JDR4; /*!< ADC injected data register 4, Address offset: 0x54 */ - __IO uint32_t DR; /*!< ADC regular data register, Address offset: 0x58 */ - __IO uint32_t SMPR0; /*!< ADC sample time register 0, Address offset: 0x5C */ -} ADC_TypeDef; - -typedef struct -{ - __IO uint32_t CSR; /*!< ADC common status register, Address offset: ADC1 base address + 0x300 */ - __IO uint32_t CCR; /*!< ADC common control register, Address offset: ADC1 base address + 0x304 */ -} ADC_Common_TypeDef; - - -/** - * @brief AES hardware accelerator - */ - -typedef struct -{ - __IO uint32_t CR; /*!< AES control register, Address offset: 0x00 */ - __IO uint32_t SR; /*!< AES status register, Address offset: 0x04 */ - __IO uint32_t DINR; /*!< AES data input register, Address offset: 0x08 */ - __IO uint32_t DOUTR; /*!< AES data output register, Address offset: 0x0C */ - __IO uint32_t KEYR0; /*!< AES key register 0, Address offset: 0x10 */ - __IO uint32_t KEYR1; /*!< AES key register 1, Address offset: 0x14 */ - __IO uint32_t KEYR2; /*!< AES key register 2, Address offset: 0x18 */ - __IO uint32_t KEYR3; /*!< AES key register 3, Address offset: 0x1C */ - __IO uint32_t IVR0; /*!< AES initialization vector register 0, Address offset: 0x20 */ - __IO uint32_t IVR1; /*!< AES initialization vector register 1, Address offset: 0x24 */ - __IO uint32_t IVR2; /*!< AES initialization vector register 2, Address offset: 0x28 */ - __IO uint32_t IVR3; /*!< AES initialization vector register 3, Address offset: 0x2C */ -} AES_TypeDef; - -/** - * @brief Comparator - */ - -typedef struct -{ - __IO uint32_t CSR; /*!< COMP comparator control and status register, Address offset: 0x00 */ -} COMP_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, 0x05 */ - uint16_t RESERVED1; /*!< Reserved, 0x06 */ - __IO uint32_t CR; /*!< CRC Control register, Address offset: 0x08 */ -} CRC_TypeDef; - -/** - * @brief Digital to Analog Converter - */ - -typedef struct -{ - __IO uint32_t CR; /*!< DAC control register, Address offset: 0x00 */ - __IO uint32_t SWTRIGR; /*!< DAC software trigger register, Address offset: 0x04 */ - __IO uint32_t DHR12R1; /*!< DAC channel1 12-bit right-aligned data holding register, Address offset: 0x08 */ - __IO uint32_t DHR12L1; /*!< DAC channel1 12-bit left aligned data holding register, Address offset: 0x0C */ - __IO uint32_t DHR8R1; /*!< DAC channel1 8-bit right aligned data holding register, Address offset: 0x10 */ - __IO uint32_t DHR12R2; /*!< DAC channel2 12-bit right aligned data holding register, Address offset: 0x14 */ - __IO uint32_t DHR12L2; /*!< DAC channel2 12-bit left aligned data holding register, Address offset: 0x18 */ - __IO uint32_t DHR8R2; /*!< DAC channel2 8-bit right-aligned data holding register, Address offset: 0x1C */ - __IO uint32_t DHR12RD; /*!< Dual DAC 12-bit right-aligned data holding register, Address offset: 0x20 */ - __IO uint32_t DHR12LD; /*!< DUAL DAC 12-bit left aligned data holding register, Address offset: 0x24 */ - __IO uint32_t DHR8RD; /*!< DUAL DAC 8-bit right aligned data holding register, Address offset: 0x28 */ - __IO uint32_t DOR1; /*!< DAC channel1 data output register, Address offset: 0x2C */ - __IO uint32_t DOR2; /*!< DAC channel2 data output register, Address offset: 0x30 */ - __IO uint32_t SR; /*!< DAC status register, Address offset: 0x34 */ -} DAC_TypeDef; - -/** - * @brief Debug MCU - */ - -typedef struct -{ - __IO uint32_t IDCODE; /*!< MCU device ID code, Address offset: 0x00 */ - __IO uint32_t CR; /*!< Debug MCU configuration register, Address offset: 0x04 */ - __IO uint32_t APB1FZ; /*!< Debug MCU APB1 freeze register, Address offset: 0x08 */ - __IO uint32_t APB2FZ; /*!< Debug MCU APB2 freeze register, Address offset: 0x0C */ -}DBGMCU_TypeDef; - -/** - * @brief DMA Controller - */ - -typedef struct -{ - __IO uint32_t CCR; /*!< DMA channel x configuration register */ - __IO uint32_t CNDTR; /*!< DMA channel x number of data register */ - __IO uint32_t CPAR; /*!< DMA channel x peripheral address register */ - __IO uint32_t CMAR; /*!< DMA channel x memory address register */ -} DMA_Channel_TypeDef; - -typedef struct -{ - __IO uint32_t ISR; /*!< DMA interrupt status register, Address offset: 0x00 */ - __IO uint32_t IFCR; /*!< DMA interrupt flag clear register, Address offset: 0x04 */ -} DMA_TypeDef; - -/** - * @brief External Interrupt/Event Controller - */ - -typedef struct -{ - __IO uint32_t IMR; /*!< EXTI interrupt mask register, Address offset: 0x00 */ - __IO uint32_t EMR; /*!< EXTI event mask register, Address offset: 0x04 */ - __IO uint32_t RTSR; /*!< EXTI rising edge trigger selection register, Address offset: 0x08 */ - __IO uint32_t FTSR; /*!< EXTI Falling edge trigger selection register, Address offset: 0x0C */ - __IO uint32_t SWIER; /*!< EXTI software interrupt event register, Address offset: 0x10 */ - __IO uint32_t PR; /*!< EXTI pending register, Address offset: 0x14 */ -} EXTI_TypeDef; - -/** - * @brief FLASH Registers - */ - -typedef struct -{ - __IO uint32_t ACR; /*!< Access control register, Address offset: 0x00 */ - __IO uint32_t PECR; /*!< Program/erase control register, Address offset: 0x04 */ - __IO uint32_t PDKEYR; /*!< Power down key register, Address offset: 0x08 */ - __IO uint32_t PEKEYR; /*!< Program/erase key register, Address offset: 0x0c */ - __IO uint32_t PRGKEYR; /*!< Program memory key register, Address offset: 0x10 */ - __IO uint32_t OPTKEYR; /*!< Option byte key register, Address offset: 0x14 */ - __IO uint32_t SR; /*!< Status register, Address offset: 0x18 */ - __IO uint32_t OBR; /*!< Option byte register, Address offset: 0x1c */ - __IO uint32_t WRPR; /*!< Write protection register, Address offset: 0x20 */ - uint32_t RESERVED[23]; /*!< Reserved, 0x24 */ - __IO uint32_t WRPR1; /*!< Write protection register 1, Address offset: 0x28 */ - __IO uint32_t WRPR2; /*!< Write protection register 2, Address offset: 0x2C */ -} FLASH_TypeDef; - -/** - * @brief Option Bytes Registers - */ - -typedef struct -{ - __IO uint32_t RDP; /*!< Read protection register, Address offset: 0x00 */ - __IO uint32_t USER; /*!< user register, Address offset: 0x04 */ - __IO uint32_t WRP01; /*!< write protection register 0 1, Address offset: 0x08 */ - __IO uint32_t WRP23; /*!< write protection register 2 3, Address offset: 0x0C */ - __IO uint32_t WRP45; /*!< write protection register 4 5, Address offset: 0x10 */ - __IO uint32_t WRP67; /*!< write protection register 6 7, Address offset: 0x14 */ - __IO uint32_t WRP89; /*!< write protection register 8 9, Address offset: 0x18 */ - __IO uint32_t WRP1011; /*!< write protection register 10 11, Address offset: 0x1C */ -} OB_TypeDef; - -/** - * @brief Operational Amplifier (OPAMP) - */ - -typedef struct -{ - __IO uint32_t CSR; /*!< OPAMP control/status register, Address offset: 0x00 */ - __IO uint32_t OTR; /*!< OPAMP offset trimming register for normal mode, Address offset: 0x04 */ - __IO uint32_t LPOTR; /*!< OPAMP offset trimming register for low power mode, Address offset: 0x08 */ -} OPAMP_TypeDef; - -/** - * @brief Flexible Static Memory Controller - */ - -typedef struct -{ - __IO uint32_t BTCR[8]; /*!< NOR/PSRAM chip-select control register(BCR) and chip-select timing register(BTR), Address offset: 0x00-1C */ -} FSMC_Bank1_TypeDef; - -/** - * @brief Flexible Static Memory Controller Bank1E - */ - -typedef struct -{ - __IO uint32_t BWTR[7]; /*!< NOR/PSRAM write timing registers, Address offset: 0x104-0x11C */ -} FSMC_Bank1E_TypeDef; - -/** - * @brief General Purpose IO - */ - -typedef struct -{ - __IO uint32_t MODER; /*!< GPIO port mode register, Address offset: 0x00 */ - __IO uint16_t OTYPER; /*!< GPIO port output type register, Address offset: 0x04 */ - uint16_t RESERVED0; /*!< Reserved, 0x06 */ - __IO uint32_t OSPEEDR; /*!< GPIO port output speed register, Address offset: 0x08 */ - __IO uint32_t PUPDR; /*!< GPIO port pull-up/pull-down register, Address offset: 0x0C */ - __IO uint16_t IDR; /*!< GPIO port input data register, Address offset: 0x10 */ - uint16_t RESERVED1; /*!< Reserved, 0x12 */ - __IO uint16_t ODR; /*!< GPIO port output data register, Address offset: 0x14 */ - uint16_t RESERVED2; /*!< Reserved, 0x16 */ - __IO uint16_t BSRRL; /*!< GPIO port bit set/reset low registerBSRR, Address offset: 0x18 */ - __IO uint16_t BSRRH; /*!< GPIO port bit set/reset high registerBSRR, Address offset: 0x1A */ - __IO uint32_t LCKR; /*!< GPIO port configuration lock register, Address offset: 0x1C */ - __IO uint32_t AFR[2]; /*!< GPIO alternate function low register, Address offset: 0x20-0x24 */ - __IO uint16_t BRR; /*!< GPIO bit reset register, Address offset: 0x28 */ - uint16_t RESERVED3; /*!< Reserved, 0x2A */ -} GPIO_TypeDef; - -/** - * @brief SysTem Configuration - */ - -typedef struct -{ - __IO uint32_t MEMRMP; /*!< SYSCFG memory remap register, Address offset: 0x00 */ - __IO uint32_t PMC; /*!< SYSCFG peripheral mode configuration register, Address offset: 0x04 */ - __IO uint32_t EXTICR[4]; /*!< SYSCFG external interrupt configuration registers, Address offset: 0x08-0x14 */ -} SYSCFG_TypeDef; - -/** - * @brief Inter-integrated Circuit Interface - */ - -typedef struct -{ - __IO uint16_t CR1; /*!< I2C Control register 1, Address offset: 0x00 */ - uint16_t RESERVED0; /*!< Reserved, 0x02 */ - __IO uint16_t CR2; /*!< I2C Control register 2, Address offset: 0x04 */ - uint16_t RESERVED1; /*!< Reserved, 0x06 */ - __IO uint16_t OAR1; /*!< I2C Own address register 1, Address offset: 0x08 */ - uint16_t RESERVED2; /*!< Reserved, 0x0A */ - __IO uint16_t OAR2; /*!< I2C Own address register 2, Address offset: 0x0C */ - uint16_t RESERVED3; /*!< Reserved, 0x0E */ - __IO uint16_t DR; /*!< I2C Data register, Address offset: 0x10 */ - uint16_t RESERVED4; /*!< Reserved, 0x12 */ - __IO uint16_t SR1; /*!< I2C Status register 1, Address offset: 0x14 */ - uint16_t RESERVED5; /*!< Reserved, 0x16 */ - __IO uint16_t SR2; /*!< I2C Status register 2, Address offset: 0x18 */ - uint16_t RESERVED6; /*!< Reserved, 0x1A */ - __IO uint16_t CCR; /*!< I2C Clock control register, Address offset: 0x1C */ - uint16_t RESERVED7; /*!< Reserved, 0x1E */ - __IO uint16_t TRISE; /*!< I2C TRISE register, Address offset: 0x20 */ - uint16_t RESERVED8; /*!< Reserved, 0x22 */ -} 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 LCD - */ - -typedef struct -{ - __IO uint32_t CR; /*!< LCD control register, Address offset: 0x00 */ - __IO uint32_t FCR; /*!< LCD frame control register, Address offset: 0x04 */ - __IO uint32_t SR; /*!< LCD status register, Address offset: 0x08 */ - __IO uint32_t CLR; /*!< LCD clear register, Address offset: 0x0C */ - uint32_t RESERVED; /*!< Reserved, Address offset: 0x10 */ - __IO uint32_t RAM[16]; /*!< LCD display memory, Address offset: 0x14-0x50 */ -} LCD_TypeDef; - -/** - * @brief Power Control - */ - -typedef struct -{ - __IO uint32_t CR; /*!< PWR power control register, Address offset: 0x00 */ - __IO uint32_t CSR; /*!< PWR power control/status register, Address offset: 0x04 */ -} PWR_TypeDef; - -/** - * @brief Reset and Clock Control - */ - -typedef struct -{ - __IO uint32_t CR; /*!< RCC clock control register, Address offset: 0x00 */ - __IO uint32_t ICSCR; /*!< RCC Internal clock sources calibration register, Address offset: 0x04 */ - __IO uint32_t CFGR; /*!< RCC Clock configuration register, Address offset: 0x08 */ - __IO uint32_t CIR; /*!< RCC Clock interrupt register, Address offset: 0x0C */ - __IO uint32_t AHBRSTR; /*!< RCC AHB peripheral reset register, Address offset: 0x10 */ - __IO uint32_t APB2RSTR; /*!< RCC APB2 peripheral reset register, Address offset: 0x14 */ - __IO uint32_t APB1RSTR; /*!< RCC APB1 peripheral reset register, Address offset: 0x18 */ - __IO uint32_t AHBENR; /*!< RCC AHB peripheral clock enable register, Address offset: 0x1C */ - __IO uint32_t APB2ENR; /*!< RCC APB2 peripheral clock enable register, Address offset: 0x20 */ - __IO uint32_t APB1ENR; /*!< RCC APB1 peripheral clock enable register, Address offset: 0x24 */ - __IO uint32_t AHBLPENR; /*!< RCC AHB peripheral clock enable in low power mode register, Address offset: 0x28 */ - __IO uint32_t APB2LPENR; /*!< RCC APB2 peripheral clock enable in low power mode register, Address offset: 0x2C */ - __IO uint32_t APB1LPENR; /*!< RCC APB1 peripheral clock enable in low power mode register, Address offset: 0x30 */ - __IO uint32_t CSR; /*!< RCC Control/status register, Address offset: 0x34 */ -} RCC_TypeDef; - -/** - * @brief Routing Interface - */ - -typedef struct -{ - __IO uint32_t ICR; /*!< RI input capture register, Address offset: 0x00 */ - __IO uint32_t ASCR1; /*!< RI analog switches control register, Address offset: 0x04 */ - __IO uint32_t ASCR2; /*!< RI analog switch control register 2, Address offset: 0x08 */ - __IO uint32_t HYSCR1; /*!< RI hysteresis control register, Address offset: 0x0C */ - __IO uint32_t HYSCR2; /*!< RI Hysteresis control register, Address offset: 0x10 */ - __IO uint32_t HYSCR3; /*!< RI Hysteresis control register, Address offset: 0x14 */ - __IO uint32_t HYSCR4; /*!< RI Hysteresis control register, Address offset: 0x18 */ -} RI_TypeDef; - -/** - * @brief Real-Time Clock - */ - -typedef struct -{ - __IO uint32_t TR; /*!< RTC time register, Address offset: 0x00 */ - __IO uint32_t DR; /*!< RTC date register, Address offset: 0x04 */ - __IO uint32_t CR; /*!< RTC control register, Address offset: 0x08 */ - __IO uint32_t ISR; /*!< RTC initialization and status register, Address offset: 0x0C */ - __IO uint32_t PRER; /*!< RTC prescaler register, Address offset: 0x10 */ - __IO uint32_t WUTR; /*!< RTC wakeup timer register, Address offset: 0x14 */ - __IO uint32_t CALIBR; /*!< RTC calibration register, Address offset: 0x18 */ - __IO uint32_t ALRMAR; /*!< RTC alarm A register, Address offset: 0x1C */ - __IO uint32_t ALRMBR; /*!< RTC alarm B register, Address offset: 0x20 */ - __IO uint32_t WPR; /*!< RTC write protection register, Address offset: 0x24 */ - __IO uint32_t SSR; /*!< RTC sub second register, Address offset: 0x28 */ - __IO uint32_t SHIFTR; /*!< RTC shift control register, Address offset: 0x2C */ - __IO uint32_t TSTR; /*!< RTC time stamp time register, Address offset: 0x30 */ - __IO uint32_t TSDR; /*!< RTC time stamp date register, Address offset: 0x34 */ - __IO uint32_t TSSSR; /*!< RTC time-stamp sub second register, Address offset: 0x38 */ - __IO uint32_t CALR; /*!< RRTC calibration register, Address offset: 0x3C */ - __IO uint32_t TAFCR; /*!< RTC tamper and alternate function configuration register, Address offset: 0x40 */ - __IO uint32_t ALRMASSR; /*!< RTC alarm A sub second register, Address offset: 0x44 */ - __IO uint32_t ALRMBSSR; /*!< RTC alarm B sub second register, Address offset: 0x48 */ - uint32_t RESERVED7; /*!< Reserved, 0x4C */ - __IO uint32_t BKP0R; /*!< RTC backup register 0, Address offset: 0x50 */ - __IO uint32_t BKP1R; /*!< RTC backup register 1, Address offset: 0x54 */ - __IO uint32_t BKP2R; /*!< RTC backup register 2, Address offset: 0x58 */ - __IO uint32_t BKP3R; /*!< RTC backup register 3, Address offset: 0x5C */ - __IO uint32_t BKP4R; /*!< RTC backup register 4, Address offset: 0x60 */ - __IO uint32_t BKP5R; /*!< RTC backup register 5, Address offset: 0x64 */ - __IO uint32_t BKP6R; /*!< RTC backup register 6, Address offset: 0x68 */ - __IO uint32_t BKP7R; /*!< RTC backup register 7, Address offset: 0x6C */ - __IO uint32_t BKP8R; /*!< RTC backup register 8, Address offset: 0x70 */ - __IO uint32_t BKP9R; /*!< RTC backup register 9, Address offset: 0x74 */ - __IO uint32_t BKP10R; /*!< RTC backup register 10, Address offset: 0x78 */ - __IO uint32_t BKP11R; /*!< RTC backup register 11, Address offset: 0x7C */ - __IO uint32_t BKP12R; /*!< RTC backup register 12, Address offset: 0x80 */ - __IO uint32_t BKP13R; /*!< RTC backup register 13, Address offset: 0x84 */ - __IO uint32_t BKP14R; /*!< RTC backup register 14, Address offset: 0x88 */ - __IO uint32_t BKP15R; /*!< RTC backup register 15, Address offset: 0x8C */ - __IO uint32_t BKP16R; /*!< RTC backup register 16, Address offset: 0x90 */ - __IO uint32_t BKP17R; /*!< RTC backup register 17, Address offset: 0x94 */ - __IO uint32_t BKP18R; /*!< RTC backup register 18, Address offset: 0x98 */ - __IO uint32_t BKP19R; /*!< RTC backup register 19, Address offset: 0x9C */ - __IO uint32_t BKP20R; /*!< RTC backup register 20, Address offset: 0xA0 */ - __IO uint32_t BKP21R; /*!< RTC backup register 21, Address offset: 0xA4 */ - __IO uint32_t BKP22R; /*!< RTC backup register 22, Address offset: 0xA8 */ - __IO uint32_t BKP23R; /*!< RTC backup register 23, Address offset: 0xAC */ - __IO uint32_t BKP24R; /*!< RTC backup register 24, Address offset: 0xB0 */ - __IO uint32_t BKP25R; /*!< RTC backup register 25, Address offset: 0xB4 */ - __IO uint32_t BKP26R; /*!< RTC backup register 26, Address offset: 0xB8 */ - __IO uint32_t BKP27R; /*!< RTC backup register 27, Address offset: 0xBC */ - __IO uint32_t BKP28R; /*!< RTC backup register 28, Address offset: 0xC0 */ - __IO uint32_t BKP29R; /*!< RTC backup register 29, Address offset: 0xC4 */ - __IO uint32_t BKP30R; /*!< RTC backup register 30, Address offset: 0xC8 */ - __IO uint32_t BKP31R; /*!< RTC backup register 31, Address offset: 0xCC */ -} RTC_TypeDef; - -/** - * @brief SD host Interface - */ - -typedef struct -{ - __IO uint32_t POWER; /*!< SDIO power control register, Address offset: 0x00 */ - __IO uint32_t CLKCR; /*!< SDI clock control register, Address offset: 0x04 */ - __IO uint32_t ARG; /*!< SDIO argument register, Address offset: 0x08 */ - __IO uint32_t CMD; /*!< SDIO command register, Address offset: 0x0C */ - __I uint32_t RESPCMD; /*!< SDIO command response register, Address offset: 0x10 */ - __I uint32_t RESP1; /*!< SDIO response 1 register, Address offset: 0x14 */ - __I uint32_t RESP2; /*!< SDIO response 2 register, Address offset: 0x18 */ - __I uint32_t RESP3; /*!< SDIO response 3 register, Address offset: 0x1C */ - __I uint32_t RESP4; /*!< SDIO response 4 register, Address offset: 0x20 */ - __IO uint32_t DTIMER; /*!< SDIO data timer register, Address offset: 0x24 */ - __IO uint32_t DLEN; /*!< SDIO data length register, Address offset: 0x28 */ - __IO uint32_t DCTRL; /*!< SDIO data control register, Address offset: 0x2C */ - __I uint32_t DCOUNT; /*!< SDIO data counter register, Address offset: 0x30 */ - __I uint32_t STA; /*!< SDIO status register, Address offset: 0x34 */ - __IO uint32_t ICR; /*!< SDIO interrupt clear register, Address offset: 0x38 */ - __IO uint32_t MASK; /*!< SDIO mask register, Address offset: 0x3C */ - uint32_t RESERVED0[2]; /*!< Reserved, 0x40-0x44 */ - __I uint32_t FIFOCNT; /*!< SDIO FIFO counter register, Address offset: 0x48 */ - uint32_t RESERVED1[13]; /*!< Reserved, 0x4C-0x7C */ - __IO uint32_t FIFO; /*!< SDIO data FIFO register, Address offset: 0x80 */ -} SDIO_TypeDef; - -/** - * @brief Serial Peripheral Interface - */ - -typedef struct -{ - __IO uint16_t CR1; /*!< SPI control register 1 (not used in I2S mode), Address offset: 0x00 */ - uint16_t RESERVED0; /*!< Reserved, 0x02 */ - __IO uint16_t CR2; /*!< SPI control register 2, Address offset: 0x04 */ - uint16_t RESERVED1; /*!< Reserved, 0x06 */ - __IO uint16_t SR; /*!< SPI status register, Address offset: 0x08 */ - uint16_t RESERVED2; /*!< Reserved, 0x0A */ - __IO uint16_t DR; /*!< SPI data register, Address offset: 0x0C */ - uint16_t RESERVED3; /*!< Reserved, 0x0E */ - __IO uint16_t CRCPR; /*!< SPI CRC polynomial register (not used in I2S mode), Address offset: 0x10 */ - uint16_t RESERVED4; /*!< Reserved, 0x12 */ - __IO uint16_t RXCRCR; /*!< SPI RX CRC register (not used in I2S mode), Address offset: 0x14 */ - uint16_t RESERVED5; /*!< Reserved, 0x16 */ - __IO uint16_t TXCRCR; /*!< SPI TX CRC register (not used in I2S mode), Address offset: 0x18 */ - uint16_t RESERVED6; /*!< Reserved, 0x1A */ - __IO uint16_t I2SCFGR; /*!< SPI_I2S configuration register, Address offset: 0x1C */ - uint16_t RESERVED7; /*!< Reserved, 0x1E */ - __IO uint16_t I2SPR; /*!< SPI_I2S prescaler register, Address offset: 0x20 */ - uint16_t RESERVED8; /*!< Reserved, 0x22 */ -} SPI_TypeDef; - -/** - * @brief TIM - */ - -typedef struct -{ - __IO uint16_t CR1; /*!< TIM control register 1, Address offset: 0x00 */ - uint16_t RESERVED0; /*!< Reserved, 0x02 */ - __IO uint16_t CR2; /*!< TIM control register 2, Address offset: 0x04 */ - uint16_t RESERVED1; /*!< Reserved, 0x06 */ - __IO uint16_t SMCR; /*!< TIM slave mode control register, Address offset: 0x08 */ - uint16_t RESERVED2; /*!< Reserved, 0x0A */ - __IO uint16_t DIER; /*!< TIM DMA/interrupt enable register, Address offset: 0x0C */ - uint16_t RESERVED3; /*!< Reserved, 0x0E */ - __IO uint16_t SR; /*!< TIM status register, Address offset: 0x10 */ - uint16_t RESERVED4; /*!< Reserved, 0x12 */ - __IO uint16_t EGR; /*!< TIM event generation register, Address offset: 0x14 */ - uint16_t RESERVED5; /*!< Reserved, 0x16 */ - __IO uint16_t CCMR1; /*!< TIM capture/compare mode register 1, Address offset: 0x18 */ - uint16_t RESERVED6; /*!< Reserved, 0x1A */ - __IO uint16_t CCMR2; /*!< TIM capture/compare mode register 2, Address offset: 0x1C */ - uint16_t RESERVED7; /*!< Reserved, 0x1E */ - __IO uint16_t CCER; /*!< TIM capture/compare enable register, Address offset: 0x20 */ - uint16_t RESERVED8; /*!< Reserved, 0x22 */ - __IO uint32_t CNT; /*!< TIM counter register, Address offset: 0x24 */ - __IO uint16_t PSC; /*!< TIM prescaler, Address offset: 0x28 */ - uint16_t RESERVED10; /*!< Reserved, 0x2A */ - __IO uint32_t ARR; /*!< TIM auto-reload register, Address offset: 0x2C */ - uint32_t RESERVED12; /*!< Reserved, 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 */ - uint32_t RESERVED17; /*!< Reserved, 0x44 */ - __IO uint16_t DCR; /*!< TIM DMA control register, Address offset: 0x48 */ - uint16_t RESERVED18; /*!< Reserved, 0x4A */ - __IO uint16_t DMAR; /*!< TIM DMA address for full transfer, Address offset: 0x4C */ - uint16_t RESERVED19; /*!< Reserved, 0x4E */ - __IO uint16_t OR; /*!< TIM option register, Address offset: 0x50 */ - uint16_t RESERVED20; /*!< Reserved, 0x52 */ -} TIM_TypeDef; - -/** - * @brief Universal Synchronous Asynchronous Receiver Transmitter - */ - -typedef struct -{ - __IO uint16_t SR; /*!< USART Status register, Address offset: 0x00 */ - uint16_t RESERVED0; /*!< Reserved, 0x02 */ - __IO uint16_t DR; /*!< USART Data register, Address offset: 0x04 */ - uint16_t RESERVED1; /*!< Reserved, 0x06 */ - __IO uint16_t BRR; /*!< USART Baud rate register, Address offset: 0x08 */ - uint16_t RESERVED2; /*!< Reserved, 0x0A */ - __IO uint16_t CR1; /*!< USART Control register 1, Address offset: 0x0C */ - uint16_t RESERVED3; /*!< Reserved, 0x0E */ - __IO uint16_t CR2; /*!< USART Control register 2, Address offset: 0x10 */ - uint16_t RESERVED4; /*!< Reserved, 0x12 */ - __IO uint16_t CR3; /*!< USART Control register 3, Address offset: 0x14 */ - uint16_t RESERVED5; /*!< Reserved, 0x16 */ - __IO uint16_t GTPR; /*!< USART Guard time and prescaler register, Address offset: 0x18 */ - uint16_t RESERVED6; /*!< Reserved, 0x1A */ -} USART_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 ((uint32_t)0x08000000) /*!< FLASH base address in the alias region */ -#define SRAM_BASE ((uint32_t)0x20000000) /*!< SRAM base address in the alias region */ -#define PERIPH_BASE ((uint32_t)0x40000000) /*!< Peripheral base address in the alias region */ - -#define SRAM_BB_BASE ((uint32_t)0x22000000) /*!< SRAM base address in the bit-band region */ -#define PERIPH_BB_BASE ((uint32_t)0x42000000) /*!< Peripheral base address in the bit-band region */ - -#define FSMC_R_BASE ((uint32_t)0xA0000000) /*!< FSMC registers base address */ - -/*!< Peripheral memory map */ -#define APB1PERIPH_BASE PERIPH_BASE -#define APB2PERIPH_BASE (PERIPH_BASE + 0x10000) -#define AHBPERIPH_BASE (PERIPH_BASE + 0x20000) - -#define TIM2_BASE (APB1PERIPH_BASE + 0x0000) -#define TIM3_BASE (APB1PERIPH_BASE + 0x0400) -#define TIM4_BASE (APB1PERIPH_BASE + 0x0800) -#define TIM5_BASE (APB1PERIPH_BASE + 0x0C00) -#define TIM6_BASE (APB1PERIPH_BASE + 0x1000) -#define TIM7_BASE (APB1PERIPH_BASE + 0x1400) -#define LCD_BASE (APB1PERIPH_BASE + 0x2400) -#define RTC_BASE (APB1PERIPH_BASE + 0x2800) -#define WWDG_BASE (APB1PERIPH_BASE + 0x2C00) -#define IWDG_BASE (APB1PERIPH_BASE + 0x3000) -#define SPI2_BASE (APB1PERIPH_BASE + 0x3800) -#define SPI3_BASE (APB1PERIPH_BASE + 0x3C00) -#define USART2_BASE (APB1PERIPH_BASE + 0x4400) -#define USART3_BASE (APB1PERIPH_BASE + 0x4800) -#define UART4_BASE (APB1PERIPH_BASE + 0x4C00) -#define UART5_BASE (APB1PERIPH_BASE + 0x5000) -#define I2C1_BASE (APB1PERIPH_BASE + 0x5400) -#define I2C2_BASE (APB1PERIPH_BASE + 0x5800) -#define PWR_BASE (APB1PERIPH_BASE + 0x7000) -#define DAC_BASE (APB1PERIPH_BASE + 0x7400) -#define COMP_BASE (APB1PERIPH_BASE + 0x7C00) -#define RI_BASE (APB1PERIPH_BASE + 0x7C04) -#define OPAMP_BASE (APB1PERIPH_BASE + 0x7C5C) - -#define SYSCFG_BASE (APB2PERIPH_BASE + 0x0000) -#define EXTI_BASE (APB2PERIPH_BASE + 0x0400) -#define TIM9_BASE (APB2PERIPH_BASE + 0x0800) -#define TIM10_BASE (APB2PERIPH_BASE + 0x0C00) -#define TIM11_BASE (APB2PERIPH_BASE + 0x1000) -#define ADC1_BASE (APB2PERIPH_BASE + 0x2400) -#define ADC_BASE (APB2PERIPH_BASE + 0x2700) -#define SDIO_BASE (APB2PERIPH_BASE + 0x2C00) -#define SPI1_BASE (APB2PERIPH_BASE + 0x3000) -#define USART1_BASE (APB2PERIPH_BASE + 0x3800) - -#define GPIOA_BASE (AHBPERIPH_BASE + 0x0000) -#define GPIOB_BASE (AHBPERIPH_BASE + 0x0400) -#define GPIOC_BASE (AHBPERIPH_BASE + 0x0800) -#define GPIOD_BASE (AHBPERIPH_BASE + 0x0C00) -#define GPIOE_BASE (AHBPERIPH_BASE + 0x1000) -#define GPIOH_BASE (AHBPERIPH_BASE + 0x1400) -#define GPIOF_BASE (AHBPERIPH_BASE + 0x1800) -#define GPIOG_BASE (AHBPERIPH_BASE + 0x1C00) -#define CRC_BASE (AHBPERIPH_BASE + 0x3000) -#define RCC_BASE (AHBPERIPH_BASE + 0x3800) - - -#define FLASH_R_BASE (AHBPERIPH_BASE + 0x3C00) /*!< FLASH registers base address */ -#define OB_BASE ((uint32_t)0x1FF80000) /*!< FLASH Option Bytes base address */ - -#define DMA1_BASE (AHBPERIPH_BASE + 0x6000) -#define DMA1_Channel1_BASE (DMA1_BASE + 0x0008) -#define DMA1_Channel2_BASE (DMA1_BASE + 0x001C) -#define DMA1_Channel3_BASE (DMA1_BASE + 0x0030) -#define DMA1_Channel4_BASE (DMA1_BASE + 0x0044) -#define DMA1_Channel5_BASE (DMA1_BASE + 0x0058) -#define DMA1_Channel6_BASE (DMA1_BASE + 0x006C) -#define DMA1_Channel7_BASE (DMA1_BASE + 0x0080) - -#define DMA2_BASE (AHBPERIPH_BASE + 0x6400) -#define DMA2_Channel1_BASE (DMA2_BASE + 0x0008) -#define DMA2_Channel2_BASE (DMA2_BASE + 0x001C) -#define DMA2_Channel3_BASE (DMA2_BASE + 0x0030) -#define DMA2_Channel4_BASE (DMA2_BASE + 0x0044) -#define DMA2_Channel5_BASE (DMA2_BASE + 0x0058) - -#define AES_BASE ((uint32_t)0x50060000) - -#define FSMC_Bank1_R_BASE (FSMC_R_BASE + 0x0000) /*!< FSMC Bank1 registers base address */ -#define FSMC_Bank1E_R_BASE (FSMC_R_BASE + 0x0104) /*!< FSMC Bank1E registers base address */ - -#define DBGMCU_BASE ((uint32_t)0xE0042000) /*!< Debug MCU registers 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 LCD ((LCD_TypeDef *) LCD_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 PWR ((PWR_TypeDef *) PWR_BASE) -#define DAC ((DAC_TypeDef *) DAC_BASE) -#define COMP ((COMP_TypeDef *) COMP_BASE) -#define RI ((RI_TypeDef *) RI_BASE) -#define OPAMP ((OPAMP_TypeDef *) OPAMP_BASE) -#define SYSCFG ((SYSCFG_TypeDef *) SYSCFG_BASE) -#define EXTI ((EXTI_TypeDef *) EXTI_BASE) - -#define ADC1 ((ADC_TypeDef *) ADC1_BASE) -#define ADC ((ADC_Common_TypeDef *) ADC_BASE) -#define SDIO ((SDIO_TypeDef *) SDIO_BASE) -#define TIM9 ((TIM_TypeDef *) TIM9_BASE) -#define TIM10 ((TIM_TypeDef *) TIM10_BASE) -#define TIM11 ((TIM_TypeDef *) TIM11_BASE) -#define SPI1 ((SPI_TypeDef *) SPI1_BASE) -#define USART1 ((USART_TypeDef *) USART1_BASE) -#define DMA1 ((DMA_TypeDef *) DMA1_BASE) -#define DMA1_Channel1 ((DMA_Channel_TypeDef *) DMA1_Channel1_BASE) -#define DMA1_Channel2 ((DMA_Channel_TypeDef *) DMA1_Channel2_BASE) -#define DMA1_Channel3 ((DMA_Channel_TypeDef *) DMA1_Channel3_BASE) -#define DMA1_Channel4 ((DMA_Channel_TypeDef *) DMA1_Channel4_BASE) -#define DMA1_Channel5 ((DMA_Channel_TypeDef *) DMA1_Channel5_BASE) -#define DMA1_Channel6 ((DMA_Channel_TypeDef *) DMA1_Channel6_BASE) -#define DMA1_Channel7 ((DMA_Channel_TypeDef *) DMA1_Channel7_BASE) - -#define DMA2 ((DMA_TypeDef *) DMA2_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 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 GPIOH ((GPIO_TypeDef *) GPIOH_BASE) -#define GPIOF ((GPIO_TypeDef *) GPIOF_BASE) -#define GPIOG ((GPIO_TypeDef *) GPIOG_BASE) - -#define FLASH ((FLASH_TypeDef *) FLASH_R_BASE) -#define OB ((OB_TypeDef *) OB_BASE) - -#define AES ((AES_TypeDef *) AES_BASE) - -#define FSMC_Bank1 ((FSMC_Bank1_TypeDef *) FSMC_Bank1_R_BASE) -#define FSMC_Bank1E ((FSMC_Bank1E_TypeDef *) FSMC_Bank1E_R_BASE) - -#define DBGMCU ((DBGMCU_TypeDef *) DBGMCU_BASE) - -/** - * @} - */ - -/** @addtogroup Exported_constants - * @{ - */ - -/** @addtogroup Peripheral_Registers_Bits_Definition - * @{ - */ - -/******************************************************************************/ -/* Peripheral Registers Bits Definition */ -/******************************************************************************/ -/******************************************************************************/ -/* */ -/* Analog to Digital Converter (ADC) */ -/* */ -/******************************************************************************/ - -/******************** Bit definition for ADC_SR register ********************/ -#define ADC_SR_AWD ((uint32_t)0x00000001) /*!< Analog watchdog flag */ -#define ADC_SR_EOC ((uint32_t)0x00000002) /*!< End of conversion */ -#define ADC_SR_JEOC ((uint32_t)0x00000004) /*!< Injected channel end of conversion */ -#define ADC_SR_JSTRT ((uint32_t)0x00000008) /*!< Injected channel Start flag */ -#define ADC_SR_STRT ((uint32_t)0x00000010) /*!< Regular channel Start flag */ -#define ADC_SR_OVR ((uint32_t)0x00000020) /*!< Overrun flag */ -#define ADC_SR_ADONS ((uint32_t)0x00000040) /*!< ADC ON status */ -#define ADC_SR_RCNR ((uint32_t)0x00000100) /*!< Regular channel not ready flag */ -#define ADC_SR_JCNR ((uint32_t)0x00000200) /*!< Injected channel not ready flag */ - -/******************* Bit definition for ADC_CR1 register ********************/ -#define ADC_CR1_AWDCH ((uint32_t)0x0000001F) /*!< AWDCH[4:0] bits (Analog watchdog channel select bits) */ -#define ADC_CR1_AWDCH_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_CR1_AWDCH_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_CR1_AWDCH_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_CR1_AWDCH_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_CR1_AWDCH_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -#define ADC_CR1_EOCIE ((uint32_t)0x00000020) /*!< Interrupt enable for EOC */ -#define ADC_CR1_AWDIE ((uint32_t)0x00000040) /*!< Analog Watchdog interrupt enable */ -#define ADC_CR1_JEOCIE ((uint32_t)0x00000080) /*!< Interrupt enable for injected channels */ -#define ADC_CR1_SCAN ((uint32_t)0x00000100) /*!< Scan mode */ -#define ADC_CR1_AWDSGL ((uint32_t)0x00000200) /*!< Enable the watchdog on a single channel in scan mode */ -#define ADC_CR1_JAUTO ((uint32_t)0x00000400) /*!< Automatic injected group conversion */ -#define ADC_CR1_DISCEN ((uint32_t)0x00000800) /*!< Discontinuous mode on regular channels */ -#define ADC_CR1_JDISCEN ((uint32_t)0x00001000) /*!< Discontinuous mode on injected channels */ - -#define ADC_CR1_DISCNUM ((uint32_t)0x0000E000) /*!< DISCNUM[2:0] bits (Discontinuous mode channel count) */ -#define ADC_CR1_DISCNUM_0 ((uint32_t)0x00002000) /*!< Bit 0 */ -#define ADC_CR1_DISCNUM_1 ((uint32_t)0x00004000) /*!< Bit 1 */ -#define ADC_CR1_DISCNUM_2 ((uint32_t)0x00008000) /*!< Bit 2 */ - -#define ADC_CR1_PDD ((uint32_t)0x00010000) /*!< Power Down during Delay phase */ -#define ADC_CR1_PDI ((uint32_t)0x00020000) /*!< Power Down during Idle phase */ - -#define ADC_CR1_JAWDEN ((uint32_t)0x00400000) /*!< Analog watchdog enable on injected channels */ -#define ADC_CR1_AWDEN ((uint32_t)0x00800000) /*!< Analog watchdog enable on regular channels */ - -#define ADC_CR1_RES ((uint32_t)0x03000000) /*!< RES[1:0] bits (Resolution) */ -#define ADC_CR1_RES_0 ((uint32_t)0x01000000) /*!< Bit 0 */ -#define ADC_CR1_RES_1 ((uint32_t)0x02000000) /*!< Bit 1 */ - -#define ADC_CR1_OVRIE ((uint32_t)0x04000000) /*!< Overrun interrupt enable */ - -/******************* Bit definition for ADC_CR2 register ********************/ -#define ADC_CR2_ADON ((uint32_t)0x00000001) /*!< A/D Converter ON / OFF */ -#define ADC_CR2_CONT ((uint32_t)0x00000002) /*!< Continuous Conversion */ -#define ADC_CR2_CFG ((uint32_t)0x00000004) /*!< ADC Configuration */ - -#define ADC_CR2_DELS ((uint32_t)0x00000070) /*!< DELS[2:0] bits (Delay selection) */ -#define ADC_CR2_DELS_0 ((uint32_t)0x00000010) /*!< Bit 0 */ -#define ADC_CR2_DELS_1 ((uint32_t)0x00000020) /*!< Bit 1 */ -#define ADC_CR2_DELS_2 ((uint32_t)0x00000040) /*!< Bit 2 */ - -#define ADC_CR2_DMA ((uint32_t)0x00000100) /*!< Direct Memory access mode */ -#define ADC_CR2_DDS ((uint32_t)0x00000200) /*!< DMA disable selection (Single ADC) */ -#define ADC_CR2_EOCS ((uint32_t)0x00000400) /*!< End of conversion selection */ -#define ADC_CR2_ALIGN ((uint32_t)0x00000800) /*!< Data Alignment */ - -#define ADC_CR2_JEXTSEL ((uint32_t)0x000F0000) /*!< JEXTSEL[3:0] bits (External event select for injected group) */ -#define ADC_CR2_JEXTSEL_0 ((uint32_t)0x00010000) /*!< Bit 0 */ -#define ADC_CR2_JEXTSEL_1 ((uint32_t)0x00020000) /*!< Bit 1 */ -#define ADC_CR2_JEXTSEL_2 ((uint32_t)0x00040000) /*!< Bit 2 */ -#define ADC_CR2_JEXTSEL_3 ((uint32_t)0x00080000) /*!< Bit 3 */ - -#define ADC_CR2_JEXTEN ((uint32_t)0x00300000) /*!< JEXTEN[1:0] bits (External Trigger Conversion mode for injected channels) */ -#define ADC_CR2_JEXTEN_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_CR2_JEXTEN_1 ((uint32_t)0x00200000) /*!< Bit 1 */ - -#define ADC_CR2_JSWSTART ((uint32_t)0x00400000) /*!< Start Conversion of injected channels */ - -#define ADC_CR2_EXTSEL ((uint32_t)0x0F000000) /*!< EXTSEL[3:0] bits (External Event Select for regular group) */ -#define ADC_CR2_EXTSEL_0 ((uint32_t)0x01000000) /*!< Bit 0 */ -#define ADC_CR2_EXTSEL_1 ((uint32_t)0x02000000) /*!< Bit 1 */ -#define ADC_CR2_EXTSEL_2 ((uint32_t)0x04000000) /*!< Bit 2 */ -#define ADC_CR2_EXTSEL_3 ((uint32_t)0x08000000) /*!< Bit 3 */ - -#define ADC_CR2_EXTEN ((uint32_t)0x30000000) /*!< EXTEN[1:0] bits (External Trigger Conversion mode for regular channels) */ -#define ADC_CR2_EXTEN_0 ((uint32_t)0x10000000) /*!< Bit 0 */ -#define ADC_CR2_EXTEN_1 ((uint32_t)0x20000000) /*!< Bit 1 */ - -#define ADC_CR2_SWSTART ((uint32_t)0x40000000) /*!< Start Conversion of regular channels */ - -/****************** Bit definition for ADC_SMPR1 register *******************/ -#define ADC_SMPR1_SMP20 ((uint32_t)0x00000007) /*!< SMP20[2:0] bits (Channel 20 Sample time selection) */ -#define ADC_SMPR1_SMP20_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SMPR1_SMP20_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SMPR1_SMP20_2 ((uint32_t)0x00000004) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP21 ((uint32_t)0x00000038) /*!< SMP21[2:0] bits (Channel 21 Sample time selection) */ -#define ADC_SMPR1_SMP21_0 ((uint32_t)0x00000008) /*!< Bit 0 */ -#define ADC_SMPR1_SMP21_1 ((uint32_t)0x00000010) /*!< Bit 1 */ -#define ADC_SMPR1_SMP21_2 ((uint32_t)0x00000020) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP22 ((uint32_t)0x000001C0) /*!< SMP22[2:0] bits (Channel 22 Sample time selection) */ -#define ADC_SMPR1_SMP22_0 ((uint32_t)0x00000040) /*!< Bit 0 */ -#define ADC_SMPR1_SMP22_1 ((uint32_t)0x00000080) /*!< Bit 1 */ -#define ADC_SMPR1_SMP22_2 ((uint32_t)0x00000100) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP23 ((uint32_t)0x00000E00) /*!< SMP23[2:0] bits (Channel 23 Sample time selection) */ -#define ADC_SMPR1_SMP23_0 ((uint32_t)0x00000200) /*!< Bit 0 */ -#define ADC_SMPR1_SMP23_1 ((uint32_t)0x00000400) /*!< Bit 1 */ -#define ADC_SMPR1_SMP23_2 ((uint32_t)0x00000800) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP24 ((uint32_t)0x00007000) /*!< SMP24[2:0] bits (Channel 24 Sample time selection) */ -#define ADC_SMPR1_SMP24_0 ((uint32_t)0x00001000) /*!< Bit 0 */ -#define ADC_SMPR1_SMP24_1 ((uint32_t)0x00002000) /*!< Bit 1 */ -#define ADC_SMPR1_SMP24_2 ((uint32_t)0x00004000) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP25 ((uint32_t)0x00038000) /*!< SMP25[2:0] bits (Channel 25 Sample time selection) */ -#define ADC_SMPR1_SMP25_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SMPR1_SMP25_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SMPR1_SMP25_2 ((uint32_t)0x00020000) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP26 ((uint32_t)0x001C0000) /*!< SMP26[2:0] bits (Channel 26 Sample time selection) */ -#define ADC_SMPR1_SMP26_0 ((uint32_t)0x00040000) /*!< Bit 0 */ -#define ADC_SMPR1_SMP26_1 ((uint32_t)0x00080000) /*!< Bit 1 */ -#define ADC_SMPR1_SMP26_2 ((uint32_t)0x00100000) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP27 ((uint32_t)0x00E00000) /*!< SMP27[2:0] bits (Channel 27 Sample time selection) */ -#define ADC_SMPR1_SMP27_0 ((uint32_t)0x00200000) /*!< Bit 0 */ -#define ADC_SMPR1_SMP27_1 ((uint32_t)0x00400000) /*!< Bit 1 */ -#define ADC_SMPR1_SMP27_2 ((uint32_t)0x00800000) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP28 ((uint32_t)0x07000000) /*!< SMP28[2:0] bits (Channel 28 Sample time selection) */ -#define ADC_SMPR1_SMP28_0 ((uint32_t)0x01000000) /*!< Bit 0 */ -#define ADC_SMPR1_SMP28_1 ((uint32_t)0x02000000) /*!< Bit 1 */ -#define ADC_SMPR1_SMP28_2 ((uint32_t)0x04000000) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP29 ((uint32_t)0x38000000) /*!< SMP29[2:0] bits (Channel 29 Sample time selection) */ -#define ADC_SMPR1_SMP29_0 ((uint32_t)0x08000000) /*!< Bit 0 */ -#define ADC_SMPR1_SMP29_1 ((uint32_t)0x10000000) /*!< Bit 1 */ -#define ADC_SMPR1_SMP29_2 ((uint32_t)0x20000000) /*!< Bit 2 */ - -/****************** Bit definition for ADC_SMPR2 register *******************/ -#define ADC_SMPR2_SMP10 ((uint32_t)0x00000007) /*!< SMP10[2:0] bits (Channel 10 Sample time selection) */ -#define ADC_SMPR2_SMP10_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SMPR2_SMP10_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SMPR2_SMP10_2 ((uint32_t)0x00000004) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP11 ((uint32_t)0x00000038) /*!< SMP11[2:0] bits (Channel 11 Sample time selection) */ -#define ADC_SMPR2_SMP11_0 ((uint32_t)0x00000008) /*!< Bit 0 */ -#define ADC_SMPR2_SMP11_1 ((uint32_t)0x00000010) /*!< Bit 1 */ -#define ADC_SMPR2_SMP11_2 ((uint32_t)0x00000020) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP12 ((uint32_t)0x000001C0) /*!< SMP12[2:0] bits (Channel 12 Sample time selection) */ -#define ADC_SMPR2_SMP12_0 ((uint32_t)0x00000040) /*!< Bit 0 */ -#define ADC_SMPR2_SMP12_1 ((uint32_t)0x00000080) /*!< Bit 1 */ -#define ADC_SMPR2_SMP12_2 ((uint32_t)0x00000100) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP13 ((uint32_t)0x00000E00) /*!< SMP13[2:0] bits (Channel 13 Sample time selection) */ -#define ADC_SMPR2_SMP13_0 ((uint32_t)0x00000200) /*!< Bit 0 */ -#define ADC_SMPR2_SMP13_1 ((uint32_t)0x00000400) /*!< Bit 1 */ -#define ADC_SMPR2_SMP13_2 ((uint32_t)0x00000800) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP14 ((uint32_t)0x00007000) /*!< SMP14[2:0] bits (Channel 14 Sample time selection) */ -#define ADC_SMPR2_SMP14_0 ((uint32_t)0x00001000) /*!< Bit 0 */ -#define ADC_SMPR2_SMP14_1 ((uint32_t)0x00002000) /*!< Bit 1 */ -#define ADC_SMPR2_SMP14_2 ((uint32_t)0x00004000) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP15 ((uint32_t)0x00038000) /*!< SMP15[2:0] bits (Channel 5 Sample time selection) */ -#define ADC_SMPR2_SMP15_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SMPR2_SMP15_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SMPR2_SMP15_2 ((uint32_t)0x00020000) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP16 ((uint32_t)0x001C0000) /*!< SMP16[2:0] bits (Channel 16 Sample time selection) */ -#define ADC_SMPR2_SMP16_0 ((uint32_t)0x00040000) /*!< Bit 0 */ -#define ADC_SMPR2_SMP16_1 ((uint32_t)0x00080000) /*!< Bit 1 */ -#define ADC_SMPR2_SMP16_2 ((uint32_t)0x00100000) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP17 ((uint32_t)0x00E00000) /*!< SMP17[2:0] bits (Channel 17 Sample time selection) */ -#define ADC_SMPR2_SMP17_0 ((uint32_t)0x00200000) /*!< Bit 0 */ -#define ADC_SMPR2_SMP17_1 ((uint32_t)0x00400000) /*!< Bit 1 */ -#define ADC_SMPR2_SMP17_2 ((uint32_t)0x00800000) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP18 ((uint32_t)0x07000000) /*!< SMP18[2:0] bits (Channel 18 Sample time selection) */ -#define ADC_SMPR2_SMP18_0 ((uint32_t)0x01000000) /*!< Bit 0 */ -#define ADC_SMPR2_SMP18_1 ((uint32_t)0x02000000) /*!< Bit 1 */ -#define ADC_SMPR2_SMP18_2 ((uint32_t)0x04000000) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP19 ((uint32_t)0x38000000) /*!< SMP19[2:0] bits (Channel 19 Sample time selection) */ -#define ADC_SMPR2_SMP19_0 ((uint32_t)0x08000000) /*!< Bit 0 */ -#define ADC_SMPR2_SMP19_1 ((uint32_t)0x10000000) /*!< Bit 1 */ -#define ADC_SMPR2_SMP19_2 ((uint32_t)0x20000000) /*!< Bit 2 */ - -/****************** Bit definition for ADC_SMPR3 register *******************/ -#define ADC_SMPR3_SMP0 ((uint32_t)0x00000007) /*!< SMP0[2:0] bits (Channel 0 Sample time selection) */ -#define ADC_SMPR3_SMP0_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SMPR3_SMP0_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SMPR3_SMP0_2 ((uint32_t)0x00000004) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP1 ((uint32_t)0x00000038) /*!< SMP1[2:0] bits (Channel 1 Sample time selection) */ -#define ADC_SMPR3_SMP1_0 ((uint32_t)0x00000008) /*!< Bit 0 */ -#define ADC_SMPR3_SMP1_1 ((uint32_t)0x00000010) /*!< Bit 1 */ -#define ADC_SMPR3_SMP1_2 ((uint32_t)0x00000020) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP2 ((uint32_t)0x000001C0) /*!< SMP2[2:0] bits (Channel 2 Sample time selection) */ -#define ADC_SMPR3_SMP2_0 ((uint32_t)0x00000040) /*!< Bit 0 */ -#define ADC_SMPR3_SMP2_1 ((uint32_t)0x00000080) /*!< Bit 1 */ -#define ADC_SMPR3_SMP2_2 ((uint32_t)0x00000100) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP3 ((uint32_t)0x00000E00) /*!< SMP3[2:0] bits (Channel 3 Sample time selection) */ -#define ADC_SMPR3_SMP3_0 ((uint32_t)0x00000200) /*!< Bit 0 */ -#define ADC_SMPR3_SMP3_1 ((uint32_t)0x00000400) /*!< Bit 1 */ -#define ADC_SMPR3_SMP3_2 ((uint32_t)0x00000800) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP4 ((uint32_t)0x00007000) /*!< SMP4[2:0] bits (Channel 4 Sample time selection) */ -#define ADC_SMPR3_SMP4_0 ((uint32_t)0x00001000) /*!< Bit 0 */ -#define ADC_SMPR3_SMP4_1 ((uint32_t)0x00002000) /*!< Bit 1 */ -#define ADC_SMPR3_SMP4_2 ((uint32_t)0x00004000) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP5 ((uint32_t)0x00038000) /*!< SMP5[2:0] bits (Channel 5 Sample time selection) */ -#define ADC_SMPR3_SMP5_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SMPR3_SMP5_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SMPR3_SMP5_2 ((uint32_t)0x00020000) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP6 ((uint32_t)0x001C0000) /*!< SMP6[2:0] bits (Channel 6 Sample time selection) */ -#define ADC_SMPR3_SMP6_0 ((uint32_t)0x00040000) /*!< Bit 0 */ -#define ADC_SMPR3_SMP6_1 ((uint32_t)0x00080000) /*!< Bit 1 */ -#define ADC_SMPR3_SMP6_2 ((uint32_t)0x00100000) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP7 ((uint32_t)0x00E00000) /*!< SMP7[2:0] bits (Channel 7 Sample time selection) */ -#define ADC_SMPR3_SMP7_0 ((uint32_t)0x00200000) /*!< Bit 0 */ -#define ADC_SMPR3_SMP7_1 ((uint32_t)0x00400000) /*!< Bit 1 */ -#define ADC_SMPR3_SMP7_2 ((uint32_t)0x00800000) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP8 ((uint32_t)0x07000000) /*!< SMP8[2:0] bits (Channel 8 Sample time selection) */ -#define ADC_SMPR3_SMP8_0 ((uint32_t)0x01000000) /*!< Bit 0 */ -#define ADC_SMPR3_SMP8_1 ((uint32_t)0x02000000) /*!< Bit 1 */ -#define ADC_SMPR3_SMP8_2 ((uint32_t)0x04000000) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP9 ((uint32_t)0x38000000) /*!< SMP9[2:0] bits (Channel 9 Sample time selection) */ -#define ADC_SMPR3_SMP9_0 ((uint32_t)0x08000000) /*!< Bit 0 */ -#define ADC_SMPR3_SMP9_1 ((uint32_t)0x10000000) /*!< Bit 1 */ -#define ADC_SMPR3_SMP9_2 ((uint32_t)0x20000000) /*!< Bit 2 */ - -/****************** Bit definition for ADC_JOFR1 register *******************/ -#define ADC_JOFR1_JOFFSET1 ((uint32_t)0x00000FFF) /*!< Data offset for injected channel 1 */ - -/****************** Bit definition for ADC_JOFR2 register *******************/ -#define ADC_JOFR2_JOFFSET2 ((uint32_t)0x00000FFF) /*!< Data offset for injected channel 2 */ - -/****************** Bit definition for ADC_JOFR3 register *******************/ -#define ADC_JOFR3_JOFFSET3 ((uint32_t)0x00000FFF) /*!< Data offset for injected channel 3 */ - -/****************** Bit definition for ADC_JOFR4 register *******************/ -#define ADC_JOFR4_JOFFSET4 ((uint32_t)0x00000FFF) /*!< Data offset for injected channel 4 */ - -/******************* Bit definition for ADC_HTR register ********************/ -#define ADC_HTR_HT ((uint32_t)0x00000FFF) /*!< Analog watchdog high threshold */ - -/******************* Bit definition for ADC_LTR register ********************/ -#define ADC_LTR_LT ((uint32_t)0x00000FFF) /*!< Analog watchdog low threshold */ - -/******************* Bit definition for ADC_SQR1 register *******************/ -#define ADC_SQR1_L ((uint32_t)0x00F00000) /*!< L[3:0] bits (Regular channel sequence length) */ -#define ADC_SQR1_L_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_SQR1_L_1 ((uint32_t)0x00200000) /*!< Bit 1 */ -#define ADC_SQR1_L_2 ((uint32_t)0x00400000) /*!< Bit 2 */ -#define ADC_SQR1_L_3 ((uint32_t)0x00800000) /*!< Bit 3 */ - -#define ADC_SQR1_SQ28 ((uint32_t)0x000F8000) /*!< SQ28[4:0] bits (25th conversion in regular sequence) */ -#define ADC_SQR1_SQ28_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SQR1_SQ28_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SQR1_SQ28_2 ((uint32_t)0x00020000) /*!< Bit 2 */ -#define ADC_SQR1_SQ28_3 ((uint32_t)0x00040000) /*!< Bit 3 */ -#define ADC_SQR1_SQ28_4 ((uint32_t)0x00080000) /*!< Bit 4 */ - -#define ADC_SQR1_SQ27 ((uint32_t)0x00007C00) /*!< SQ27[4:0] bits (27th conversion in regular sequence) */ -#define ADC_SQR1_SQ27_0 ((uint32_t)0x00000400) /*!< Bit 0 */ -#define ADC_SQR1_SQ27_1 ((uint32_t)0x00000800) /*!< Bit 1 */ -#define ADC_SQR1_SQ27_2 ((uint32_t)0x00001000) /*!< Bit 2 */ -#define ADC_SQR1_SQ27_3 ((uint32_t)0x00002000) /*!< Bit 3 */ -#define ADC_SQR1_SQ27_4 ((uint32_t)0x00004000) /*!< Bit 4 */ - -#define ADC_SQR1_SQ26 ((uint32_t)0x000003E0) /*!< SQ26[4:0] bits (26th conversion in regular sequence) */ -#define ADC_SQR1_SQ26_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define ADC_SQR1_SQ26_1 ((uint32_t)0x00000040) /*!< Bit 1 */ -#define ADC_SQR1_SQ26_2 ((uint32_t)0x00000080) /*!< Bit 2 */ -#define ADC_SQR1_SQ26_3 ((uint32_t)0x00000100) /*!< Bit 3 */ -#define ADC_SQR1_SQ26_4 ((uint32_t)0x00000200) /*!< Bit 4 */ - -#define ADC_SQR1_SQ25 ((uint32_t)0x0000001F) /*!< SQ25[4:0] bits (25th conversion in regular sequence) */ -#define ADC_SQR1_SQ25_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SQR1_SQ25_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SQR1_SQ25_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_SQR1_SQ25_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_SQR1_SQ25_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -/******************* Bit definition for ADC_SQR2 register *******************/ -#define ADC_SQR2_SQ19 ((uint32_t)0x0000001F) /*!< SQ19[4:0] bits (19th conversion in regular sequence) */ -#define ADC_SQR2_SQ19_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SQR2_SQ19_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SQR2_SQ19_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_SQR2_SQ19_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_SQR2_SQ19_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -#define ADC_SQR2_SQ20 ((uint32_t)0x000003E0) /*!< SQ20[4:0] bits (20th conversion in regular sequence) */ -#define ADC_SQR2_SQ20_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define ADC_SQR2_SQ20_1 ((uint32_t)0x00000040) /*!< Bit 1 */ -#define ADC_SQR2_SQ20_2 ((uint32_t)0x00000080) /*!< Bit 2 */ -#define ADC_SQR2_SQ20_3 ((uint32_t)0x00000100) /*!< Bit 3 */ -#define ADC_SQR2_SQ20_4 ((uint32_t)0x00000200) /*!< Bit 4 */ - -#define ADC_SQR2_SQ21 ((uint32_t)0x00007C00) /*!< SQ21[4:0] bits (21th conversion in regular sequence) */ -#define ADC_SQR2_SQ21_0 ((uint32_t)0x00000400) /*!< Bit 0 */ -#define ADC_SQR2_SQ21_1 ((uint32_t)0x00000800) /*!< Bit 1 */ -#define ADC_SQR2_SQ21_2 ((uint32_t)0x00001000) /*!< Bit 2 */ -#define ADC_SQR2_SQ21_3 ((uint32_t)0x00002000) /*!< Bit 3 */ -#define ADC_SQR2_SQ21_4 ((uint32_t)0x00004000) /*!< Bit 4 */ - -#define ADC_SQR2_SQ22 ((uint32_t)0x000F8000) /*!< SQ22[4:0] bits (22th conversion in regular sequence) */ -#define ADC_SQR2_SQ22_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SQR2_SQ22_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SQR2_SQ22_2 ((uint32_t)0x00020000) /*!< Bit 2 */ -#define ADC_SQR2_SQ22_3 ((uint32_t)0x00040000) /*!< Bit 3 */ -#define ADC_SQR2_SQ22_4 ((uint32_t)0x00080000) /*!< Bit 4 */ - -#define ADC_SQR2_SQ23 ((uint32_t)0x01F00000) /*!< SQ23[4:0] bits (23th conversion in regular sequence) */ -#define ADC_SQR2_SQ23_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_SQR2_SQ23_1 ((uint32_t)0x00200000) /*!< Bit 1 */ -#define ADC_SQR2_SQ23_2 ((uint32_t)0x00400000) /*!< Bit 2 */ -#define ADC_SQR2_SQ23_3 ((uint32_t)0x00800000) /*!< Bit 3 */ -#define ADC_SQR2_SQ23_4 ((uint32_t)0x01000000) /*!< Bit 4 */ - -#define ADC_SQR2_SQ24 ((uint32_t)0x3E000000) /*!< SQ24[4:0] bits (24th conversion in regular sequence) */ -#define ADC_SQR2_SQ24_0 ((uint32_t)0x02000000) /*!< Bit 0 */ -#define ADC_SQR2_SQ24_1 ((uint32_t)0x04000000) /*!< Bit 1 */ -#define ADC_SQR2_SQ24_2 ((uint32_t)0x08000000) /*!< Bit 2 */ -#define ADC_SQR2_SQ24_3 ((uint32_t)0x10000000) /*!< Bit 3 */ -#define ADC_SQR2_SQ24_4 ((uint32_t)0x20000000) /*!< Bit 4 */ - -/******************* Bit definition for ADC_SQR3 register *******************/ -#define ADC_SQR3_SQ13 ((uint32_t)0x0000001F) /*!< SQ13[4:0] bits (13th conversion in regular sequence) */ -#define ADC_SQR3_SQ13_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SQR3_SQ13_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SQR3_SQ13_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_SQR3_SQ13_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_SQR3_SQ13_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -#define ADC_SQR3_SQ14 ((uint32_t)0x000003E0) /*!< SQ14[4:0] bits (14th conversion in regular sequence) */ -#define ADC_SQR3_SQ14_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define ADC_SQR3_SQ14_1 ((uint32_t)0x00000040) /*!< Bit 1 */ -#define ADC_SQR3_SQ14_2 ((uint32_t)0x00000080) /*!< Bit 2 */ -#define ADC_SQR3_SQ14_3 ((uint32_t)0x00000100) /*!< Bit 3 */ -#define ADC_SQR3_SQ14_4 ((uint32_t)0x00000200) /*!< Bit 4 */ - -#define ADC_SQR3_SQ15 ((uint32_t)0x00007C00) /*!< SQ15[4:0] bits (15th conversion in regular sequence) */ -#define ADC_SQR3_SQ15_0 ((uint32_t)0x00000400) /*!< Bit 0 */ -#define ADC_SQR3_SQ15_1 ((uint32_t)0x00000800) /*!< Bit 1 */ -#define ADC_SQR3_SQ15_2 ((uint32_t)0x00001000) /*!< Bit 2 */ -#define ADC_SQR3_SQ15_3 ((uint32_t)0x00002000) /*!< Bit 3 */ -#define ADC_SQR3_SQ15_4 ((uint32_t)0x00004000) /*!< Bit 4 */ - -#define ADC_SQR3_SQ16 ((uint32_t)0x000F8000) /*!< SQ16[4:0] bits (16th conversion in regular sequence) */ -#define ADC_SQR3_SQ16_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SQR3_SQ16_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SQR3_SQ16_2 ((uint32_t)0x00020000) /*!< Bit 2 */ -#define ADC_SQR3_SQ16_3 ((uint32_t)0x00040000) /*!< Bit 3 */ -#define ADC_SQR3_SQ16_4 ((uint32_t)0x00080000) /*!< Bit 4 */ - -#define ADC_SQR3_SQ17 ((uint32_t)0x01F00000) /*!< SQ17[4:0] bits (17th conversion in regular sequence) */ -#define ADC_SQR3_SQ17_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_SQR3_SQ17_1 ((uint32_t)0x00200000) /*!< Bit 1 */ -#define ADC_SQR3_SQ17_2 ((uint32_t)0x00400000) /*!< Bit 2 */ -#define ADC_SQR3_SQ17_3 ((uint32_t)0x00800000) /*!< Bit 3 */ -#define ADC_SQR3_SQ17_4 ((uint32_t)0x01000000) /*!< Bit 4 */ - -#define ADC_SQR3_SQ18 ((uint32_t)0x3E000000) /*!< SQ18[4:0] bits (18th conversion in regular sequence) */ -#define ADC_SQR3_SQ18_0 ((uint32_t)0x02000000) /*!< Bit 0 */ -#define ADC_SQR3_SQ18_1 ((uint32_t)0x04000000) /*!< Bit 1 */ -#define ADC_SQR3_SQ18_2 ((uint32_t)0x08000000) /*!< Bit 2 */ -#define ADC_SQR3_SQ18_3 ((uint32_t)0x10000000) /*!< Bit 3 */ -#define ADC_SQR3_SQ18_4 ((uint32_t)0x20000000) /*!< Bit 4 */ - -/******************* Bit definition for ADC_SQR4 register *******************/ -#define ADC_SQR4_SQ7 ((uint32_t)0x0000001F) /*!< SQ7[4:0] bits (7th conversion in regular sequence) */ -#define ADC_SQR4_SQ7_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SQR4_SQ7_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SQR4_SQ7_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_SQR4_SQ7_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_SQR4_SQ7_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -#define ADC_SQR4_SQ8 ((uint32_t)0x000003E0) /*!< SQ8[4:0] bits (8th conversion in regular sequence) */ -#define ADC_SQR4_SQ8_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define ADC_SQR4_SQ8_1 ((uint32_t)0x00000040) /*!< Bit 1 */ -#define ADC_SQR4_SQ8_2 ((uint32_t)0x00000080) /*!< Bit 2 */ -#define ADC_SQR4_SQ8_3 ((uint32_t)0x00000100) /*!< Bit 3 */ -#define ADC_SQR4_SQ8_4 ((uint32_t)0x00000200) /*!< Bit 4 */ - -#define ADC_SQR4_SQ9 ((uint32_t)0x00007C00) /*!< SQ9[4:0] bits (9th conversion in regular sequence) */ -#define ADC_SQR4_SQ9_0 ((uint32_t)0x00000400) /*!< Bit 0 */ -#define ADC_SQR4_SQ9_1 ((uint32_t)0x00000800) /*!< Bit 1 */ -#define ADC_SQR4_SQ9_2 ((uint32_t)0x00001000) /*!< Bit 2 */ -#define ADC_SQR4_SQ9_3 ((uint32_t)0x00002000) /*!< Bit 3 */ -#define ADC_SQR4_SQ9_4 ((uint32_t)0x00004000) /*!< Bit 4 */ - -#define ADC_SQR4_SQ10 ((uint32_t)0x000F8000) /*!< SQ10[4:0] bits (10th conversion in regular sequence) */ -#define ADC_SQR4_SQ10_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SQR4_SQ10_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SQR4_SQ10_2 ((uint32_t)0x00020000) /*!< Bit 2 */ -#define ADC_SQR4_SQ10_3 ((uint32_t)0x00040000) /*!< Bit 3 */ -#define ADC_SQR4_SQ10_4 ((uint32_t)0x00080000) /*!< Bit 4 */ - -#define ADC_SQR4_SQ11 ((uint32_t)0x01F00000) /*!< SQ11[4:0] bits (11th conversion in regular sequence) */ -#define ADC_SQR4_SQ11_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_SQR4_SQ11_1 ((uint32_t)0x00200000) /*!< Bit 1 */ -#define ADC_SQR4_SQ11_2 ((uint32_t)0x00400000) /*!< Bit 2 */ -#define ADC_SQR4_SQ11_3 ((uint32_t)0x00800000) /*!< Bit 3 */ -#define ADC_SQR4_SQ11_4 ((uint32_t)0x01000000) /*!< Bit 4 */ - -#define ADC_SQR4_SQ12 ((uint32_t)0x3E000000) /*!< SQ12[4:0] bits (12th conversion in regular sequence) */ -#define ADC_SQR4_SQ12_0 ((uint32_t)0x02000000) /*!< Bit 0 */ -#define ADC_SQR4_SQ12_1 ((uint32_t)0x04000000) /*!< Bit 1 */ -#define ADC_SQR4_SQ12_2 ((uint32_t)0x08000000) /*!< Bit 2 */ -#define ADC_SQR4_SQ12_3 ((uint32_t)0x10000000) /*!< Bit 3 */ -#define ADC_SQR4_SQ12_4 ((uint32_t)0x20000000) /*!< Bit 4 */ - -/******************* Bit definition for ADC_SQR5 register *******************/ -#define ADC_SQR5_SQ1 ((uint32_t)0x0000001F) /*!< SQ1[4:0] bits (1st conversion in regular sequence) */ -#define ADC_SQR5_SQ1_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SQR5_SQ1_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SQR5_SQ1_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_SQR5_SQ1_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_SQR5_SQ1_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -#define ADC_SQR5_SQ2 ((uint32_t)0x000003E0) /*!< SQ2[4:0] bits (2nd conversion in regular sequence) */ -#define ADC_SQR5_SQ2_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define ADC_SQR5_SQ2_1 ((uint32_t)0x00000040) /*!< Bit 1 */ -#define ADC_SQR5_SQ2_2 ((uint32_t)0x00000080) /*!< Bit 2 */ -#define ADC_SQR5_SQ2_3 ((uint32_t)0x00000100) /*!< Bit 3 */ -#define ADC_SQR5_SQ2_4 ((uint32_t)0x00000200) /*!< Bit 4 */ - -#define ADC_SQR5_SQ3 ((uint32_t)0x00007C00) /*!< SQ3[4:0] bits (3rd conversion in regular sequence) */ -#define ADC_SQR5_SQ3_0 ((uint32_t)0x00000400) /*!< Bit 0 */ -#define ADC_SQR5_SQ3_1 ((uint32_t)0x00000800) /*!< Bit 1 */ -#define ADC_SQR5_SQ3_2 ((uint32_t)0x00001000) /*!< Bit 2 */ -#define ADC_SQR5_SQ3_3 ((uint32_t)0x00002000) /*!< Bit 3 */ -#define ADC_SQR5_SQ3_4 ((uint32_t)0x00004000) /*!< Bit 4 */ - -#define ADC_SQR5_SQ4 ((uint32_t)0x000F8000) /*!< SQ4[4:0] bits (4th conversion in regular sequence) */ -#define ADC_SQR5_SQ4_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SQR5_SQ4_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SQR5_SQ4_2 ((uint32_t)0x00020000) /*!< Bit 2 */ -#define ADC_SQR5_SQ4_3 ((uint32_t)0x00040000) /*!< Bit 3 */ -#define ADC_SQR5_SQ4_4 ((uint32_t)0x00080000) /*!< Bit 4 */ - -#define ADC_SQR5_SQ5 ((uint32_t)0x01F00000) /*!< SQ5[4:0] bits (5th conversion in regular sequence) */ -#define ADC_SQR5_SQ5_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_SQR5_SQ5_1 ((uint32_t)0x00200000) /*!< Bit 1 */ -#define ADC_SQR5_SQ5_2 ((uint32_t)0x00400000) /*!< Bit 2 */ -#define ADC_SQR5_SQ5_3 ((uint32_t)0x00800000) /*!< Bit 3 */ -#define ADC_SQR5_SQ5_4 ((uint32_t)0x01000000) /*!< Bit 4 */ - -#define ADC_SQR5_SQ6 ((uint32_t)0x3E000000) /*!< SQ6[4:0] bits (6th conversion in regular sequence) */ -#define ADC_SQR5_SQ6_0 ((uint32_t)0x02000000) /*!< Bit 0 */ -#define ADC_SQR5_SQ6_1 ((uint32_t)0x04000000) /*!< Bit 1 */ -#define ADC_SQR5_SQ6_2 ((uint32_t)0x08000000) /*!< Bit 2 */ -#define ADC_SQR5_SQ6_3 ((uint32_t)0x10000000) /*!< Bit 3 */ -#define ADC_SQR5_SQ6_4 ((uint32_t)0x20000000) /*!< Bit 4 */ - - -/******************* Bit definition for ADC_JSQR register *******************/ -#define ADC_JSQR_JSQ1 ((uint32_t)0x0000001F) /*!< JSQ1[4:0] bits (1st conversion in injected sequence) */ -#define ADC_JSQR_JSQ1_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_JSQR_JSQ1_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_JSQR_JSQ1_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_JSQR_JSQ1_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_JSQR_JSQ1_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -#define ADC_JSQR_JSQ2 ((uint32_t)0x000003E0) /*!< JSQ2[4:0] bits (2nd conversion in injected sequence) */ -#define ADC_JSQR_JSQ2_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define ADC_JSQR_JSQ2_1 ((uint32_t)0x00000040) /*!< Bit 1 */ -#define ADC_JSQR_JSQ2_2 ((uint32_t)0x00000080) /*!< Bit 2 */ -#define ADC_JSQR_JSQ2_3 ((uint32_t)0x00000100) /*!< Bit 3 */ -#define ADC_JSQR_JSQ2_4 ((uint32_t)0x00000200) /*!< Bit 4 */ - -#define ADC_JSQR_JSQ3 ((uint32_t)0x00007C00) /*!< JSQ3[4:0] bits (3rd conversion in injected sequence) */ -#define ADC_JSQR_JSQ3_0 ((uint32_t)0x00000400) /*!< Bit 0 */ -#define ADC_JSQR_JSQ3_1 ((uint32_t)0x00000800) /*!< Bit 1 */ -#define ADC_JSQR_JSQ3_2 ((uint32_t)0x00001000) /*!< Bit 2 */ -#define ADC_JSQR_JSQ3_3 ((uint32_t)0x00002000) /*!< Bit 3 */ -#define ADC_JSQR_JSQ3_4 ((uint32_t)0x00004000) /*!< Bit 4 */ - -#define ADC_JSQR_JSQ4 ((uint32_t)0x000F8000) /*!< JSQ4[4:0] bits (4th conversion in injected sequence) */ -#define ADC_JSQR_JSQ4_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_JSQR_JSQ4_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_JSQR_JSQ4_2 ((uint32_t)0x00020000) /*!< Bit 2 */ -#define ADC_JSQR_JSQ4_3 ((uint32_t)0x00040000) /*!< Bit 3 */ -#define ADC_JSQR_JSQ4_4 ((uint32_t)0x00080000) /*!< Bit 4 */ - -#define ADC_JSQR_JL ((uint32_t)0x00300000) /*!< JL[1:0] bits (Injected Sequence length) */ -#define ADC_JSQR_JL_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_JSQR_JL_1 ((uint32_t)0x00200000) /*!< Bit 1 */ - -/******************* Bit definition for ADC_JDR1 register *******************/ -#define ADC_JDR1_JDATA ((uint32_t)0x0000FFFF) /*!< Injected data */ - -/******************* Bit definition for ADC_JDR2 register *******************/ -#define ADC_JDR2_JDATA ((uint32_t)0x0000FFFF) /*!< Injected data */ - -/******************* Bit definition for ADC_JDR3 register *******************/ -#define ADC_JDR3_JDATA ((uint32_t)0x0000FFFF) /*!< Injected data */ - -/******************* Bit definition for ADC_JDR4 register *******************/ -#define ADC_JDR4_JDATA ((uint32_t)0x0000FFFF) /*!< Injected data */ - -/******************** Bit definition for ADC_DR register ********************/ -#define ADC_DR_DATA ((uint32_t)0x0000FFFF) /*!< Regular data */ - -/****************** Bit definition for ADC_SMPR0 register *******************/ -#define ADC_SMPR3_SMP30 ((uint32_t)0x00000007) /*!< SMP30[2:0] bits (Channel 30 Sample time selection) */ -#define ADC_SMPR3_SMP30_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SMPR3_SMP30_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SMPR3_SMP30_2 ((uint32_t)0x00000004) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP31 ((uint32_t)0x00000038) /*!< SMP31[2:0] bits (Channel 31 Sample time selection) */ -#define ADC_SMPR3_SMP31_0 ((uint32_t)0x00000008) /*!< Bit 0 */ -#define ADC_SMPR3_SMP31_1 ((uint32_t)0x00000010) /*!< Bit 1 */ -#define ADC_SMPR3_SMP31_2 ((uint32_t)0x00000020) /*!< Bit 2 */ - -/******************* Bit definition for ADC_CSR register ********************/ -#define ADC_CSR_AWD1 ((uint32_t)0x00000001) /*!< ADC1 Analog watchdog flag */ -#define ADC_CSR_EOC1 ((uint32_t)0x00000002) /*!< ADC1 End of conversion */ -#define ADC_CSR_JEOC1 ((uint32_t)0x00000004) /*!< ADC1 Injected channel end of conversion */ -#define ADC_CSR_JSTRT1 ((uint32_t)0x00000008) /*!< ADC1 Injected channel Start flag */ -#define ADC_CSR_STRT1 ((uint32_t)0x00000010) /*!< ADC1 Regular channel Start flag */ -#define ADC_CSR_OVR1 ((uint32_t)0x00000020) /*!< ADC1 overrun flag */ -#define ADC_CSR_ADONS1 ((uint32_t)0x00000040) /*!< ADON status of ADC1 */ - -/******************* Bit definition for ADC_CCR register ********************/ -#define ADC_CCR_ADCPRE ((uint32_t)0x00030000) /*!< ADC prescaler*/ -#define ADC_CCR_ADCPRE_0 ((uint32_t)0x00010000) /*!< Bit 0 */ -#define ADC_CCR_ADCPRE_1 ((uint32_t)0x00020000) /*!< Bit 1 */ -#define ADC_CCR_TSVREFE ((uint32_t)0x00800000) /*!< Temperature Sensor and VREFINT Enable */ - -/******************************************************************************/ -/* */ -/* Advanced Encryption Standard (AES) */ -/* */ -/******************************************************************************/ -/******************* Bit definition for AES_CR register *********************/ -#define AES_CR_EN ((uint32_t)0x00000001) /*!< AES Enable */ -#define AES_CR_DATATYPE ((uint32_t)0x00000006) /*!< Data type selection */ -#define AES_CR_DATATYPE_0 ((uint32_t)0x00000002) /*!< Bit 0 */ -#define AES_CR_DATATYPE_1 ((uint32_t)0x00000004) /*!< Bit 1 */ - -#define AES_CR_MODE ((uint32_t)0x00000018) /*!< AES Mode Of Operation */ -#define AES_CR_MODE_0 ((uint32_t)0x00000008) /*!< Bit 0 */ -#define AES_CR_MODE_1 ((uint32_t)0x00000010) /*!< Bit 1 */ - -#define AES_CR_CHMOD ((uint32_t)0x00000060) /*!< AES Chaining Mode */ -#define AES_CR_CHMOD_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define AES_CR_CHMOD_1 ((uint32_t)0x00000040) /*!< Bit 1 */ - -#define AES_CR_CCFC ((uint32_t)0x00000080) /*!< Computation Complete Flag Clear */ -#define AES_CR_ERRC ((uint32_t)0x00000100) /*!< Error Clear */ -#define AES_CR_CCIE ((uint32_t)0x00000200) /*!< Computation Complete Interrupt Enable */ -#define AES_CR_ERRIE ((uint32_t)0x00000400) /*!< Error Interrupt Enable */ -#define AES_CR_DMAINEN ((uint32_t)0x00000800) /*!< DMA ENable managing the data input phase */ -#define AES_CR_DMAOUTEN ((uint32_t)0x00001000) /*!< DMA Enable managing the data output phase */ - -/******************* Bit definition for AES_SR register *********************/ -#define AES_SR_CCF ((uint32_t)0x00000001) /*!< Computation Complete Flag */ -#define AES_SR_RDERR ((uint32_t)0x00000002) /*!< Read Error Flag */ -#define AES_SR_WRERR ((uint32_t)0x00000004) /*!< Write Error Flag */ - -/******************* Bit definition for AES_DINR register *******************/ -#define AES_DINR ((uint32_t)0x0000FFFF) /*!< AES Data Input Register */ - -/******************* Bit definition for AES_DOUTR register ******************/ -#define AES_DOUTR ((uint32_t)0x0000FFFF) /*!< AES Data Output Register */ - -/******************* Bit definition for AES_KEYR0 register ******************/ -#define AES_KEYR0 ((uint32_t)0x0000FFFF) /*!< AES Key Register 0 */ - -/******************* Bit definition for AES_KEYR1 register ******************/ -#define AES_KEYR1 ((uint32_t)0x0000FFFF) /*!< AES Key Register 1 */ - -/******************* Bit definition for AES_KEYR2 register ******************/ -#define AES_KEYR2 ((uint32_t)0x0000FFFF) /*!< AES Key Register 2 */ - -/******************* Bit definition for AES_KEYR3 register ******************/ -#define AES_KEYR3 ((uint32_t)0x0000FFFF) /*!< AES Key Register 3 */ - -/******************* Bit definition for AES_IVR0 register *******************/ -#define AES_IVR0 ((uint32_t)0x0000FFFF) /*!< AES Initialization Vector Register 0 */ - -/******************* Bit definition for AES_IVR1 register *******************/ -#define AES_IVR1 ((uint32_t)0x0000FFFF) /*!< AES Initialization Vector Register 1 */ - -/******************* Bit definition for AES_IVR2 register *******************/ -#define AES_IVR2 ((uint32_t)0x0000FFFF) /*!< AES Initialization Vector Register 2 */ - -/******************* Bit definition for AES_IVR3 register *******************/ -#define AES_IVR3 ((uint32_t)0x0000FFFF) /*!< AES Initialization Vector Register 3 */ - -/******************************************************************************/ -/* */ -/* Analog Comparators (COMP) */ -/* */ -/******************************************************************************/ - -/****************** Bit definition for COMP_CSR register ********************/ -#define COMP_CSR_10KPU ((uint32_t)0x00000001) /*!< 10K pull-up resistor */ -#define COMP_CSR_400KPU ((uint32_t)0x00000002) /*!< 400K pull-up resistor */ -#define COMP_CSR_10KPD ((uint32_t)0x00000004) /*!< 10K pull-down resistor */ -#define COMP_CSR_400KPD ((uint32_t)0x00000008) /*!< 400K pull-down resistor */ - -#define COMP_CSR_CMP1EN ((uint32_t)0x00000010) /*!< Comparator 1 enable */ -#define COMP_CSR_SW1 ((uint32_t)0x00000020) /*!< SW1 analog switch enable */ -#define COMP_CSR_CMP1OUT ((uint32_t)0x00000080) /*!< Comparator 1 output */ - -#define COMP_CSR_SPEED ((uint32_t)0x00001000) /*!< Comparator 2 speed */ -#define COMP_CSR_CMP2OUT ((uint32_t)0x00002000) /*!< Comparator 2 ouput */ - -#define COMP_CSR_VREFOUTEN ((uint32_t)0x00010000) /*!< Comparator Vref Enable */ -#define COMP_CSR_WNDWE ((uint32_t)0x00020000) /*!< Window mode enable */ - -#define COMP_CSR_INSEL ((uint32_t)0x001C0000) /*!< INSEL[2:0] Inversion input Selection */ -#define COMP_CSR_INSEL_0 ((uint32_t)0x00040000) /*!< Bit 0 */ -#define COMP_CSR_INSEL_1 ((uint32_t)0x00080000) /*!< Bit 1 */ -#define COMP_CSR_INSEL_2 ((uint32_t)0x00100000) /*!< Bit 2 */ - -#define COMP_CSR_OUTSEL ((uint32_t)0x00E00000) /*!< OUTSEL[2:0] comparator 2 output redirection */ -#define COMP_CSR_OUTSEL_0 ((uint32_t)0x00200000) /*!< Bit 0 */ -#define COMP_CSR_OUTSEL_1 ((uint32_t)0x00400000) /*!< Bit 1 */ -#define COMP_CSR_OUTSEL_2 ((uint32_t)0x00800000) /*!< Bit 2 */ - -#define COMP_CSR_FCH3 ((uint32_t)0x04000000) /*!< Bit 26 */ -#define COMP_CSR_FCH8 ((uint32_t)0x08000000) /*!< Bit 27 */ -#define COMP_CSR_RCH13 ((uint32_t)0x10000000) /*!< Bit 28 */ - -#define COMP_CSR_CAIE ((uint32_t)0x20000000) /*!< Bit 29 */ -#define COMP_CSR_CAIF ((uint32_t)0x40000000) /*!< Bit 30 */ -#define COMP_CSR_TSUSP ((uint32_t)0x80000000) /*!< Bit 31 */ - -/******************************************************************************/ -/* */ -/* Operational Amplifier (OPAMP) */ -/* */ -/******************************************************************************/ -/******************* Bit definition for OPAMP_CSR register ******************/ -#define OPAMP_CSR_OPA1PD ((uint32_t)0x00000001) /*!< OPAMP1 disable */ -#define OPAMP_CSR_S3SEL1 ((uint32_t)0x00000002) /*!< Switch 3 for OPAMP1 Enable */ -#define OPAMP_CSR_S4SEL1 ((uint32_t)0x00000004) /*!< Switch 4 for OPAMP1 Enable */ -#define OPAMP_CSR_S5SEL1 ((uint32_t)0x00000008) /*!< Switch 5 for OPAMP1 Enable */ -#define OPAMP_CSR_S6SEL1 ((uint32_t)0x00000010) /*!< Switch 6 for OPAMP1 Enable */ -#define OPAMP_CSR_OPA1CAL_L ((uint32_t)0x00000020) /*!< OPAMP1 Offset calibration for P differential pair */ -#define OPAMP_CSR_OPA1CAL_H ((uint32_t)0x00000040) /*!< OPAMP1 Offset calibration for N differential pair */ -#define OPAMP_CSR_OPA1LPM ((uint32_t)0x00000080) /*!< OPAMP1 Low power enable */ -#define OPAMP_CSR_OPA2PD ((uint32_t)0x00000100) /*!< OPAMP2 disable */ -#define OPAMP_CSR_S3SEL2 ((uint32_t)0x00000200) /*!< Switch 3 for OPAMP2 Enable */ -#define OPAMP_CSR_S4SEL2 ((uint32_t)0x00000400) /*!< Switch 4 for OPAMP2 Enable */ -#define OPAMP_CSR_S5SEL2 ((uint32_t)0x00000800) /*!< Switch 5 for OPAMP2 Enable */ -#define OPAMP_CSR_S6SEL2 ((uint32_t)0x00001000) /*!< Switch 6 for OPAMP2 Enable */ -#define OPAMP_CSR_OPA2CAL_L ((uint32_t)0x00002000) /*!< OPAMP2 Offset calibration for P differential pair */ -#define OPAMP_CSR_OPA2CAL_H ((uint32_t)0x00004000) /*!< OPAMP2 Offset calibration for N differential pair */ -#define OPAMP_CSR_OPA2LPM ((uint32_t)0x00008000) /*!< OPAMP2 Low power enable */ -#define OPAMP_CSR_OPA3PD ((uint32_t)0x00010000) /*!< OPAMP3 disable */ -#define OPAMP_CSR_S3SEL3 ((uint32_t)0x00020000) /*!< Switch 3 for OPAMP3 Enable */ -#define OPAMP_CSR_S4SEL3 ((uint32_t)0x00040000) /*!< Switch 4 for OPAMP3 Enable */ -#define OPAMP_CSR_S5SEL3 ((uint32_t)0x00080000) /*!< Switch 5 for OPAMP3 Enable */ -#define OPAMP_CSR_S6SEL3 ((uint32_t)0x00100000) /*!< Switch 6 for OPAMP3 Enable */ -#define OPAMP_CSR_OPA3CAL_L ((uint32_t)0x00200000) /*!< OPAMP3 Offset calibration for P differential pair */ -#define OPAMP_CSR_OPA3CAL_H ((uint32_t)0x00400000) /*!< OPAMP3 Offset calibration for N differential pair */ -#define OPAMP_CSR_OPA3LPM ((uint32_t)0x00800000) /*!< OPAMP3 Low power enable */ -#define OPAMP_CSR_ANAWSEL1 ((uint32_t)0x01000000) /*!< Switch ANA Enable for OPAMP1 */ -#define OPAMP_CSR_ANAWSEL2 ((uint32_t)0x02000000) /*!< Switch ANA Enable for OPAMP2 */ -#define OPAMP_CSR_ANAWSEL3 ((uint32_t)0x04000000) /*!< Switch ANA Enable for OPAMP3 */ -#define OPAMP_CSR_S7SEL2 ((uint32_t)0x08000000) /*!< Switch 7 for OPAMP2 Enable */ -#define OPAMP_CSR_AOP_RANGE ((uint32_t)0x10000000) /*!< Power range selection */ -#define OPAMP_CSR_OPA1CALOUT ((uint32_t)0x20000000) /*!< OPAMP1 calibration output */ -#define OPAMP_CSR_OPA2CALOUT ((uint32_t)0x40000000) /*!< OPAMP2 calibration output */ -#define OPAMP_CSR_OPA3CALOUT ((uint32_t)0x80000000) /*!< OPAMP3 calibration output */ - -/******************* Bit definition for OPAMP_OTR register ******************/ -#define OPAMP_OTR_AO1_OPT_OFFSET_TRIM ((uint32_t)0x000003FF) /*!< Offset trim for OPAMP1 */ -#define OPAMP_OTR_AO2_OPT_OFFSET_TRIM ((uint32_t)0x000FFC00) /*!< Offset trim for OPAMP2 */ -#define OPAMP_OTR_AO3_OPT_OFFSET_TRIM ((uint32_t)0x3FF00000) /*!< Offset trim for OPAMP2 */ -#define OPAMP_OTR_OT_USER ((uint32_t)0x80000000) /*!< Switch to OPAMP offset user trimmed values */ - -/******************* Bit definition for OPAMP_LPOTR register ****************/ -#define OPAMP_LP_OTR_AO1_OPT_OFFSET_TRIM_LP ((uint32_t)0x000003FF) /*!< Offset trim in low power for OPAMP1 */ -#define OPAMP_LP_OTR_AO2_OPT_OFFSET_TRIM_LP ((uint32_t)0x000FFC00) /*!< Offset trim in low power for OPAMP2 */ -#define OPAMP_LP_OTR_AO3_OPT_OFFSET_TRIM_LP ((uint32_t)0x3FF00000) /*!< Offset trim in low power for OPAMP3 */ - -/******************************************************************************/ -/* */ -/* CRC calculation unit (CRC) */ -/* */ -/******************************************************************************/ - -/******************* Bit definition for CRC_DR register *********************/ -#define CRC_DR_DR ((uint32_t)0xFFFFFFFF) /*!< Data register bits */ - -/******************* Bit definition for CRC_IDR register ********************/ -#define CRC_IDR_IDR ((uint8_t)0xFF) /*!< General-purpose 8-bit data register bits */ - -/******************** Bit definition for CRC_CR register ********************/ -#define CRC_CR_RESET ((uint32_t)0x00000001) /*!< RESET bit */ - -/******************************************************************************/ -/* */ -/* Digital to Analog Converter (DAC) */ -/* */ -/******************************************************************************/ - -/******************** Bit definition for DAC_CR register ********************/ -#define DAC_CR_EN1 ((uint32_t)0x00000001) /*!
© COPYRIGHT 2012 STMicroelectronics
- * - * Licensed under MCD-ST Liberty SW License Agreement V2, (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.st.com/software_license_agreement_liberty_v2 - * - * 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. - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32L1xx_CONF_H -#define __STM32L1xx_CONF_H - -/* Includes ------------------------------------------------------------------*/ -/* Uncomment/Comment the line below to enable/disable peripheral header file inclusion */ -#include "stm32l1xx_adc.h" -#include "stm32l1xx_aes.h" -#include "stm32l1xx_comp.h" -#include "stm32l1xx_crc.h" -#include "stm32l1xx_dac.h" -#include "stm32l1xx_dbgmcu.h" -#include "stm32l1xx_dma.h" -#include "stm32l1xx_exti.h" -#include "stm32l1xx_flash.h" -#include "stm32l1xx_fsmc.h" -#include "stm32l1xx_gpio.h" -#include "stm32l1xx_i2c.h" -#include "stm32l1xx_iwdg.h" -#include "stm32l1xx_lcd.h" -#include "stm32l1xx_opamp.h" -#include "stm32l1xx_pwr.h" -#include "stm32l1xx_rcc.h" -#include "stm32l1xx_rtc.h" -#include "stm32l1xx_sdio.h" -#include "stm32l1xx_spi.h" -#include "stm32l1xx_syscfg.h" -#include "stm32l1xx_tim.h" -#include "stm32l1xx_usart.h" -#include "stm32l1xx_wwdg.h" -#include "misc.h" /* High level functions for NVIC and SysTick (add-on to CMSIS functions) */ - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Uncomment the line below to expanse the "assert_param" macro in the - Standard Peripheral Library drivers code */ -/* #define USE_FULL_ASSERT 1 */ - -/* 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)0 : assert_failed((uint8_t *)__FILE__, __LINE__)) -/* Exported functions ------------------------------------------------------- */ - void assert_failed(uint8_t* file, uint32_t line); -#else - #define assert_param(expr) ((void)0) -#endif /* USE_FULL_ASSERT */ - -#endif /* __STM32L1xx_CONF_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/src/boards/Bleeper-72/cmsis/system_stm32l1xx.c b/src/boards/Bleeper-72/cmsis/system_stm32l1xx.c deleted file mode 100644 index 4181a7436..000000000 --- a/src/boards/Bleeper-72/cmsis/system_stm32l1xx.c +++ /dev/null @@ -1,394 +0,0 @@ -/** - ****************************************************************************** - * @file system_stm32l1xx.c - * @author MCD Application Team - * @version V1.2.0 - * @date 27-August-2013 - * @brief CMSIS Cortex-M3 Device Peripheral Access Layer System Source File. - * This file contains the system clock configuration for STM32L1xx Ultra - * Low power devices, and is generated by the clock configuration - * tool STM32L1xx_Clock_Configuration_V1.2.0.xls - * - * 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 - * and Divider factors, AHB/APBx prescalers and Flash settings), - * depending on the configuration made in the clock xls tool. - * This function is called at startup just after reset and - * before branch to main program. This call is made inside - * the "startup_stm32l1xx_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 MSI (2.1 MHz Range) is used as system clock source. - * Then SystemInit() function is called, in "startup_stm32l1xx_xx.s" file, to - * configure the system clock before to branch to main program. - * - * 3. If the system clock source selected by user fails to startup, the SystemInit() - * function will do nothing and MSI still used as system clock source. User can - * add some code to deal with this issue inside the SetSysClock() function. - * - * 4. The default value of HSE crystal is set to 8MHz, refer to "HSE_VALUE" define - * in "stm32l1xx.h" file. 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. - * - * 5. This file configures the system clock as follows: - *============================================================================= - * System Clock Configuration - *============================================================================= - * System Clock source | PLL(HSE) - *----------------------------------------------------------------------------- - * SYSCLK | 32000000 Hz - *----------------------------------------------------------------------------- - * HCLK | 32000000 Hz - *----------------------------------------------------------------------------- - * AHB Prescaler | 1 - *----------------------------------------------------------------------------- - * APB1 Prescaler | 1 - *----------------------------------------------------------------------------- - * APB2 Prescaler | 1 - *----------------------------------------------------------------------------- - * HSE Frequency | 12000000 Hz - *----------------------------------------------------------------------------- - * PLL DIV | 3 - *----------------------------------------------------------------------------- - * PLL MUL | 8 - *----------------------------------------------------------------------------- - * VDD | 3.3 V - *----------------------------------------------------------------------------- - * Vcore | 1.8 V (Range 1) - *----------------------------------------------------------------------------- - * Flash Latency | 1 WS - *----------------------------------------------------------------------------- - * Require 48MHz for USB clock | Enabled - *----------------------------------------------------------------------------- - *============================================================================= - * @attention - * - *

© COPYRIGHT 2013 STMicroelectronics

- * - * Licensed under MCD-ST Liberty SW License Agreement V2, (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.st.com/software_license_agreement_liberty_v2 - * - * 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. - * - ****************************************************************************** - */ - -/** @addtogroup CMSIS - * @{ - */ - -/** @addtogroup stm32l1xx_system - * @{ - */ - -/** @addtogroup STM32L1xx_System_Private_Includes - * @{ - */ - -#include "stm32l1xx.h" - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Private_TypesDefinitions - * @{ - */ - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Private_Defines - * @{ - */ - -/*!< Uncomment the following line if you need to relocate your vector Table in - Internal SRAM. */ -/* #define VECT_TAB_SRAM */ -#define VECT_TAB_OFFSET 0x0 /*!< Vector Table base offset field. - This value must be a multiple of 0x200. */ -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Private_Macros - * @{ - */ - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Private_Variables - * @{ - */ -uint32_t SystemCoreClock = 32000000; -__I uint8_t PLLMulTable[9] = {3, 4, 6, 8, 12, 16, 24, 32, 48}; -__I uint8_t AHBPrescTable[16] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 7, 8, 9}; - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Private_FunctionPrototypes - * @{ - */ - -static void SetSysClock(void); - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Private_Functions - * @{ - */ - -/** - * @brief Setup the microcontroller system. - * Initialize the Embedded Flash Interface, the PLL and update the - * SystemCoreClock variable. - * @param None - * @retval None - */ -void SystemInit (void) -{ - /*!< Set MSION bit */ - RCC->CR |= (uint32_t)0x00000100; - - /*!< Reset SW[1:0], HPRE[3:0], PPRE1[2:0], PPRE2[2:0], MCOSEL[2:0] and MCOPRE[2:0] bits */ - RCC->CFGR &= (uint32_t)0x88FFC00C; - - /*!< Reset HSION, HSEON, CSSON and PLLON bits */ - RCC->CR &= (uint32_t)0xEEFEFFFE; - - /*!< Reset HSEBYP bit */ - RCC->CR &= (uint32_t)0xFFFBFFFF; - - /*!< Reset PLLSRC, PLLMUL[3:0] and PLLDIV[1:0] bits */ - RCC->CFGR &= (uint32_t)0xFF02FFFF; - - /*!< Disable all interrupts */ - RCC->CIR = 0x00000000; - - /* Configure the System clock frequency, AHB/APBx prescalers and Flash settings */ - SetSysClock(); - -#ifdef VECT_TAB_SRAM - SCB->VTOR = SRAM_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM. */ -#else - SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal FLASH. */ -#endif -} - -/** - * @brief Update SystemCoreClock 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 MSI, SystemCoreClock will contain the MSI - * value as defined by the MSI range. - * - * - 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/divided by the PLL factors. - * - * (*) HSI_VALUE is a constant defined in stm32l1xx.h file (default value - * 16 MHz) but the real value may vary depending on the variations - * in voltage and temperature. - * - * (**) HSE_VALUE is a constant defined in stm32l1xx.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. - * - * - 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 = 0, pllmul = 0, plldiv = 0, pllsource = 0, msirange = 0; - - /* Get SYSCLK source -------------------------------------------------------*/ - tmp = RCC->CFGR & RCC_CFGR_SWS; - - switch (tmp) - { - case 0x00: /* MSI used as system clock */ - msirange = (RCC->ICSCR & RCC_ICSCR_MSIRANGE) >> 13; - SystemCoreClock = (32768 * (1 << (msirange + 1))); - break; - case 0x04: /* HSI used as system clock */ - SystemCoreClock = HSI_VALUE; - break; - case 0x08: /* HSE used as system clock */ - SystemCoreClock = HSE_VALUE; - break; - case 0x0C: /* PLL used as system clock */ - /* Get PLL clock source and multiplication factor ----------------------*/ - pllmul = RCC->CFGR & RCC_CFGR_PLLMUL; - plldiv = RCC->CFGR & RCC_CFGR_PLLDIV; - pllmul = PLLMulTable[(pllmul >> 18)]; - plldiv = (plldiv >> 22) + 1; - - pllsource = RCC->CFGR & RCC_CFGR_PLLSRC; - - if (pllsource == 0x00) - { - /* HSI oscillator clock selected as PLL clock entry */ - SystemCoreClock = (((HSI_VALUE) * pllmul) / plldiv); - } - else - { - /* HSE selected as PLL clock entry */ - SystemCoreClock = (((HSE_VALUE) * pllmul) / plldiv); - } - break; - default: /* MSI used as system clock */ - msirange = (RCC->ICSCR & RCC_ICSCR_MSIRANGE) >> 13; - SystemCoreClock = (32768 * (1 << (msirange + 1))); - break; - } - /* Compute HCLK clock frequency --------------------------------------------*/ - /* Get HCLK prescaler */ - tmp = AHBPrescTable[((RCC->CFGR & RCC_CFGR_HPRE) >> 4)]; - /* HCLK clock frequency */ - SystemCoreClock >>= tmp; -} - -/** - * @brief Configures the System clock frequency, AHB/APBx prescalers and Flash - * settings. - * @note This function should be called only once the RCC clock configuration - * is reset to the default reset state (done in SystemInit() function). - * @param None - * @retval None - */ -static void SetSysClock(void) -{ - __IO uint32_t StartUpCounter = 0, HSEStatus = 0; - - /* SYSCLK, HCLK, PCLK2 and PCLK1 configuration ---------------------------*/ - /* Enable HSE */ - RCC->CR |= ((uint32_t)RCC_CR_HSEON); - - /* Wait till HSE is ready and if Time out is reached exit */ - do - { - HSEStatus = RCC->CR & RCC_CR_HSERDY; - StartUpCounter++; - } while((HSEStatus == 0) && (StartUpCounter != HSE_STARTUP_TIMEOUT)); - - if ((RCC->CR & RCC_CR_HSERDY) != RESET) - { - HSEStatus = (uint32_t)0x01; - } - else - { - HSEStatus = (uint32_t)0x00; - } - - if (HSEStatus == (uint32_t)0x01) - { - /* Enable 64-bit access */ - FLASH->ACR |= FLASH_ACR_ACC64; - - /* Enable Prefetch Buffer */ - FLASH->ACR |= FLASH_ACR_PRFTEN; - - /* Flash 1 wait state */ - FLASH->ACR |= FLASH_ACR_LATENCY; - - /* Power enable */ - RCC->APB1ENR |= RCC_APB1ENR_PWREN; - - /* Select the Voltage Range 1 (1.8 V) */ - PWR->CR = PWR_CR_VOS_0; - - /* Wait Until the Voltage Regulator is ready */ - while((PWR->CSR & PWR_CSR_VOSF) != RESET) - { - } - - /* HCLK = SYSCLK /1*/ - RCC->CFGR |= (uint32_t)RCC_CFGR_HPRE_DIV1; - - /* PCLK2 = HCLK /1*/ - RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE2_DIV1; - - /* PCLK1 = HCLK /1*/ - RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE1_DIV1; - - /* PLL configuration */ - RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLMUL | - RCC_CFGR_PLLDIV)); - RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMUL8 | RCC_CFGR_PLLDIV3); - - /* Enable PLL */ - RCC->CR |= RCC_CR_PLLON; - - /* Wait till PLL is ready */ - while((RCC->CR & RCC_CR_PLLRDY) == 0) - { - } - - /* Select PLL as system clock source */ - RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_SW)); - RCC->CFGR |= (uint32_t)RCC_CFGR_SW_PLL; - - /* Wait till PLL is used as system clock source */ - while ((RCC->CFGR & (uint32_t)RCC_CFGR_SWS) != (uint32_t)RCC_CFGR_SWS_PLL) - { - } - } - else - { - /* If HSE fails to start-up, the application will have wrong clock - configuration. User can add here some code to deal with this error */ - } -} - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -/******************* (C) COPYRIGHT 2013 STMicroelectronics *****END OF FILE****/ diff --git a/src/boards/Bleeper-72/cmsis/system_stm32l1xx.h b/src/boards/Bleeper-72/cmsis/system_stm32l1xx.h deleted file mode 100644 index 25ad24096..000000000 --- a/src/boards/Bleeper-72/cmsis/system_stm32l1xx.h +++ /dev/null @@ -1,104 +0,0 @@ -/** - ****************************************************************************** - * @file system_stm32l1xx.h - * @author MCD Application Team - * @version V1.2.0 - * @date 22-February-2013 - * @brief CMSIS Cortex-M3 Device Peripheral Access Layer System Header File. - ****************************************************************************** - * @attention - * - *

© COPYRIGHT 2013 STMicroelectronics

- * - * Licensed under MCD-ST Liberty SW License Agreement V2, (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.st.com/software_license_agreement_liberty_v2 - * - * 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. - * - ****************************************************************************** - */ - -/** @addtogroup CMSIS - * @{ - */ - -/** @addtogroup stm32l1xx_system - * @{ - */ - -/** - * @brief Define to prevent recursive inclusion - */ -#ifndef __SYSTEM_STM32L1XX_H -#define __SYSTEM_STM32L1XX_H - -#ifdef __cplusplus - extern "C" { -#endif - -/** @addtogroup STM32L1xx_System_Includes - * @{ - */ - -/** - * @} - */ - - -/** @addtogroup STM32L1xx_System_Exported_types - * @{ - */ - -extern uint32_t SystemCoreClock; /*!< System Clock Frequency (Core Clock) */ - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Exported_Constants - * @{ - */ - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Exported_Macros - * @{ - */ - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Exported_Functions - * @{ - */ - -extern void SystemInit(void); -extern void SystemCoreClockUpdate(void); -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /*__SYSTEM_STM32L1XX_H */ - -/** - * @} - */ - -/** - * @} - */ -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/src/boards/Bleeper-72/gpio-board.c b/src/boards/Bleeper-72/gpio-board.c deleted file mode 100644 index 7121671ec..000000000 --- a/src/boards/Bleeper-72/gpio-board.c +++ /dev/null @@ -1,406 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper board GPIO driver implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include "board.h" -#include "gpio-board.h" -#include "stm32l1xx_gpio.h" - -static GpioIrqHandler *GpioIrq[16]; - -void GpioMcuInit( Gpio_t *obj, PinNames pin, PinModes mode, PinConfigs config, PinTypes type, uint32_t value ) -{ - GPIO_InitTypeDef GPIO_InitStructure; - - if( pin == NC ) - { - return; - } - - obj->portIndex = ( uint32_t ) pin >> 4; - - obj->pin = pin; - obj->pinIndex = ( 0x01 << ( obj->pin & 0x0F ) ); - - if( obj->portIndex < 6 ) - { - obj->port = ( GPIO_TypeDef * )( GPIOA_BASE + ( obj->portIndex << 10 ) ); - RCC_AHBPeriphClockCmd( ( 0x01 << obj->portIndex ), ENABLE ); - } - else if( obj->portIndex == 6 ) - { /* GPIO base address not in alphabetical order after GPIOE (cf stm32l1xx.h, line 926 ) */ - /* Access to GPIOF and GPIOG not implemented */ - obj->port = ( GPIO_TypeDef * )( GPIOH_BASE ); - RCC_AHBPeriphClockCmd( ( 0x01 << ( obj->portIndex - 1 ) ), ENABLE ); - } - - // Sets initial output value - if( mode == PIN_OUTPUT ) - { - GpioMcuWrite( obj, value ); - } - - GPIO_InitStructure.GPIO_Mode = ( GPIOMode_TypeDef )mode; - GPIO_InitStructure.GPIO_OType = ( GPIOOType_TypeDef )config; - GPIO_InitStructure.GPIO_PuPd = ( GPIOPuPd_TypeDef )type; - GPIO_InitStructure.GPIO_Speed = GPIO_Speed_40MHz; - GPIO_InitStructure.GPIO_Pin = obj->pinIndex; - GPIO_Init( obj->port, &GPIO_InitStructure ); -} - -void GpioMcuSetInterrupt( Gpio_t *obj, IrqModes irqMode, IrqPriorities irqPriority, GpioIrqHandler *irqHandler ) -{ - NVIC_InitTypeDef NVIC_InitStructure; - EXTI_InitTypeDef EXTI_InitStructure; - - if( irqHandler == NULL ) - { - return; - } - - GpioIrq[obj->pin & 0x0F] = irqHandler; - - /* Enable SYSCFG clock */ - RCC_APB2PeriphClockCmd( RCC_APB2Periph_SYSCFG, ENABLE ); - - /* Connect EXTI Line to GPIO pin */ - SYSCFG_EXTILineConfig( obj->portIndex, ( ( obj->pin ) & 0x0F ) ); - - /* Configure EXTI line */ - EXTI_InitStructure.EXTI_Line = ( 0x01 << ( obj->pin & 0x0F ) ); - EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; - - if( irqMode == IRQ_RISING_EDGE ) - { - EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising; - } - else if( irqMode == IRQ_FALLING_EDGE ) - { - EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; - } - else if( irqMode == IRQ_RISING_FALLING_EDGE ) - { - EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising_Falling; - } - else - { - while( 1 ); - } - - EXTI_InitStructure.EXTI_LineCmd = ENABLE; - EXTI_Init(&EXTI_InitStructure); - - if( ( ( obj->pin ) & 0x0F ) < 5 ) - { - NVIC_InitStructure.NVIC_IRQChannel = ( ( obj->pin ) & 0x0F ) + 6; - } - else if( ( ( obj->pin ) & 0x0F ) < 10 ) - { - NVIC_InitStructure.NVIC_IRQChannel = 23; - } - else if( ( ( obj->pin ) & 0x0F ) < 16 ) - { - NVIC_InitStructure.NVIC_IRQChannel = 40; - } - else - { - while( 1 ); - } - - if( irqPriority == IRQ_VERY_LOW_PRIORITY ) - { - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 15; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - } - else if( irqPriority == IRQ_LOW_PRIORITY ) - { - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 12; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - } - else if( irqPriority == IRQ_MEDIUM_PRIORITY ) - { - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 8; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - } - else if( irqPriority == IRQ_HIGH_PRIORITY ) - { - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 4; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - } - else if( irqPriority == IRQ_VERY_HIGH_PRIORITY ) - { - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - } - else - { - while( 1 ); - } - NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; - NVIC_Init( &NVIC_InitStructure ); - -} - -void GpioMcuRemoveInterrupt( Gpio_t *obj ) -{ - EXTI_InitTypeDef EXTI_InitStructure; - - GpioIrq[obj->pin & 0x0F] = NULL; - - EXTI_InitStructure.EXTI_Line = ( 0x01 << ( obj->pin & 0x0F ) ); - EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; - EXTI_InitStructure.EXTI_LineCmd = DISABLE; - EXTI_Init(&EXTI_InitStructure); -} - -void GpioMcuWrite( Gpio_t *obj, uint32_t value ) -{ - if( ( obj == NULL ) || ( obj->port == NULL ) ) - { - while( 1 ); - } - // Check if pin is not connected - if( obj->pin == NC ) - { - return; - } - if( value == 0 ) - { - GPIO_ResetBits( obj->port, obj->pinIndex ); - } - else - { - GPIO_SetBits( obj->port, obj->pinIndex ); - } -} - -uint32_t GpioMcuRead( Gpio_t *obj ) -{ - if( obj == NULL ) - { - while( 1 ); - } - // Check if pin is not connected - if( obj->pin == NC ) - { - return 0; - } - return GPIO_ReadInputDataBit( obj->port, obj->pinIndex ); -} - -void EXTI0_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line0 ) != RESET ) - { - if( GpioIrq[0] != NULL ) - { - GpioIrq[0]( ); - } - EXTI_ClearITPendingBit( EXTI_Line0 ); - } -} - -void EXTI1_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line1 ) != RESET ) - { - if( GpioIrq[1] != NULL ) - { - GpioIrq[1]( ); - } - EXTI_ClearITPendingBit( EXTI_Line1 ); - } -} - -void EXTI2_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line2 ) != RESET ) - { - if( GpioIrq[2] != NULL ) - { - GpioIrq[2]( ); - } - EXTI_ClearITPendingBit( EXTI_Line2 ); - } -} - -void EXTI3_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line3 ) != RESET ) - { - if( GpioIrq[3] != NULL ) - { - GpioIrq[3]( ); - } - EXTI_ClearITPendingBit( EXTI_Line3 ); - } -} - -void EXTI4_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line4 ) != RESET ) - { - if( GpioIrq[4] != NULL ) - { - GpioIrq[4]( ); - } - EXTI_ClearITPendingBit( EXTI_Line4 ); - } -} - -void EXTI9_5_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line5 ) != RESET ) - { - if( GpioIrq[5] != NULL ) - { - GpioIrq[5]( ); - } - EXTI_ClearITPendingBit( EXTI_Line5 ); - } - - if( EXTI_GetITStatus( EXTI_Line6 ) != RESET ) - { - if( GpioIrq[6] != NULL ) - { - GpioIrq[6]( ); - } - EXTI_ClearITPendingBit( EXTI_Line6 ); - } - - if( EXTI_GetITStatus( EXTI_Line7 ) != RESET ) - { - if( GpioIrq[7] != NULL ) - { - GpioIrq[7]( ); - } - EXTI_ClearITPendingBit( EXTI_Line7 ); - } - - if( EXTI_GetITStatus( EXTI_Line8 ) != RESET ) - { - if( GpioIrq[8] != NULL ) - { - GpioIrq[8]( ); - } - EXTI_ClearITPendingBit( EXTI_Line8 ); - } - - if( EXTI_GetITStatus( EXTI_Line9 ) != RESET ) - { - if( GpioIrq[9] != NULL ) - { - GpioIrq[9]( ); - } - EXTI_ClearITPendingBit( EXTI_Line9 ); - } -} - -void EXTI15_10_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line10 ) != RESET ) - { - if( GpioIrq[10] != NULL ) - { - GpioIrq[10]( ); - } - EXTI_ClearITPendingBit( EXTI_Line10 ); - } - - if( EXTI_GetITStatus( EXTI_Line11 ) != RESET ) - { - if( GpioIrq[11] != NULL ) - { - GpioIrq[11]( ); - } - EXTI_ClearITPendingBit( EXTI_Line11 ); - } - - if( EXTI_GetITStatus( EXTI_Line12 ) != RESET ) - { - if( GpioIrq[12] != NULL ) - { - GpioIrq[12]( ); - } - EXTI_ClearITPendingBit( EXTI_Line12 ); - } - - if( EXTI_GetITStatus( EXTI_Line13 ) != RESET ) - { - if( GpioIrq[13] != NULL ) - { - GpioIrq[13]( ); - } - EXTI_ClearITPendingBit( EXTI_Line13 ); - } - - if( EXTI_GetITStatus( EXTI_Line14 ) != RESET ) - { - if( GpioIrq[14] != NULL ) - { - GpioIrq[14]( ); - } - EXTI_ClearITPendingBit( EXTI_Line14 ); - } - - if( EXTI_GetITStatus( EXTI_Line15 ) != RESET ) - { - if( GpioIrq[15] != NULL ) - { - GpioIrq[15]( ); - } - EXTI_ClearITPendingBit( EXTI_Line15 ); - } -} diff --git a/src/boards/Bleeper-72/gpio-board.h b/src/boards/Bleeper-72/gpio-board.h deleted file mode 100644 index 4fc0843ac..000000000 --- a/src/boards/Bleeper-72/gpio-board.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper board GPIO driver implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __GPIO_MCU_H__ -#define __GPIO_MCU_H__ - -/*! - * \brief Initializes the given GPIO object - * - * \param [IN] obj Pointer to the GPIO object to be initialized - * \param [IN] pin Pin name ( please look in pinName-board.h file ) - * \param [IN] mode Pin mode [PIN_INPUT, PIN_OUTPUT, - * PIN_ALTERNATE_FCT, PIN_ANALOGIC] - * \param [IN] config Pin config [PIN_PUSH_PULL, PIN_OPEN_DRAIN] - * \param [IN] type Pin type [PIN_NO_PULL, PIN_PULL_UP, PIN_PULL_DOWN] - * \param [IN] value Default output value at initialisation - */ -void GpioMcuInit( Gpio_t *obj, PinNames pin, PinModes mode, PinConfigs config, PinTypes type, uint32_t value ); - -/*! - * \brief GPIO IRQ Initialization - * - * \param [IN] obj Pointer to the GPIO object to be initialized - * \param [IN] irqMode IRQ mode [NO_IRQ, IRQ_RISING_EDGE, - * IRQ_FALLING_EDGE, IRQ_RISING_FALLING_EDGE] - * \param [IN] irqPriority IRQ priority [IRQ_VERY_LOW_PRIORITY, IRQ_LOW_PRIORITY - * IRQ_MEDIUM_PRIORITY, IRQ_HIGH_PRIORITY - * IRQ_VERY_HIGH_PRIORITY] - * \param [IN] irqHandler Callback function pointer - */ -void GpioMcuSetInterrupt( Gpio_t *obj, IrqModes irqMode, IrqPriorities irqPriority, GpioIrqHandler *irqHandler ); - -/*! - * \brief GPIO IRQ DeInitialization - * - * \param [IN] obj Pointer to the GPIO object to be Deinitialized - */ -void GpioMcuRemoveInterrupt( Gpio_t *obj ); - -/*! - * \brief Writes the given value to the GPIO output - * - * \param [IN] obj Pointer to the GPIO object - * \param [IN] value New GPIO output value - */ -void GpioMcuWrite( Gpio_t *obj, uint32_t value ); - -/*! - * \brief Reads the current GPIO input value - * - * \param [IN] obj Pointer to the GPIO object - * \retval value Current GPIO input value - */ -uint32_t GpioMcuRead( Gpio_t *obj ); - -#endif // __GPIO_MCU_H__ diff --git a/src/boards/Bleeper-72/i2c-board.c b/src/boards/Bleeper-72/i2c-board.c deleted file mode 100644 index def3bf6af..000000000 --- a/src/boards/Bleeper-72/i2c-board.c +++ /dev/null @@ -1,582 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper board I2C driver implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include "board.h" -#include "i2c-board.h" - -/*! - * The value of the maximal timeout for I2C waiting loops - */ -#define TIMEOUT_MAX 0x8000 - -I2cAddrSize I2cInternalAddrSize = I2C_ADDR_SIZE_8; - -/*! - * MCU I2C peripherals enumeration - */ -typedef enum { - I2C_1 = ( uint32_t )I2C1_BASE, - I2C_2 = ( uint32_t )I2C2_BASE, -} I2cName; - -void I2cMcuInit( I2c_t *obj, PinNames scl, PinNames sda ) -{ - obj->I2c = ( I2C_TypeDef * )I2C2_BASE; - - RCC_APB1PeriphClockCmd( RCC_APB1Periph_I2C2, ENABLE ); - - I2C_DeInit( obj->I2c ); - - GpioInit( &obj->Scl, scl, PIN_ALTERNATE_FCT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &obj->Sda, sda, PIN_ALTERNATE_FCT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - - GPIO_PinAFConfig( obj->Scl.port, ( obj->Scl.pin & 0x0F ), GPIO_AF_I2C2 ); - GPIO_PinAFConfig( obj->Sda.port, ( obj->Sda.pin & 0x0F ), GPIO_AF_I2C2 ); -} - -void I2cMcuFormat( I2c_t *obj, I2cMode mode, I2cDutyCycle dutyCycle, bool I2cAckEnable, I2cAckAddrMode AckAddrMode, uint32_t I2cFrequency ) -{ - I2C_InitTypeDef I2C_InitStructure; - - if( mode == MODE_I2C ) - { - I2C_InitStructure.I2C_Mode = 0x0000; - } - else if( mode == MODE_SMBUS_DEVICE ) - { - I2C_InitStructure.I2C_Mode = 0x0002; - } - else - { - I2C_InitStructure.I2C_Mode = 0x000A; // MODE_SMBUS_HOST - } - - if( dutyCycle == I2C_DUTY_CYCLE_2 ) - { - I2C_InitStructure.I2C_DutyCycle = 0xBFFF; - } - else - { - I2C_InitStructure.I2C_DutyCycle = 0x4000; //I2C_DUTY_CYCLE_16_9 - } - - if( I2cAckEnable == true ) - { - I2C_InitStructure.I2C_Ack = 0x0400; - } - else - { - I2C_InitStructure.I2C_Ack = 0x0000; - } - - if( AckAddrMode == I2C_ACK_ADD_7_BIT ) - { - I2C_InitStructure.I2C_AcknowledgedAddress = 0x4000; - } - else - { - I2C_InitStructure.I2C_AcknowledgedAddress = 0xC000; // I2C_ACK_ADD_10_BIT - } - - if( I2cFrequency > 400000 ) - { - I2C_InitStructure.I2C_ClockSpeed = 400000; - } - else - { - I2C_InitStructure.I2C_ClockSpeed = I2cFrequency; - } - - I2C_Init( obj->I2c, &I2C_InitStructure ); - - /* I2C Peripheral Enable */ - I2C_Cmd( obj->I2c, ENABLE ); -} - -void I2cMcuDeInit( I2c_t *obj ) -{ - I2C_DeInit( obj->I2c ); - - GpioInit( &obj->Scl, obj->Scl.pin, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &obj->Sda, obj->Sda.pin, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); -} - -void I2cSetAddrSize( I2c_t *obj, I2cAddrSize addrSize ) -{ - I2cInternalAddrSize = addrSize; -} - -uint8_t I2cMcuWriteBuffer( I2c_t *obj, uint8_t deviceAddr, uint16_t addr, uint8_t *buffer, uint16_t size ) -{ - uint32_t timeOut; - - __disable_irq( ); - - /* Test on BUSY Flag */ - timeOut = TIMEOUT_MAX; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_BUSY) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Send START condition */ - I2C_GenerateSTART( obj->I2c, ENABLE ); - - /* Test on EV5 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_MODE_SELECT ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Send device's address for write */ - I2C_Send7bitAddress( obj->I2c, deviceAddr, I2C_Direction_Transmitter ); - - /* Test on EV6 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - if( I2cInternalAddrSize == I2C_ADDR_SIZE_16 ) - { - /* Send the device's internal address MSB to write to */ - I2C_SendData( obj->I2c, ( uint8_t )( ( addr & 0xFF00 ) >> 8 ) ); - - /* Test on EV8 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_BYTE_TRANSMITTING ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - } - - /* Send the device's internal address LSB to write to */ - I2C_SendData( obj->I2c, ( uint8_t )( addr & 0x00FF ) ); - - /* Test on EV8 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_BYTE_TRANSMITTING ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - while( size ) - { - /* Send the byte to be written */ - I2C_SendData( obj->I2c, *buffer ); - - /* Test on EV8 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_BYTE_TRANSMITTING ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - if( size == 1 ) - { - I2C_GenerateSTOP( obj->I2c, ENABLE ); - - /* Wait to make sure that STOP control bit has been cleared */ - timeOut = TIMEOUT_MAX; - while(obj->I2c->CR1 & I2C_CR1_STOP) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - } /* STOP */ - - buffer++; - size--; - } - - __enable_irq( ); - return( SUCCESS ); -} - -uint8_t I2cMcuReadBuffer( I2c_t *obj, uint8_t deviceAddr, uint16_t addr, uint8_t *buffer, uint16_t size ) -{ - uint32_t timeOut; - - __disable_irq( ); - - /* Test on BUSY Flag */ - timeOut = TIMEOUT_MAX; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_BUSY ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Send START condition */ - I2C_GenerateSTART( obj->I2c, ENABLE ); - - /* Test on EV5 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_MODE_SELECT ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Send device's address for write */ - I2C_Send7bitAddress( obj->I2c, deviceAddr, I2C_Direction_Transmitter ); - - /* Test on EV6 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - if( I2cInternalAddrSize == I2C_ADDR_SIZE_16 ) - { - /* Send the device's internal address MSB to write to */ - I2C_SendData( obj->I2c, ( uint8_t )( ( addr & 0xFF00 ) >> 8 ) ); - - /* Test on EV8 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_BYTE_TRANSMITTING ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - } - - /* Send the device's internal address LSB to write to */ - I2C_SendData( obj->I2c, ( uint8_t )( addr & 0x00FF ) ); - - /* Test on EV8 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_BYTE_TRANSMITTING ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Test on EV8 and clear it */ - timeOut = TIMEOUT_MAX; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_BTF ) == RESET ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Send START condition a second time */ - I2C_GenerateSTART( obj->I2c, ENABLE ); - - /* Test on EV5 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_MODE_SELECT ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Send device's address for read */ - I2C_Send7bitAddress( obj->I2c, deviceAddr, I2C_Direction_Receiver ); - - if( size < 2 ) - { - /* Wait on ADDR flag to be set (ADDR is still not cleared at this level */ - timeOut = TIMEOUT_MAX; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_ADDR ) == RESET ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Disable Acknowledgement */ - I2C_AcknowledgeConfig( obj->I2c, DISABLE ); - - /* Clear ADDR register by reading SR1 then SR2 register (SR1 has already been read) */ - ( void )obj->I2c->SR2; - - /* Send STOP Condition */ - I2C_GenerateSTOP( obj->I2c, ENABLE ); - - /* Wait for the byte to be received */ - timeOut = TIMEOUT_MAX; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_RXNE ) == RESET ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Read a byte from the device */ - *buffer = I2C_ReceiveData( obj->I2c ); - - /* Decrement the read bytes counter */ - size--; - } - else - { - timeOut = TIMEOUT_MAX; - while( I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_RECEIVER_MODE_SELECTED ) == ERROR ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - while( size ) - { - if( size == 1 ) - { - /* Disable Acknowledgement */ - I2C_AcknowledgeConfig( obj->I2c, DISABLE ); - - /* Send STOP Condition */ - I2C_GenerateSTOP( obj->I2c, ENABLE ); - } - - timeOut = TIMEOUT_MAX; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_RXNE ) == RESET ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Read a byte from the device */ - *buffer = I2C_ReceiveData( obj->I2c ); - - /* Point to the next location where the byte read will be saved */ - buffer++; - - /* Decrement the read bytes counter */ - size--; - } - - /* Wait to make sure that STOP control bit has been cleared */ - timeOut = TIMEOUT_MAX; - while( obj->I2c->CR1 & I2C_CR1_STOP ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - } - - /*!< Re-Enable Acknowledgement to be ready for another reception */ - I2C_AcknowledgeConfig( obj->I2c, ENABLE ); - - __enable_irq( ); - return( SUCCESS ); -} - -/* Maximum Timeout values for flags and events waiting loops. These timeouts are - not based on accurate values, they just guarantee that the application will - not remain stuck if the I2C communication is corrupted. - You may modify these timeout values depending on CPU frequency and application - conditions (interrupts routines ...). */ -#define EE_FLAG_TIMEOUT ( ( uint32_t )0x1000 ) -#define EE_LONG_TIMEOUT ( ( uint32_t )( 10 * EE_FLAG_TIMEOUT ) ) - -/* Maximum number of trials for I2cMcuWaitStandbyState( ) function */ -#define EE_MAX_TRIALS_NUMBER 300 - -uint8_t I2cMcuWaitStandbyState( I2c_t *obj, uint8_t deviceAddr ) -{ - uint32_t timeOut; - volatile uint16_t tmpSR1 = 0; - volatile uint32_t trials = 0; - - __disable_irq( ); - - /*!< While the bus is busy */ - timeOut = EE_LONG_TIMEOUT; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_BUSY ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - __enable_irq( ); - return( FAIL ); - } - } - - /* Keep looping till the slave acknowledge his address or maximum number - of trials is reached (this number is defined by EE_MAX_TRIALS_NUMBER define - in eeProm.h file) */ - while( 1 ) - { - /*!< Send START condition */ - I2C_GenerateSTART( obj->I2c, ENABLE ); - - /*!< Test on EV5 and clear it */ - timeOut = EE_FLAG_TIMEOUT; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_MODE_SELECT ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /*!< Send device address for write */ - I2C_Send7bitAddress( obj->I2c, deviceAddr, I2C_Direction_Transmitter ); - - /* Wait for ADDR flag to be set (Slave acknowledged his address) */ - timeOut = EE_LONG_TIMEOUT; - do - { - /* Get the current value of the SR1 register */ - tmpSR1 = obj->I2c->SR1; - - /* Update the timeout value and exit if it reach 0 */ - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - __enable_irq( ); - return( FAIL ); - } - } - /* Keep looping till the Address is acknowledged or the AF flag is - set (address not acknowledged at time) */ - while( ( tmpSR1 & ( I2C_SR1_ADDR | I2C_SR1_AF ) ) == 0 ); - - /* Check if the ADDR flag has been set */ - if ( tmpSR1 & I2C_SR1_ADDR ) - { - /* Clear ADDR Flag by reading SR1 then SR2 registers (SR1 have already - been read) */ - ( void )obj->I2c->SR2; - - /*!< STOP condition */ - I2C_GenerateSTOP( obj->I2c, ENABLE ); - - /* Exit the function */ - __enable_irq( ); - return ( SUCCESS ); - } - else - { - /*!< Clear AF flag */ - I2C_ClearFlag( obj->I2c, I2C_FLAG_AF ); - } - - /* Check if the maximum allowed number of trials has bee reached */ - if ( trials++ == EE_MAX_TRIALS_NUMBER ) - { - I2cResetBus( obj ); - /* If the maximum number of trials has been reached, exit the function */ - __enable_irq( ); - return( FAIL ); - } - } -} diff --git a/src/boards/Bleeper-72/i2c-board.h b/src/boards/Bleeper-72/i2c-board.h deleted file mode 100644 index 72aae12bb..000000000 --- a/src/boards/Bleeper-72/i2c-board.h +++ /dev/null @@ -1,121 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper board I2C driver implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __I2C_MCU_H__ -#define __I2C_MCU_H__ - -/*! - * Operation Mode for the I2C - */ -typedef enum -{ - MODE_I2C = 0, - MODE_SMBUS_DEVICE, - MODE_SMBUS_HOST -}I2cMode; - -/*! - * I2C signal duty cycle - */ -typedef enum -{ - I2C_DUTY_CYCLE_2 = 0, - I2C_DUTY_CYCLE_16_9 -}I2cDutyCycle; - -/*! - * I2C select if the acknowledge in after the 7th or 10th bit - */ -typedef enum -{ - I2C_ACK_ADD_7_BIT = 0, - I2C_ACK_ADD_10_BIT -}I2cAckAddrMode; - -/*! - * Internal device address size - */ -typedef enum -{ - I2C_ADDR_SIZE_8 = 0, - I2C_ADDR_SIZE_16, -}I2cAddrSize; - -/*! - * \brief Initializes the I2C object and MCU peripheral - * - * \param [IN] obj I2C object - * \param [IN] scl I2C Scl pin name to be used - * \param [IN] sda I2C Sda pin name to be used - */ -void I2cMcuInit( I2c_t *obj, PinNames scl, PinNames sda ); - -/*! - * \brief Initializes the I2C object and MCU peripheral - * - * \param [IN] obj I2C object - * \param [IN] mode Mode of operation for the I2C Bus - * \param [IN] dutyCycle Signal duty cycle - * \param [IN] I2cAckEnable Enable or Disable to ack - * \param [IN] AckAddrMode 7bit or 10 bit addressing - * \param [IN] I2cFrequency I2C bus clock frequency - */ -void I2cMcuFormat( I2c_t *obj, I2cMode mode, I2cDutyCycle dutyCycle, bool I2cAckEnable, I2cAckAddrMode AckAddrMode, uint32_t I2cFrequency ); - -/*! - * \brief DeInitializes the I2C object and MCU peripheral - * - * \param [IN] obj I2C object - */ -void I2cMcuDeInit( I2c_t *obj ); - -/*! - * \brief Write several data to the I2C device - * - * \param [IN] obj I2C object - * \param [IN] deviceAddr device address - * \param [IN] addr register address - * \param [IN] buffer data buffer to write - * \param [IN] size number of data byte to write - */ -uint8_t I2cMcuWriteBuffer( I2c_t *obj, uint8_t deviceAddr, uint16_t addr, uint8_t *buffer, uint16_t size ); - -/*! - * \brief Read several data byte from the I2C device - * - * \param [IN] obj I2C object - * \param [IN] deviceAddr device address - * \param [IN] addr register address - * \param [IN] buffer data buffer used to store the data read - * \param [IN] size number of data byte to read - */ -uint8_t I2cMcuReadBuffer( I2c_t *obj, uint8_t deviceAddr, uint16_t addr, uint8_t *buffer, uint16_t size ); - -/*! - * \brief Waits until the given device is in standby mode - * - * \param [IN] obj I2C object - * \param [IN] deviceAddr device address - */ -uint8_t I2cMcuWaitStandbyState( I2c_t *obj, uint8_t deviceAddr ); - -/*! - * \brief Sets the internal device address size - * - * \param [IN] obj I2C object - * \param [IN] addrSize Internal address size - */ -void I2cSetAddrSize( I2c_t *obj, I2cAddrSize addrSize ); - -#endif // __I2C_MCU_H__ diff --git a/src/boards/Bleeper-72/pinName-board.h b/src/boards/Bleeper-72/pinName-board.h deleted file mode 100644 index 4a66023bb..000000000 --- a/src/boards/Bleeper-72/pinName-board.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper STM32L151RD microcontroller pins definition - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __PIN_NAME_MCU_H__ -#define __PIN_NAME_MCU_H__ - -/*! - * STM32 Pin Names - */ -#define MCU_PINS \ - PA_0 = 0, PA_1, PA_2, PA_3, PA_4, PA_5, PA_6, PA_7, PA_8, PA_9, PA_10, PA_11, PA_12, PA_13, PA_14, PA_15, \ - PB_0, PB_1, PB_2, PB_3, PB_4, PB_5, PB_6, PB_7, PB_8, PB_9, PB_10, PB_11, PB_12, PB_13, PB_14, PB_15, \ - PC_0, PC_1, PC_2, PC_3, PC_4, PC_5, PC_6, PC_7, PC_8, PC_9, PC_10, PC_11, PC_12, PC_13, PC_14, PC_15, \ - PD_0, PD_1, PD_2, PD_3, PD_4, PD_5, PD_6, PD_7, PD_8, PD_9, PD_10, PD_11, PD_12, PD_13, PD_14, PD_15, \ - PE_0, PE_1, PE_2, PE_3, PE_4, PE_5, PE_6, PE_7, PE_8, PE_9, PE_10, PE_11, PE_12, PE_13, PE_14, PE_15, \ - PF_0, PF_1, PF_2, PF_3, PF_4, PF_5, PF_6, PF_7, PF_8, PF_9, PF_10, PF_11, PF_12, PF_13, PF_14, PF_15, \ - PH_0, PH_1, PH_2, PH_3, PH_4, PH_5, PH_6, PH_7, PH_8, PH_9, PH_10, PH_11, PH_12, PH_13, PH_14, PH_15 - -#endif // __PIN_NAME_MCU_H__ diff --git a/src/boards/Bleeper-72/pinName-ioe.h b/src/boards/Bleeper-72/pinName-ioe.h deleted file mode 100644 index 531100ab9..000000000 --- a/src/boards/Bleeper-72/pinName-ioe.h +++ /dev/null @@ -1,22 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper STM32L151RD microcontroller pins definition - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __PIN_NAME_IOE_H__ -#define __PIN_NAME_IOE_H__ - -// SX1509 Pin Names -#define IOE_PINS \ - IOE_0, IOE_1, IOE_2, IOE_3, IOE_4, IOE_5, IOE_6, IOE_7, \ - IOE_8, IOE_9, IOE_10, IOE_11, IOE_12, IOE_13, IOE_14, IOE_15 -#endif // __PIN_NAME_IOE_H__ diff --git a/src/boards/Bleeper-72/rtc-board.c b/src/boards/Bleeper-72/rtc-board.c deleted file mode 100644 index d58622057..000000000 --- a/src/boards/Bleeper-72/rtc-board.c +++ /dev/null @@ -1,557 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: MCU RTC timer and low power modes management - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include -#include "board.h" -#include "rtc-board.h" - -/*! - * RTC Time base in us - */ -#define RTC_ALARM_TIME_BASE 122.07 - -/*! - * MCU Wake Up Time - */ -#define MCU_WAKE_UP_TIME 3400 - -/*! - * \brief Configure the Rtc hardware - */ -static void RtcSetConfig( void ); - -/*! - * \brief Configure the Rtc Alarm - */ -static void RtcSetAlarmConfig( void ); - -/*! - * \brief Start the Rtc Alarm (time base 1s) - */ -static void RtcStartWakeUpAlarm( uint32_t timeoutValue ); - -/*! - * \brief Read the MCU internal Calendar value - * - * \retval Calendar value - */ -static TimerTime_t RtcGetCalendarValue( void ); - -/*! - * \brief Clear the RTC flags and Stop all IRQs - */ -static void RtcClearStatus( void ); - -/*! - * \brief Indicates if the RTC is already Initalized or not - */ -static bool RtcInitalized = false; - -/*! - * \brief Flag to indicate if the timestamps until the next event is long enough - * to set the MCU into low power mode - */ -static bool RtcTimerEventAllowsLowPower = false; - -/*! - * \brief Flag to disable the LowPower Mode even if the timestamps until the - * next event is long enough to allow Low Power mode - */ -static bool LowPowerDisableDuringTask = false; - -/*! - * Keep the value of the RTC timer when the RTC alarm is set - */ -static TimerTime_t RtcTimerContext = 0; - -/*! - * Number of seconds in a minute - */ -static const uint8_t SecondsInMinute = 60; - -/*! - * Number of seconds in an hour - */ -static const uint16_t SecondsInHour = 3600; - -/*! - * Number of seconds in a day - */ -static const uint32_t SecondsInDay = 86400; - -/*! - * Number of hours in a day - */ -static const uint8_t HoursInDay = 24; - -/*! - * Number of days in a standard year - */ -static const uint16_t DaysInYear = 365; - -/*! - * Number of days in a leap year - */ -static const uint16_t DaysInLeapYear = 366; - -/*! - * Number of days in a century - */ -static const double DaysInCentury = 36524.219; - -/*! - * Number of days in each month on a normal year - */ -static const uint8_t DaysInMonth[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; - -/*! - * Number of days in each month on a leap year - */ -static const uint8_t DaysInMonthLeapYear[] = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; - -/*! - * Hold the previous year value to detect the turn of a century - */ -static uint8_t PreviousYear = 0; - -/*! - * Century counter - */ -static uint8_t Century = 0; - -void RtcInit( void ) -{ - if( RtcInitalized == false ) - { - RtcSetConfig( ); - RtcSetAlarmConfig( ); - RtcInitalized = true; - } -} - -static void RtcSetConfig( void ) -{ - RTC_InitTypeDef RTC_InitStructure; - RTC_TimeTypeDef RTC_TimeStruct; - RTC_DateTypeDef RTC_DateStruct; - - /* Enable the PWR clock */ - RCC_APB1PeriphClockCmd( RCC_APB1Periph_PWR, ENABLE ); - - /* Allow access to RTC */ - PWR_RTCAccessCmd( ENABLE ); - - /* Reset RTC Domain */ - RCC_RTCResetCmd( ENABLE ); - RCC_RTCResetCmd( DISABLE ); - - /* Enable the LSE OSC */ - RCC_LSEConfig( RCC_LSE_ON ); - - /* Wait till LSE is ready */ - while( RCC_GetFlagStatus( RCC_FLAG_LSERDY ) == RESET ) - {} - - /* Select the RTC Clock Source */ - RCC_RTCCLKConfig( RCC_RTCCLKSource_LSE ); - - /* Enable the RTC Clock */ - RCC_RTCCLKCmd( ENABLE ); - - RTC_TimeStructInit( &RTC_TimeStruct ); - RTC_DateStructInit( &RTC_DateStruct ); - - RTC_SetDate( RTC_Format_BIN, &RTC_DateStruct ); - RTC_SetTime( RTC_Format_BIN, &RTC_TimeStruct ); - - /* Wait for RTC APB registers synchronisation */ - RTC_WaitForSynchro( ); - - /* Configure the RTC data register and RTC prescaler */ - RTC_InitStructure.RTC_AsynchPrediv = 0x01; - RTC_InitStructure.RTC_SynchPrediv = 0x01; - RTC_InitStructure.RTC_HourFormat = RTC_HourFormat_24; - RTC_Init( &RTC_InitStructure ); - - /* Wait for RTC APB registers synchronisation */ - RTC_WaitForSynchro( ); -} - -static void RtcSetAlarmConfig( void ) -{ - EXTI_InitTypeDef EXTI_InitStructure; - RTC_AlarmTypeDef RTC_AlarmStructure; - NVIC_InitTypeDef NVIC_InitStructure; - - /* EXTI configuration */ - EXTI_ClearITPendingBit( EXTI_Line17 ); - EXTI_InitStructure.EXTI_Line = EXTI_Line17; - EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; - EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising; - EXTI_InitStructure.EXTI_LineCmd = ENABLE; - EXTI_Init( &EXTI_InitStructure ); - - /* Enable the RTC Alarm Interrupt */ - NVIC_InitStructure.NVIC_IRQChannel = RTC_Alarm_IRQn; - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; - NVIC_Init( &NVIC_InitStructure ); - - /* Set the alarmA Masks */ - RTC_AlarmStructure.RTC_AlarmMask = RTC_AlarmMask_DateWeekDay; - RTC_SetAlarm( RTC_Format_BIN, RTC_Alarm_A, &RTC_AlarmStructure ); - - /* Enable AlarmA interrupt */ - RTC_ITConfig( RTC_IT_ALRA, DISABLE ); - - /* Enable the alarmA */ - RTC_AlarmCmd( RTC_Alarm_A, DISABLE ); -} - -void RtcStopTimer( void ) -{ - RtcClearStatus( ); -} - -uint32_t RtcGetMinimumTimeout( void ) -{ - return( ceil( 3 * RTC_ALARM_TIME_BASE ) ); -} - -void RtcSetTimeout( uint32_t timeout ) -{ - uint32_t timeoutValue = 0; - - timeoutValue = timeout; - - if( timeoutValue < ( 3 * RTC_ALARM_TIME_BASE ) ) - { - timeoutValue = 3 * RTC_ALARM_TIME_BASE; - } - - if( timeoutValue < 55000 ) - { - // we don't go in Low Power mode for delay below 50ms (needed for LEDs) - RtcTimerEventAllowsLowPower = false; - } - else - { - RtcTimerEventAllowsLowPower = true; - } - - if( ( LowPowerDisableDuringTask == false ) && ( RtcTimerEventAllowsLowPower == true ) ) - { - timeoutValue = timeoutValue - MCU_WAKE_UP_TIME; - } - - RtcStartWakeUpAlarm( timeoutValue ); -} - - -uint32_t RtcGetTimerElapsedTime( void ) -{ - TimerTime_t CalendarValue = 0; - - CalendarValue = RtcGetCalendarValue( ); - - return( ( uint32_t )( ceil ( ( ( CalendarValue - RtcTimerContext ) + 2 ) * RTC_ALARM_TIME_BASE ) ) ); -} - -TimerTime_t RtcGetTimerValue( void ) -{ - TimerTime_t CalendarValue = 0; - - CalendarValue = RtcGetCalendarValue( ); - - return( ( CalendarValue + 2 ) * RTC_ALARM_TIME_BASE ); -} - -static void RtcClearStatus( void ) -{ - /* Clear RTC Alarm Flag */ - RTC_ClearFlag(RTC_FLAG_ALRAF); - - /* Enable RTC Alarm A Interrupt */ - RTC_ITConfig( RTC_IT_ALRA, DISABLE ); - - /* Enable the Alarm A */ - RTC_AlarmCmd( RTC_Alarm_A, DISABLE ); -} - -static void RtcStartWakeUpAlarm( uint32_t timeoutValue ) -{ - uint16_t rtcSeconds = 0; - uint16_t rtcMinutes = 0; - uint16_t rtcHours = 0; - uint16_t rtcDays = 0; - - uint8_t rtcAlarmSeconds = 0; - uint8_t rtcAlarmMinutes = 0; - uint8_t rtcAlarmHours = 0; - uint16_t rtcAlarmDays = 0; - - RTC_AlarmTypeDef RTC_AlarmStructure; - RTC_TimeTypeDef RTC_TimeStruct; - RTC_DateTypeDef RTC_DateStruct; - - RtcClearStatus( ); - - RtcTimerContext = RtcGetCalendarValue( ); - RTC_GetTime( RTC_Format_BIN, &RTC_TimeStruct ); - RTC_GetDate( RTC_Format_BIN, &RTC_DateStruct ); - - timeoutValue = timeoutValue / RTC_ALARM_TIME_BASE; - - if( timeoutValue > 2160000 ) // 25 "days" in tick - { // drastically reduce the computation time - rtcAlarmSeconds = RTC_TimeStruct.RTC_Seconds; - rtcAlarmMinutes = RTC_TimeStruct.RTC_Minutes; - rtcAlarmHours = RTC_TimeStruct.RTC_Hours; - rtcAlarmDays = 25 + RTC_DateStruct.RTC_Date; // simply add 25 days to current date and time - - if( ( RTC_DateStruct.RTC_Year == 0 ) || ( RTC_DateStruct.RTC_Year % 4 == 0 ) ) - { - if( rtcAlarmDays > DaysInMonthLeapYear[ RTC_DateStruct.RTC_Month - 1 ] ) - { - rtcAlarmDays = rtcAlarmDays % DaysInMonthLeapYear[ RTC_DateStruct.RTC_Month - 1]; - } - } - else - { - if( rtcAlarmDays > DaysInMonth[ RTC_DateStruct.RTC_Month - 1 ] ) - { - rtcAlarmDays = rtcAlarmDays % DaysInMonth[ RTC_DateStruct.RTC_Month - 1]; - } - } - } - else - { - rtcSeconds = ( timeoutValue % SecondsInMinute ) + RTC_TimeStruct.RTC_Seconds; - rtcMinutes = ( ( timeoutValue / SecondsInMinute ) % SecondsInMinute ) + RTC_TimeStruct.RTC_Minutes; - rtcHours = ( ( timeoutValue / SecondsInHour ) % HoursInDay ) + RTC_TimeStruct.RTC_Hours; - rtcDays = ( timeoutValue / SecondsInDay ) + RTC_DateStruct.RTC_Date; - - rtcAlarmSeconds = ( rtcSeconds ) % 60; - rtcAlarmMinutes = ( ( rtcSeconds / 60 ) + rtcMinutes ) % 60; - rtcAlarmHours = ( ( ( ( rtcSeconds / 60 ) + rtcMinutes ) / 60 ) + rtcHours ) % 24; - rtcAlarmDays = ( ( ( ( ( rtcSeconds / 60 ) + rtcMinutes ) / 60 ) + rtcHours ) / 24 ) + rtcDays; - - if( ( RTC_DateStruct.RTC_Year == 0 ) || ( RTC_DateStruct.RTC_Year % 4 == 0 ) ) - { - if( rtcAlarmDays > DaysInMonthLeapYear[ RTC_DateStruct.RTC_Month - 1 ] ) - { - rtcAlarmDays = rtcAlarmDays % DaysInMonthLeapYear[ RTC_DateStruct.RTC_Month - 1 ]; - } - } - else - { - if( rtcAlarmDays > DaysInMonth[ RTC_DateStruct.RTC_Month - 1 ] ) - { - rtcAlarmDays = rtcAlarmDays % DaysInMonth[ RTC_DateStruct.RTC_Month - 1 ]; - } - } - } - - RTC_AlarmStructure.RTC_AlarmTime.RTC_Seconds = rtcAlarmSeconds; - RTC_AlarmStructure.RTC_AlarmTime.RTC_Minutes = rtcAlarmMinutes; - RTC_AlarmStructure.RTC_AlarmTime.RTC_Hours = rtcAlarmHours; - RTC_AlarmStructure.RTC_AlarmDateWeekDay = ( uint8_t )rtcAlarmDays; - RTC_AlarmStructure.RTC_AlarmTime.RTC_H12 = RTC_TimeStruct.RTC_H12; - RTC_AlarmStructure.RTC_AlarmDateWeekDaySel = RTC_AlarmDateWeekDaySel_Date; - RTC_AlarmStructure.RTC_AlarmMask = RTC_AlarmMask_None; - RTC_SetAlarm( RTC_Format_BIN, RTC_Alarm_A, &RTC_AlarmStructure ); - - /* Wait for RTC APB registers synchronisation */ - RTC_WaitForSynchro( ); - - /* Enable RTC Alarm A Interrupt */ - RTC_ITConfig( RTC_IT_ALRA, ENABLE ); - - /* Enable the Alarm A */ - RTC_AlarmCmd( RTC_Alarm_A, ENABLE ); -} - -void RtcEnterLowPowerStopMode( void ) -{ - if( ( LowPowerDisableDuringTask == false ) && ( RtcTimerEventAllowsLowPower == true ) ) - { - // Disable IRQ while the MCU is being deinitialized to prevent race issues - __disable_irq( ); - - BoardDeInitMcu( ); - - __enable_irq( ); - - /* Disable the Power Voltage Detector */ - PWR_PVDCmd( DISABLE ); - - /* Set MCU in ULP (Ultra Low Power) */ - PWR_UltraLowPowerCmd( ENABLE ); - - /*Disable fast wakeUp*/ - PWR_FastWakeUpCmd( DISABLE ); - - /* Enter Stop Mode */ - PWR_EnterSTOPMode( PWR_Regulator_LowPower, PWR_STOPEntry_WFI ); - } -} - -void RtcRecoverMcuStatus( void ) -{ - if( TimerGetLowPowerEnable( ) == true ) - { - if( ( LowPowerDisableDuringTask == false ) && ( RtcTimerEventAllowsLowPower == true ) ) - { - // Disable IRQ while the MCU is not running on HSE - __disable_irq( ); - - /* After wake-up from STOP reconfigure the system clock */ - /* Enable HSE */ - RCC_HSEConfig( RCC_HSE_ON ); - - /* Wait till HSE is ready */ - while( RCC_GetFlagStatus( RCC_FLAG_HSERDY ) == RESET ) - {} - - /* Enable PLL */ - RCC_PLLCmd( ENABLE ); - - /* Wait till PLL is ready */ - while( RCC_GetFlagStatus( RCC_FLAG_PLLRDY ) == RESET ) - {} - - /* Select PLL as system clock source */ - RCC_SYSCLKConfig( RCC_SYSCLKSource_PLLCLK ); - - /* Wait till PLL is used as system clock source */ - while( RCC_GetSYSCLKSource( ) != 0x0C ) - {} - - /* Set MCU in ULP (Ultra Low Power) */ - PWR_UltraLowPowerCmd( DISABLE ); // add up to 3ms wakeup time - - /* Enable the Power Voltage Detector */ - PWR_PVDCmd( ENABLE ); - - BoardInitMcu( ); - - __enable_irq( ); - } - } -} - -/*! - * \brief RTC IRQ Handler on the RTC Alarm - */ -void RTC_Alarm_IRQHandler( void ) -{ - if( RTC_GetITStatus( RTC_IT_ALRA ) != RESET ) - { - RtcRecoverMcuStatus( ); - - TimerIrqHandler( ); - - RTC_ClearITPendingBit( RTC_IT_ALRA ); - EXTI_ClearITPendingBit( EXTI_Line17 ); - } -} - -void BlockLowPowerDuringTask( bool status ) -{ - if( status == true ) - { - RtcRecoverMcuStatus( ); - } - LowPowerDisableDuringTask = status; -} - -void RtcDelayMs( uint32_t delay ) -{ - TimerTime_t delayValue = 0; - TimerTime_t timeout = 0; - - delayValue = ( TimerTime_t )( delay * 1000 ); - - // Wait delay ms - timeout = RtcGetTimerValue( ); - while( ( ( RtcGetTimerValue( ) - timeout ) ) < delayValue ) - { - __NOP( ); - } -} - -TimerTime_t RtcGetCalendarValue( void ) -{ - TimerTime_t calendarValue = 0; - uint8_t i = 0; - - RTC_TimeTypeDef RTC_TimeStruct; - RTC_DateTypeDef RTC_DateStruct; - - RTC_GetTime( RTC_Format_BIN, &RTC_TimeStruct ); - RTC_GetDate( RTC_Format_BIN, &RTC_DateStruct ); - - RTC_WaitForSynchro( ); - - if( ( PreviousYear == 99 ) && ( RTC_DateStruct.RTC_Year == 0 ) ) - { - Century++; - } - PreviousYear = RTC_DateStruct.RTC_Year; - - // century - for( i = 0; i < Century; i++ ) - { - calendarValue += ( TimerTime_t )( DaysInCentury * SecondsInDay ); - } - - // years - for( i = 0; i < RTC_DateStruct.RTC_Year; i++ ) - { - if( ( i == 0 ) || ( i % 4 == 0 ) ) - { - calendarValue += DaysInLeapYear * SecondsInDay; - } - else - { - calendarValue += DaysInYear * SecondsInDay; - } - } - - // months - if( ( RTC_DateStruct.RTC_Year == 0 ) || ( RTC_DateStruct.RTC_Year % 4 == 0 ) ) - { - for( i = 0; i < ( RTC_DateStruct.RTC_Month - 1 ); i++ ) - { - calendarValue += DaysInMonthLeapYear[i] * SecondsInDay; - } - } - else - { - for( i = 0; i < ( RTC_DateStruct.RTC_Month - 1 ); i++ ) - { - calendarValue += DaysInMonth[i] * SecondsInDay; - } - } - - // days - calendarValue += ( ( uint32_t )RTC_TimeStruct.RTC_Seconds + - ( ( uint32_t )RTC_TimeStruct.RTC_Minutes * SecondsInMinute ) + - ( ( uint32_t )RTC_TimeStruct.RTC_Hours * SecondsInHour ) + - ( ( uint32_t )( RTC_DateStruct.RTC_Date * SecondsInDay ) ) ); - - return( calendarValue ); -} diff --git a/src/boards/Bleeper-72/rtc-board.h b/src/boards/Bleeper-72/rtc-board.h deleted file mode 100644 index 429d6e38e..000000000 --- a/src/boards/Bleeper-72/rtc-board.h +++ /dev/null @@ -1,91 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: MCU RTC timer and low power modes management - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __RTC_BOARD_H__ -#define __RTC_BOARD_H__ - -/*! - * \brief Timer time variable definition - */ -#ifndef TimerTime_t -typedef uint64_t TimerTime_t; -#endif - -/*! - * \brief Initializes the RTC timer - * - * \remark The timer is based on the RTC - */ -void RtcInit( void ); - -/*! - * \brief Stop the RTC Timer - */ -void RtcStopTimer( void ); - -/*! - * \brief Return the minimum timeout the RTC is able to handle - * - * \retval minimum value for a timeout - */ -uint32_t RtcGetMinimumTimeout( void ); - -/*! - * \brief Start the RTC timer - * - * \remark The timer is based on the RTC Alarm running at 32.768KHz - * - * \param[IN] timeout Duration of the Timer - */ -void RtcSetTimeout( uint32_t timeout ); - -/*! - * \brief Get the RTC timer value - * - * \retval RTC Timer value - */ -TimerTime_t RtcGetTimerValue( void ); - -/*! - * \brief Get the RTC timer elapsed time since the last Alarm was set - * - * \retval RTC Elapsed time since the last alarm - */ -uint32_t RtcGetTimerElapsedTime( void ); - -/*! - * \brief This function block the MCU from going into Low Power mode - * - * \param [IN] Status enable or disable - */ -void BlockLowPowerDuringTask ( bool Status ); - -/*! - * \brief Sets the MCU in low power STOP mode - */ -void RtcEnterLowPowerStopMode( void ); - -/*! - * \brief Restore the MCU to its normal operation mode - */ -void RtcRecoverMcuStatus( void ); - -/*! - * \brief Perfoms a standard blocking delay in the code execution - * - * \param [IN] delay Delay value in ms - */ -void RtcDelayMs ( uint32_t delay ); - -#endif // __RTC_BOARD_H__ diff --git a/src/boards/Bleeper-72/spi-board.c b/src/boards/Bleeper-72/spi-board.c deleted file mode 100644 index 167d77fae..000000000 --- a/src/boards/Bleeper-72/spi-board.c +++ /dev/null @@ -1,157 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper board SPI driver implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include "board.h" -#include "spi-board.h" -#include "stm32l1xx_spi.h" -#include "stm32l1xx_gpio.h" - -/*! - * \brief Find First Set - * This function identifies the least significant index or position of the - * bits set to one in the word - * - * \param [in] value Value to find least significant index - * \retval bitIndex Index of least significat bit at one - */ -__STATIC_INLINE uint8_t __ffs( uint32_t value ) -{ - return( uint32_t )( 32 - __CLZ( value & ( -value ) ) ); -} - -/*! - * MCU SPI peripherals enumeration - */ -typedef enum { - SPI_1 = ( uint32_t )SPI1_BASE, - SPI_2 = ( uint32_t )SPI2_BASE, - SPI_3 = ( uint32_t )SPI3_BASE, -} SPIName; - -SPI_InitTypeDef SPI_InitStructure; - -void SpiInit( Spi_t *obj, PinNames mosi, PinNames miso, PinNames sclk, PinNames nss ) -{ - GpioInit( &obj->Mosi, mosi, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); - GpioInit( &obj->Miso, miso, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); - GpioInit( &obj->Sclk, sclk, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); - - // TODO: Make independent of stm32l1xx_gpio.h - GPIO_PinAFConfig( obj->Mosi.port, ( obj->Mosi.pin & 0x0F ), GPIO_AF_SPI1 ); - GPIO_PinAFConfig( obj->Miso.port, ( obj->Miso.pin & 0x0F ), GPIO_AF_SPI1 ); - GPIO_PinAFConfig( obj->Sclk.port, ( obj->Sclk.pin & 0x0F ), GPIO_AF_SPI1 ); - - if( nss != NC ) - { - GpioInit( &obj->Nss, nss, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_UP, 1 ); - // TODO: Make independent of stm32l1xx_gpio.h - GPIO_PinAFConfig( obj->Nss.port, ( obj->Nss.pin & 0x0F ), GPIO_AF_SPI1 ); - } - else - { - SPI_InitStructure.SPI_NSS = SPI_NSS_Soft; - } - - // Choose SPI interface according to the given pins - obj->Spi = ( SPI_TypeDef* )SPI1_BASE; - RCC_APB2PeriphClockCmd( RCC_APB2Periph_SPI1, ENABLE ); - - if( nss == NC ) - { - // 8 bits, CPOL = 0, CPHA = 0, MASTER - SpiFormat( obj, 8, 0, 0, 0 ); - } - else - { - // 8 bits, CPOL = 0, CPHA = 0, SLAVE - SpiFormat( obj, 8, 0, 0, 1 ); - } - SpiFrequency( obj, 10000000 ); - - SPI_Cmd( obj->Spi, ENABLE ); -} - -void SpiDeInit( Spi_t *obj ) -{ - SPI_Cmd( obj->Spi, DISABLE ); - SPI_I2S_DeInit( obj->Spi ); - - GpioInit( &obj->Mosi, obj->Mosi.pin, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &obj->Miso, obj->Miso.pin, PIN_OUTPUT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); - GpioInit( &obj->Sclk, obj->Sclk.pin, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &obj->Nss, obj->Nss.pin, PIN_OUTPUT, PIN_PUSH_PULL, PIN_PULL_UP, 1 ); - -} - -void SpiFormat( Spi_t *obj, int8_t bits, int8_t cpol, int8_t cpha, int8_t slave ) -{ - SPI_Cmd( obj->Spi, DISABLE ); - - if( ( ( ( bits == 8 ) || ( bits == 16 ) ) == false ) || - ( ( ( cpol >= 0 ) && ( cpol <= 1 ) ) == false ) || - ( ( ( cpha >= 0 ) && ( cpha <= 1 ) ) == false ) ) - { - // SPI error - while( 1 ); - } - - SPI_InitStructure.SPI_Mode = ( slave == 0x01 ) ? SPI_Mode_Slave : SPI_Mode_Master; - SPI_InitStructure.SPI_CPOL = ( cpol == 0x01 ) ? SPI_CPOL_High : SPI_CPOL_Low; - SPI_InitStructure.SPI_CPHA = ( cpha == 0x01 ) ? SPI_CPHA_2Edge : SPI_CPHA_1Edge; - SPI_InitStructure.SPI_DataSize = ( bits == 8 ) ? SPI_DataSize_8b : SPI_DataSize_16b; - SPI_Init( obj->Spi, &SPI_InitStructure ); - - SPI_Cmd( obj->Spi, ENABLE ); -} - -void SpiFrequency( Spi_t *obj, uint32_t hz ) -{ - uint32_t divisor; - - SPI_Cmd( obj->Spi, DISABLE ); - - divisor = SystemCoreClock / hz; - - // Find the nearest power-of-2 - divisor = divisor > 0 ? divisor-1 : 0; - divisor |= divisor >> 1; - divisor |= divisor >> 2; - divisor |= divisor >> 4; - divisor |= divisor >> 8; - divisor |= divisor >> 16; - divisor++; - - divisor = __ffs( divisor ) - 1; - - divisor = ( divisor > 0x07 ) ? 0x07 : divisor; - - SPI_InitStructure.SPI_BaudRatePrescaler = divisor << 3; - SPI_Init( obj->Spi, &SPI_InitStructure ); - - SPI_Cmd( obj->Spi, ENABLE ); -} - -uint16_t SpiInOut( Spi_t *obj, uint16_t outData ) -{ - if( ( obj == NULL ) || ( obj->Spi ) == NULL ) - { - while( 1 ); - } - - while( SPI_I2S_GetFlagStatus( obj->Spi, SPI_I2S_FLAG_TXE ) == RESET ); - SPI_I2S_SendData( obj->Spi, outData ); - while( SPI_I2S_GetFlagStatus( obj->Spi, SPI_I2S_FLAG_RXNE ) == RESET ); - return SPI_I2S_ReceiveData( obj->Spi ); -} - diff --git a/src/boards/Bleeper-72/spi-board.h b/src/boards/Bleeper-72/spi-board.h deleted file mode 100644 index 0dfbc8408..000000000 --- a/src/boards/Bleeper-72/spi-board.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper board SPI driver implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __SPI_MCU_H__ -#define __SPI_MCU_H__ - -/*! - * SPI driver structure definition - */ -struct Spi_s -{ - SPI_TypeDef *Spi; - Gpio_t Mosi; - Gpio_t Miso; - Gpio_t Sclk; - Gpio_t Nss; -}; - -#endif // __SPI_MCU_H__ diff --git a/src/boards/Bleeper-72/sx1272-board.c b/src/boards/Bleeper-72/sx1272-board.c deleted file mode 100644 index e6bac05ea..000000000 --- a/src/boards/Bleeper-72/sx1272-board.c +++ /dev/null @@ -1,152 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: SX1272 driver specific target board functions implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include "board.h" -#include "radio.h" -#include "sx1272/sx1272.h" -#include "sx1272-board.h" - -/*! - * Flag used to set the RF switch control pins in low power mode when the radio is not active. - */ -static bool RadioIsActive = false; - -/*! - * Radio driver structure initialization - */ -const struct Radio_s Radio = -{ - SX1272Init, - SX1272GetStatus, - SX1272SetModem, - SX1272SetChannel, - SX1272IsChannelFree, - SX1272Random, - SX1272SetRxConfig, - SX1272SetTxConfig, - SX1272CheckRfFrequency, - SX1272GetTimeOnAir, - SX1272Send, - SX1272SetSleep, - SX1272SetStby, - SX1272SetRx, - SX1272StartCad, - SX1272ReadRssi, - SX1272Write, - SX1272Read, - SX1272WriteBuffer, - SX1272ReadBuffer, - SX1272SetMaxPayloadLength -}; - -/*! - * Antenna switch GPIO pins objects - */ -Gpio_t AntRx; -Gpio_t AntTx; - -void SX1272IoInit( void ) -{ - GpioInit( &SX1272.Spi.Nss, RADIO_NSS, PIN_OUTPUT, PIN_PUSH_PULL, PIN_PULL_UP, 1 ); - - GpioInit( &SX1272.DIO0, RADIO_DIO_0, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); - GpioInit( &SX1272.DIO1, RADIO_DIO_1, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); - GpioInit( &SX1272.DIO2, RADIO_DIO_2, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); - GpioInit( &SX1272.DIO3, RADIO_DIO_3, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); - GpioInit( &SX1272.DIO4, RADIO_DIO_4, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); - GpioInit( &SX1272.DIO5, RADIO_DIO_5, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); -} - -void SX1272IoIrqInit( DioIrqHandler **irqHandlers ) -{ - GpioSetInterrupt( &SX1272.DIO0, IRQ_RISING_EDGE, IRQ_HIGH_PRIORITY, irqHandlers[0] ); - GpioSetInterrupt( &SX1272.DIO1, IRQ_RISING_EDGE, IRQ_HIGH_PRIORITY, irqHandlers[1] ); - GpioSetInterrupt( &SX1272.DIO2, IRQ_RISING_EDGE, IRQ_HIGH_PRIORITY, irqHandlers[2] ); - GpioSetInterrupt( &SX1272.DIO3, IRQ_RISING_EDGE, IRQ_HIGH_PRIORITY, irqHandlers[3] ); - GpioSetInterrupt( &SX1272.DIO4, IRQ_RISING_EDGE, IRQ_HIGH_PRIORITY, irqHandlers[4] ); - GpioSetInterrupt( &SX1272.DIO5, IRQ_RISING_EDGE, IRQ_HIGH_PRIORITY, irqHandlers[5] ); -} - -void SX1272IoDeInit( void ) -{ - GpioInit( &SX1272.Spi.Nss, RADIO_NSS, PIN_OUTPUT, PIN_PUSH_PULL, PIN_PULL_UP, 1 ); - - GpioInit( &SX1272.DIO0, RADIO_DIO_0, PIN_INPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &SX1272.DIO1, RADIO_DIO_1, PIN_INPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &SX1272.DIO2, RADIO_DIO_2, PIN_INPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &SX1272.DIO3, RADIO_DIO_3, PIN_INPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &SX1272.DIO4, RADIO_DIO_4, PIN_INPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &SX1272.DIO5, RADIO_DIO_5, PIN_INPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); -} - -uint8_t SX1272GetPaSelect( uint32_t channel ) -{ - return RF_PACONFIG_PASELECT_RFO; -} - -void SX1272SetAntSwLowPower( bool status ) -{ - if( RadioIsActive != status ) - { - RadioIsActive = status; - - if( status == false ) - { - SX1272AntSwInit( ); - } - else - { - SX1272AntSwDeInit( ); - } - } -} - -void SX1272AntSwInit( void ) -{ - GpioInit( &AntTx, RADIO_ANT_SWITCH_TX, PIN_OUTPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); - GpioInit( &AntRx, RADIO_ANT_SWITCH_RX, PIN_OUTPUT, PIN_PUSH_PULL, PIN_PULL_UP, 1 ); -} - -void SX1272AntSwDeInit( void ) -{ - GpioInit( &AntTx, RADIO_ANT_SWITCH_TX, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &AntRx, RADIO_ANT_SWITCH_RX, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); -} - -void SX1272SetAntSw( uint8_t rxTx ) -{ - if( SX1272.RxTx == rxTx ) - { - return; - } - - SX1272.RxTx = rxTx; - - if( rxTx != 0 ) // 1: TX, 0: RX - { - GpioWrite( &AntRx, 0 ); - GpioWrite( &AntTx, 1 ); - } - else - { - GpioWrite( &AntRx, 1 ); - GpioWrite( &AntTx, 0 ); - } -} - -bool SX1272CheckRfFrequency( uint32_t frequency ) -{ - // Implement check. Currently all frequencies are supportted - return true; -} diff --git a/src/boards/Bleeper-72/sx1272-board.h b/src/boards/Bleeper-72/sx1272-board.h deleted file mode 100644 index e5272e65b..000000000 --- a/src/boards/Bleeper-72/sx1272-board.h +++ /dev/null @@ -1,111 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: SX1272 driver specific target board functions implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __SX1272_ARCH_H__ -#define __SX1272_ARCH_H__ - -/*! - * \brief Radio hardware registers initialization definition - * - * \remark Can be automatically generated by the SX1272 GUI (not yet implemented) - */ -#define RADIO_INIT_REGISTERS_VALUE \ -{ \ - { MODEM_FSK , REG_LNA , 0x23 },\ - { MODEM_FSK , REG_RXCONFIG , 0x1E },\ - { MODEM_FSK , REG_RSSICONFIG , 0xD2 },\ - { MODEM_FSK , REG_PREAMBLEDETECT , 0xAA },\ - { MODEM_FSK , REG_OSC , 0x07 },\ - { MODEM_FSK , REG_SYNCCONFIG , 0x12 },\ - { MODEM_FSK , REG_SYNCVALUE1 , 0xC1 },\ - { MODEM_FSK , REG_SYNCVALUE2 , 0x94 },\ - { MODEM_FSK , REG_SYNCVALUE3 , 0xC1 },\ - { MODEM_FSK , REG_PACKETCONFIG1 , 0xD8 },\ - { MODEM_FSK , REG_FIFOTHRESH , 0x8F },\ - { MODEM_FSK , REG_IMAGECAL , 0x02 },\ - { MODEM_FSK , REG_DIOMAPPING1 , 0x00 },\ - { MODEM_FSK , REG_DIOMAPPING2 , 0x30 },\ - { MODEM_LORA, REG_LR_DETECTOPTIMIZE , 0x43 },\ - { MODEM_LORA, REG_LR_PAYLOADMAXLENGTH, 0x40 },\ -} \ - -/*! - * \brief Initializes the radio I/Os pins interface - */ -void SX1272IoInit( void ); - -/*! - * \brief Initializes DIO IRQ handlers - * - * \param [IN] irqHandlers Array containing the IRQ callback functions - */ -void SX1272IoIrqInit( DioIrqHandler **irqHandlers ); - -/*! - * \brief De-initializes the radio I/Os pins interface. - * - * \remark Useful when going in MCU lowpower modes - */ -void SX1272IoDeInit( void ); - -/*! - * \brief Gets the board PA selection configuration - * - * \param [IN] channel Channel frequency in Hz - * \retval PaSelect RegPaConfig PaSelect value - */ -uint8_t SX1272GetPaSelect( uint32_t channel ); - -/*! - * \brief Set the RF Switch I/Os pins in Low Power mode - * - * \param [IN] status enable or disable - */ -void SX1272SetAntSwLowPower( bool status ); - -/*! - * \brief Initializes the RF Switch I/Os pins interface - */ -void SX1272AntSwInit( void ); - -/*! - * \brief De-initializes the RF Switch I/Os pins interface - * - * \remark Needed to decrease the power consumption in MCU lowpower modes - */ -void SX1272AntSwDeInit( void ); - -/*! - * \brief Controls the antena switch if necessary. - * - * \remark see errata note - * - * \param [IN] rxTx [1: Tx, 0: Rx] - */ -void SX1272SetAntSw( uint8_t rxTx ); - -/*! - * \brief Checks if the given RF frequency is supported by the hardware - * - * \param [IN] frequency RF frequency to be checked - * \retval isSupported [true: supported, false: unsupported] - */ -bool SX1272CheckRfFrequency( uint32_t frequency ); - -/*! - * Radio hardware and global parameters - */ -extern SX1272_t SX1272; - -#endif // __SX1272_ARCH_H__ diff --git a/src/boards/Bleeper-72/timer-board.c b/src/boards/Bleeper-72/timer-board.c deleted file mode 100644 index 84724e99c..000000000 --- a/src/boards/Bleeper-72/timer-board.c +++ /dev/null @@ -1,260 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: MCU RTC timer and low power modes management - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include "board.h" -#include "timer-board.h" - -/*! - * Hardware Time base in us - */ -#define HW_TIMER_TIME_BASE 100 //us - -/*! - * Hardware Timer tick counter - */ -volatile TimerTime_t TimerTickCounter = 1; - -/*! - * Saved value of the Tick counter at the start of the next event - */ -static TimerTime_t TimerTickCounterContext = 0; - -/*! - * Value trigging the IRQ - */ -volatile TimerTime_t TimeoutCntValue = 0; - -/*! - * Increment the Hardware Timer tick counter - */ -void TimerIncrementTickCounter( void ); - -/*! - * Counter used for the Delay operations - */ -volatile uint32_t TimerDelayCounter = 0; - -/*! - * Return the value of the counter used for a Delay - */ -uint32_t TimerHwGetDelayValue( void ); - -/*! - * Increment the value of TimerDelayCounter - */ -void TimerIncrementDelayCounter( void ); - - -void TimerHwInit( void ) -{ - NVIC_InitTypeDef NVIC_InitStructure; - TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; - - /* TIM2 clock enable */ - RCC_APB1PeriphClockCmd( RCC_APB1Periph_TIM2, ENABLE ); - - /* --------------------------NVIC Configuration -------------------------------*/ - /* Enable the TIM2 gloabal Interrupt */ - NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn; - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; - NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; - - NVIC_Init( &NVIC_InitStructure ); - - TimeoutCntValue = 0; - - /* Time base configuration */ - TIM_TimeBaseStructure.TIM_Period = 3199; - TIM_TimeBaseStructure.TIM_Prescaler = 0; - TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; - TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; - TIM_TimeBaseInit( TIM2, &TIM_TimeBaseStructure ); - - TIM_ITConfig( TIM2, TIM_IT_Update, ENABLE ); - - /* TIM2 disable counter */ - TIM_Cmd( TIM2, ENABLE ); - - /* TIM3 clock enable */ - RCC_APB1PeriphClockCmd( RCC_APB1Periph_TIM3, ENABLE ); - - /* --------------------------NVIC Configuration -------------------------------*/ - /* Enable the TIM3 gloabal Interrupt */ - NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQn; - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; - - NVIC_Init( &NVIC_InitStructure ); - - /* Time base configuration */ - TIM_TimeBaseStructure.TIM_Period = 3199; - TIM_TimeBaseStructure.TIM_Prescaler = 10; - TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; - TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; - TIM_TimeBaseInit( TIM3, &TIM_TimeBaseStructure ); - - TIM_ITConfig( TIM3, TIM_IT_Update, DISABLE ); - - /* TIM3 disable counter */ - TIM_Cmd( TIM3, DISABLE ); - - - TIM_ITConfig( TIM3, TIM_IT_Update, ENABLE ); - TIM_Cmd( TIM3, ENABLE ); - -} - -void TimerHwDeInit( void ) -{ - /* Deinitialize the timer */ - TIM_DeInit( TIM2 ); -} - -uint32_t TimerHwGetMinimumTimeout( void ) -{ - return( ceil( 2 * HW_TIMER_TIME_BASE ) ); -} - -void TimerHwStart( uint32_t val ) -{ - TimerTickCounterContext = TimerHwGetTimerValue( ); - - if( val <= HW_TIMER_TIME_BASE + 1 ) - { - TimeoutCntValue = TimerTickCounterContext + 1; - } - else - { - TimeoutCntValue = TimerTickCounterContext + ( ( val - 1 ) / HW_TIMER_TIME_BASE ); - } -} - -void TimerHwStop( void ) -{ - TIM_ITConfig( TIM2, TIM_IT_CC1, DISABLE ); - TIM_Cmd( TIM2, DISABLE ); -} - -void TimerHwDelayMs( uint32_t delay ) -{ - uint32_t delayValue = 0; - - delayValue = delay; - - TimerDelayCounter = 0; - - TIM_ITConfig( TIM3, TIM_IT_Update, ENABLE ); - TIM_Cmd( TIM3, ENABLE ); - - while( TimerHwGetDelayValue( ) < delayValue ) - { - } - - TIM_ITConfig( TIM3, TIM_IT_Update, DISABLE ); - TIM_Cmd( TIM3, DISABLE ); -} - -TimerTime_t TimerHwGetElapsedTime( void ) -{ - return( ( ( TimerHwGetTimerValue( ) - TimerTickCounterContext ) + 1 ) * HW_TIMER_TIME_BASE ); -} - -TimerTime_t TimerHwGetTimerValue( void ) -{ - TimerTime_t val = 0; - - __disable_irq( ); - - val = TimerTickCounter; - - __enable_irq( ); - - return( val ); -} - -TimerTime_t TimerHwGetTime( void ) -{ - - return TimerHwGetTimerValue( ) * HW_TIMER_TIME_BASE; -} - -uint32_t TimerHwGetDelayValue( void ) -{ - uint32_t val = 0; - - __disable_irq( ); - - val = TimerDelayCounter; - - __enable_irq( ); - - return( val ); -} - -void TimerIncrementTickCounter( void ) -{ - __disable_irq( ); - - TimerTickCounter++; - - __enable_irq( ); -} - -void TimerIncrementDelayCounter( void ) -{ - __disable_irq( ); - - TimerDelayCounter++; - - __enable_irq( ); -} - -/*! - * Timer IRQ handler - */ -void TIM2_IRQHandler( void ) -{ - if( TIM_GetITStatus( TIM2, TIM_IT_Update ) != RESET ) - { - TimerIncrementTickCounter( ); - TIM_ClearITPendingBit( TIM2, TIM_IT_Update ); - - if( TimerTickCounter == TimeoutCntValue ) - { - TimerIrqHandler( ); - } - } -} - -/*! - * Timer IRQ handler - */ -void TIM3_IRQHandler( void ) -{ - if( TIM_GetITStatus( TIM3, TIM_IT_Update ) != RESET ) - { - TimerIncrementDelayCounter( ); - TIM_ClearITPendingBit( TIM3, TIM_IT_Update ); - } -} - -void TimerHwEnterLowPowerStopMode( void ) -{ -#ifndef USE_DEBUGGER - __WFI( ); -#endif -} diff --git a/src/boards/Bleeper-72/timer-board.h b/src/boards/Bleeper-72/timer-board.h deleted file mode 100644 index a0734d70c..000000000 --- a/src/boards/Bleeper-72/timer-board.h +++ /dev/null @@ -1,83 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: MCU timer - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __TIMER_BOARD_H__ -#define __TIMER_BOARD_H__ - -/*! - * \brief Timer time variable definition - */ -#ifndef TimerTime_t -typedef uint64_t TimerTime_t; -#endif - -/*! - * \brief Initializes the timer - * - * \remark The timer is based on TIM2 with a 10uS time basis - */ -void TimerHwInit( void ); - -/*! - * \brief DeInitializes the timer - */ -void TimerHwDeInit( void ); - -/*! - * \brief Return the minimum timeout the Timer is able to handle - * - * \retval minimum value for a timeout - */ -uint32_t TimerHwGetMinimumTimeout( void ); - -/*! - * \brief Start the Standard Timer counter - * - * \param [IN] rtcCounter Timer duration - */ -void TimerHwStart( uint32_t rtcCounter ); - -/*! - * \brief Perfoms a standard blocking delay in the code execution - * - * \param [IN] delay Delay value in ms - */ -void TimerHwDelayMs( uint32_t delay ); - -/*! - * \brief Stop the the Standard Timer counter - */ -void TimerHwStop( void ); - -/*! - * \brief Return the value of the timer counter - */ -TimerTime_t TimerHwGetTimerValue( void ); - -/*! - * \brief Return the value of the current time in us - */ -TimerTime_t TimerHwGetTime( void ); - -/*! - * \brief Return the value on the timer Tick counter - */ -TimerTime_t TimerHwGetElapsedTime( void ); - -/*! - * \brief Set the ARM core in Wait For Interrupt mode (only working if Debug mode is not used) - */ -void TimerHwEnterLowPowerStopMode( void ); - -#endif // __TIMER_BOARD_H__ diff --git a/src/boards/Bleeper-76/LoRaMac-board.h b/src/boards/Bleeper-76/LoRaMac-board.h deleted file mode 100644 index 946d25e63..000000000 --- a/src/boards/Bleeper-76/LoRaMac-board.h +++ /dev/null @@ -1,444 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: LoRa MAC layer board dependent definitions - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __LORAMAC_BOARD_H__ -#define __LORAMAC_BOARD_H__ - -/*! - * Returns individual channel mask - * - * \param[IN] channelIndex Channel index 1 based - * \retval channelMask - */ -#define LC( channelIndex ) ( uint16_t )( 1 << ( channelIndex - 1 ) ) - -#if defined( USE_BAND_433 ) - -/*! - * LoRaMac maximum number of channels - */ -#define LORA_MAX_NB_CHANNELS 16 - -/*! - * Minimal datarate that can be used by the node - */ -#define LORAMAC_MIN_DATARATE DR_0 - -/*! - * Minimal datarate that can be used by the node - */ -#define LORAMAC_MAX_DATARATE DR_7 - -/*! - * Default datarate used by the node - */ -#define LORAMAC_DEFAULT_DATARATE DR_0 - -/*! - * Minimal Rx1 receive datarate offset - */ -#define LORAMAC_MIN_RX1_DR_OFFSET 0 - -/*! - * Maximal Rx1 receive datarate offset - */ -#define LORAMAC_MAX_RX1_DR_OFFSET 5 - -/*! - * Minimal Tx output power that can be used by the node - */ -#define LORAMAC_MIN_TX_POWER TX_POWER_M5_DBM - -/*! - * Minimal Tx output power that can be used by the node - */ -#define LORAMAC_MAX_TX_POWER TX_POWER_10_DBM - -/*! - * Default Tx output power used by the node - */ -#define LORAMAC_DEFAULT_TX_POWER TX_POWER_10_DBM - -/*! - * LoRaMac TxPower definition - */ -#define TX_POWER_10_DBM 0 -#define TX_POWER_07_DBM 1 -#define TX_POWER_04_DBM 2 -#define TX_POWER_01_DBM 3 -#define TX_POWER_M2_DBM 4 -#define TX_POWER_M5_DBM 5 - -/*! - * LoRaMac datarates definition - */ -#define DR_0 0 // SF12 - BW125 -#define DR_1 1 // SF11 - BW125 -#define DR_2 2 // SF10 - BW125 -#define DR_3 3 // SF9 - BW125 -#define DR_4 4 // SF8 - BW125 -#define DR_5 5 // SF7 - BW125 -#define DR_6 6 // SF7 - BW250 -#define DR_7 7 // FSK - -/*! - * Second reception window channel definition. - */ -// Channel = { Frequency [Hz], Datarate } -#define RX_WND_2_CHANNEL { 434665000, DR_0 } - -/*! - * LoRaMac maximum number of bands - */ -#define LORA_MAX_NB_BANDS 1 - -// Band = { DutyCycle, TxMaxPower, LastTxDoneTime, TimeOff } -#define BAND0 { 100, TX_POWER_10_DBM, 0, 0 } // 1.0 % - -/*! - * LoRaMac default channels - */ -// Channel = { Frequency [Hz], { ( ( DrMax << 4 ) | DrMin ) }, Band } -#define LC1 { 433175000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC2 { 433375000, { ( ( DR_7 << 4 ) | DR_0 ) }, 0 } -#define LC3 { 433575000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } - -#elif defined( USE_BAND_780 ) - -/*! - * LoRaMac maximum number of channels - */ -#define LORA_MAX_NB_CHANNELS 16 - -/*! - * Minimal datarate that can be used by the node - */ -#define LORAMAC_MIN_DATARATE DR_0 - -/*! - * Minimal datarate that can be used by the node - */ -#define LORAMAC_MAX_DATARATE DR_7 - -/*! - * Default datarate used by the node - */ -#define LORAMAC_DEFAULT_DATARATE DR_0 - -/*! - * Minimal Rx1 receive datarate offset - */ -#define LORAMAC_MIN_RX1_DR_OFFSET 0 - -/*! - * Maximal Rx1 receive datarate offset - */ -#define LORAMAC_MAX_RX1_DR_OFFSET 5 - -/*! - * Minimal Tx output power that can be used by the node - */ -#define LORAMAC_MIN_TX_POWER TX_POWER_M5_DBM - -/*! - * Minimal Tx output power that can be used by the node - */ -#define LORAMAC_MAX_TX_POWER TX_POWER_10_DBM - -/*! - * Default Tx output power used by the node - */ -#define LORAMAC_DEFAULT_TX_POWER TX_POWER_10_DBM - -/*! - * LoRaMac TxPower definition - */ -#define TX_POWER_10_DBM 0 -#define TX_POWER_07_DBM 1 -#define TX_POWER_04_DBM 2 -#define TX_POWER_01_DBM 3 -#define TX_POWER_M2_DBM 4 -#define TX_POWER_M5_DBM 5 - -/*! - * LoRaMac datarates definition - */ -#define DR_0 0 // SF12 - BW125 -#define DR_1 1 // SF11 - BW125 -#define DR_2 2 // SF10 - BW125 -#define DR_3 3 // SF9 - BW125 -#define DR_4 4 // SF8 - BW125 -#define DR_5 5 // SF7 - BW125 -#define DR_6 6 // SF7 - BW250 -#define DR_7 7 // FSK - -/*! - * Second reception window channel definition. - */ -// Channel = { Frequency [Hz], Datarate } -#define RX_WND_2_CHANNEL { 786000000, DR_0 } - -/*! - * LoRaMac maximum number of bands - */ -#define LORA_MAX_NB_BANDS 1 - -// Band = { DutyCycle, TxMaxPower, LastTxDoneTime, TimeOff } -#define BAND0 { 100, TX_POWER_10_DBM, 0, 0 } // 1.0 % - -/*! - * LoRaMac default channels - */ -// Channel = { Frequency [Hz], { ( ( DrMax << 4 ) | DrMin ) }, Band } -#define LC1 { 779500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC2 { 779700000, { ( ( DR_7 << 4 ) | DR_0 ) }, 0 } -#define LC3 { 779900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } - -#elif defined( USE_BAND_868 ) - -/*! - * LoRaMac maximum number of channels - */ -#define LORA_MAX_NB_CHANNELS 16 - -/*! - * Minimal datarate that can be used by the node - */ -#define LORAMAC_MIN_DATARATE DR_0 - -/*! - * Minimal datarate that can be used by the node - */ -#define LORAMAC_MAX_DATARATE DR_7 - -/*! - * Default datarate used by the node - */ -#define LORAMAC_DEFAULT_DATARATE DR_0 - -/*! - * Minimal Rx1 receive datarate offset - */ -#define LORAMAC_MIN_RX1_DR_OFFSET 0 - -/*! - * Maximal Rx1 receive datarate offset - */ -#define LORAMAC_MAX_RX1_DR_OFFSET 5 - -/*! - * Minimal Tx output power that can be used by the node - */ -#define LORAMAC_MIN_TX_POWER TX_POWER_02_DBM - -/*! - * Minimal Tx output power that can be used by the node - */ -#define LORAMAC_MAX_TX_POWER TX_POWER_20_DBM - -/*! - * Default Tx output power used by the node - */ -#define LORAMAC_DEFAULT_TX_POWER TX_POWER_14_DBM - -/*! - * LoRaMac TxPower definition - */ -#define TX_POWER_20_DBM 0 -#define TX_POWER_14_DBM 1 -#define TX_POWER_11_DBM 2 -#define TX_POWER_08_DBM 3 -#define TX_POWER_05_DBM 4 -#define TX_POWER_02_DBM 5 - -/*! - * LoRaMac datarates definition - */ -#define DR_0 0 // SF12 - BW125 -#define DR_1 1 // SF11 - BW125 -#define DR_2 2 // SF10 - BW125 -#define DR_3 3 // SF9 - BW125 -#define DR_4 4 // SF8 - BW125 -#define DR_5 5 // SF7 - BW125 -#define DR_6 6 // SF7 - BW250 -#define DR_7 7 // FSK - -/*! - * Second reception window channel definition. - */ -// Channel = { Frequency [Hz], Datarate } -#define RX_WND_2_CHANNEL { 869525000, DR_0 } - -/*! - * LoRaMac maximum number of bands - */ -#define LORA_MAX_NB_BANDS 5 - -/*! - * LoRaMac EU868 default bands - */ -typedef enum -{ - BAND_G1_0, - BAND_G1_1, - BAND_G1_2, - BAND_G1_3, - BAND_G1_4, -}BandId_t; - -// Band = { DutyCycle, TxMaxPower, LastTxDoneTime, TimeOff } -#define BAND0 { 100 , TX_POWER_14_DBM, 0, 0 } // 1.0 % -#define BAND1 { 100 , TX_POWER_14_DBM, 0, 0 } // 1.0 % -#define BAND2 { 1000, TX_POWER_14_DBM, 0, 0 } // 0.1 % -#define BAND3 { 10 , TX_POWER_14_DBM, 0, 0 } // 10.0 % -#define BAND4 { 100 , TX_POWER_14_DBM, 0, 0 } // 1.0 % - -/*! - * LoRaMac default channels - */ -// Channel = { Frequency [Hz], { ( ( DrMax << 4 ) | DrMin ) }, Band } -#define LC1 { 868100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 1 } -#define LC2 { 868300000, { ( ( DR_6 << 4 ) | DR_0 ) }, 1 } -#define LC3 { 868500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 1 } -#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } - -#elif defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) - -/*! - * LoRaMac maximum number of channels - */ -#define LORA_MAX_NB_CHANNELS 72 - -/*! - * Minimal datarate that can be used by the node - */ -#define LORAMAC_MIN_DATARATE DR_0 - -/*! - * Minimal datarate that can be used by the node - */ -#define LORAMAC_MAX_DATARATE DR_4 - -/*! - * Default datarate used by the node - */ -#define LORAMAC_DEFAULT_DATARATE DR_0 - -/*! - * Minimal Rx1 receive datarate offset - */ -#define LORAMAC_MIN_RX1_DR_OFFSET 0 - -/*! - * Maximal Rx1 receive datarate offset - */ -#define LORAMAC_MAX_RX1_DR_OFFSET 3 - -/*! - * Minimal Tx output power that can be used by the node - */ -#define LORAMAC_MIN_TX_POWER TX_POWER_10_DBM - -/*! - * Minimal Tx output power that can be used by the node - */ -#define LORAMAC_MAX_TX_POWER TX_POWER_30_DBM - -/*! - * Default Tx output power used by the node - */ -#define LORAMAC_DEFAULT_TX_POWER TX_POWER_20_DBM - -/*! - * LoRaMac TxPower definition - */ -#define TX_POWER_30_DBM 0 -#define TX_POWER_28_DBM 1 -#define TX_POWER_26_DBM 2 -#define TX_POWER_24_DBM 3 -#define TX_POWER_22_DBM 4 -#define TX_POWER_20_DBM 5 -#define TX_POWER_18_DBM 6 -#define TX_POWER_16_DBM 7 -#define TX_POWER_14_DBM 8 -#define TX_POWER_12_DBM 9 -#define TX_POWER_10_DBM 10 - -/*! - * LoRaMac datarates definition - */ -#define DR_0 0 // SF10 - BW125 | -#define DR_1 1 // SF9 - BW125 | -#define DR_2 2 // SF8 - BW125 +-> Up link -#define DR_3 3 // SF7 - BW125 | -#define DR_4 4 // SF8 - BW500 | -#define DR_5 5 // RFU -#define DR_6 6 // RFU -#define DR_7 7 // RFU -#define DR_8 8 // SF12 - BW500 | -#define DR_9 9 // SF11 - BW500 | -#define DR_10 10 // SF10 - BW500 | -#define DR_11 11 // SF9 - BW500 | -#define DR_12 12 // SF8 - BW500 +-> Down link -#define DR_13 13 // SF7 - BW500 | -#define DR_14 14 // RFU | -#define DR_15 15 // RFU | - -/*! - * Second reception window channel definition. - */ -// Channel = { Frequency [Hz], Datarate } -#define RX_WND_2_CHANNEL { 923300000, DR_8 } - -/*! - * LoRaMac maximum number of bands - */ -#define LORA_MAX_NB_BANDS 1 - -// Band = { DutyCycle, TxMaxPower, LastTxDoneTime, TimeOff } -#define BAND0 { 1, TX_POWER_20_DBM, 0, 0 } // 100.0 % - -/*! - * LoRaMac default channels - */ -// Channel = { Frequency [Hz], { ( ( DrMax << 4 ) | DrMin ) }, Band } -/* - * US band channels are initialized using a loop in LoRaMacInit function - * \code - * // 125 kHz channels - * for( uint8_t i = 0; i < LORA_MAX_NB_CHANNELS - 8; i++ ) - * { - * Channels[i].Frequency = 902.3e6 + i * 200e3; - * Channels[i].DrRange.Value = ( DR_3 << 4 ) | DR_0; - * Channels[i].Band = 0; - * } - * // 500 kHz channels - * for( uint8_t i = LORA_MAX_NB_CHANNELS - 8; i < LORA_MAX_NB_CHANNELS; i++ ) - * { - * Channels[i].Frequency = 903.0e6 + ( i - ( LORA_MAX_NB_CHANNELS - 8 ) ) * 1.6e6; - * Channels[i].DrRange.Value = ( DR_4 << 4 ) | DR_4; - * Channels[i].Band = 0; - * } - * \endcode - */ -#else - #error "Please define a frequency band in the compiler options." -#endif - -#endif // __LORAMAC_BOARD_H__ diff --git a/src/boards/Bleeper-76/board.c b/src/boards/Bleeper-76/board.c deleted file mode 100644 index 200213094..000000000 --- a/src/boards/Bleeper-76/board.c +++ /dev/null @@ -1,284 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Target board general functions implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include "board.h" - -/*! - * Unique Devices IDs register set ( STM32L1xxx ) - */ -#define ID1 ( 0x1FF80050 ) -#define ID2 ( 0x1FF80054 ) -#define ID3 ( 0x1FF80064 ) - -/*! - * LED GPIO pins objects - */ -Gpio_t Led1; -Gpio_t Led2; -Gpio_t Led3; - -/*! - * Hex coder selector GPIO pins objects - */ -Gpio_t Sel1; -Gpio_t Sel2; -Gpio_t Sel3; -Gpio_t Sel4; - -#if defined( USE_DEBUG_PINS ) -Gpio_t DbgPin1; -Gpio_t DbgPin2; -Gpio_t DbgPin3; -Gpio_t DbgPin4; -#endif - -I2c_t I2c; - -/*! - * Initializes the unused GPIO to a know status - */ -static void BoardUnusedIoInit( void ); - -/*! - * Flag to indicate if the MCU is Initialized - */ -static bool McuInitialized = false; - -volatile uint8_t Led3Status = 1; - -void BoardInitPeriph( void ) -{ - GpioInit( &Sel1, SEL_1, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &Sel2, SEL_2, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &Sel3, SEL_3, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &Sel4, SEL_4, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - - GpioInit( &Led1, LED_1, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - GpioInit( &Led2, LED_2, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - GpioInit( &Led3, LED_3, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, Led3Status ); - - // Init temperature, pressure and altitude sensor - MPL3115Init( ); -} - -void BoardInitMcu( void ) -{ - if( McuInitialized == false ) - { - // We use IRQ priority group 4 for the entire project - // When setting the IRQ, only the preemption priority is used - NVIC_PriorityGroupConfig( NVIC_PriorityGroup_4 ); - - // Disable Systick - SysTick->CTRL &= ~SysTick_CTRL_TICKINT_Msk; // Systick IRQ off - SCB->ICSR |= SCB_ICSR_PENDSTCLR_Msk; // Clear SysTick Exception pending flag - - I2cInit( &I2c, I2C_SCL, I2C_SDA ); - - SpiInit( &SX1276.Spi, RADIO_MOSI, RADIO_MISO, RADIO_SCLK, NC ); - SX1276IoInit( ); - -#if defined( USE_DEBUG_PINS ) - GpioInit( &DbgPin1, J1_1, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &DbgPin2, J1_2, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &DbgPin3, J1_3, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &DbgPin4, J1_4, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); -#endif - BoardInitPeriph( ); - -#if( LOW_POWER_MODE_ENABLE ) - TimerSetLowPowerEnable( true ); -#else - TimerSetLowPowerEnable( false ); -#endif - BoardUnusedIoInit( ); - - if( TimerGetLowPowerEnable( ) == true ) - { - RtcInit( ); - } - else - { - TimerHwInit( ); - } - McuInitialized = true; - } -} - -void BoardDeInitMcu( void ) -{ - Gpio_t ioPin; - - I2cDeInit( &I2c ); - SpiDeInit( &SX1276.Spi ); - SX1276IoDeInit( ); - - GpioInit( &Led1, LED_1, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - GpioInit( &Led2, LED_2, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - Led3Status = GpioRead( &Led3 ); - if( Led3Status == 1 ) - { - GpioInit( &Led3, LED_3, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - } - - GpioInit( &Sel1, SEL_1, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &Sel2, SEL_2, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &Sel3, SEL_3, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &Sel4, SEL_4, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - -#if ( defined( USE_DEBUG_PINS ) && !defined( LOW_POWER_MODE_ENABLE ) ) - GpioInit( &DbgPin1, J1_1, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &DbgPin2, J1_2, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &DbgPin3, J1_3, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &DbgPin4, J1_4, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); -#endif - - GpioInit( &ioPin, OSC_HSE_IN, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - GpioInit( &ioPin, OSC_HSE_OUT, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - - GpioInit( &ioPin, OSC_LSE_IN, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_DOWN, 1 ); - GpioInit( &ioPin, OSC_LSE_OUT, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_DOWN, 1 ); - - McuInitialized = false; -} - -uint32_t BoardGetRandomSeed( void ) -{ - return ( ( *( uint32_t* )ID1 ) ^ ( *( uint32_t* )ID2 ) ^ ( *( uint32_t* )ID3 ) ); -} - -void BoardGetUniqueId( uint8_t *id ) -{ - id[7] = ( ( *( uint32_t* )ID1 )+ ( *( uint32_t* )ID3 ) ) >> 24; - id[6] = ( ( *( uint32_t* )ID1 )+ ( *( uint32_t* )ID3 ) ) >> 16; - id[5] = ( ( *( uint32_t* )ID1 )+ ( *( uint32_t* )ID3 ) ) >> 8; - id[4] = ( ( *( uint32_t* )ID1 )+ ( *( uint32_t* )ID3 ) ); - id[3] = ( ( *( uint32_t* )ID2 ) ) >> 24; - id[2] = ( ( *( uint32_t* )ID2 ) ) >> 16; - id[1] = ( ( *( uint32_t* )ID2 ) ) >> 8; - id[0] = ( ( *( uint32_t* )ID2 ) ); -} - -uint8_t BoardGetBatteryLevel( void ) -{ - uint8_t batteryLevel = 0; - uint8_t i, result = 0; - uint32_t tmpreg = 0; - - RCC_APB1PeriphClockCmd( RCC_APB1Periph_PWR, ENABLE ); - - PWR_PVDCmd( ENABLE ); // activate the voltage reference - DelayMs( 1 ); - - tmpreg = PWR->CR; // get the CR register for a read-modify-write - - for( i = 0; i <= 6; i++ ) - { - PWR->CR = ( ( tmpreg & 0xFFFFFF1F ) | ( i << 5 ) ); // set PVD level from 0 to 6 - DelayMs( 1 ); - if( PWR_GetFlagStatus( PWR_FLAG_PVDO ) == 1 ) - { - result |= 0x01 << i; // use 'result' as a bit array - } - } - PWR_PVDCmd( DISABLE ); // shut down voltage reference - - switch( result ) { // transcribe result and detect invalid codes - case 0x7F: - batteryLevel = 0x1F; // Vbat < 1.9V - break; - case 0x7E: - batteryLevel = 0x3F; // 1.9 < Vbat < 2.1 - break; - case 0x7C: - batteryLevel = 0x5F; // 2.1 < Vbat < 2.3 - break; - case 0x78: - batteryLevel = 0x7F; // 2.3 < Vbat < 2.5 - break; - case 0x70: - batteryLevel = 0x9F; // 2.5 < Vbat < 2.7 - break; - case 0x60: - batteryLevel = 0xBF; // 2.7 < Vbat < 2.9 - break; - case 0x40: - batteryLevel = 0xDF; // 2.9 < Vbat < 3.1 - break; - case 0x00: - batteryLevel = 0xFE; // Vbat > 3.1V - break; - default: - batteryLevel = 0xFF; // Fail - break; - } - return batteryLevel; -} - -static void BoardUnusedIoInit( void ) -{ - Gpio_t ioPin; - - /* Non Connected pin */ - GpioInit( &ioPin, NC_1, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, NC_2, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, NC_3, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, NC_4, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - - /* External Connector J5 */ -#if !defined( USE_DEBUG_PINS ) - GpioInit( &ioPin, J1_1, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, J1_2, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, J1_3, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, J1_4, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); -#endif - - /* External Connector J2 */ - GpioInit( &ioPin, J2_2, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, J2_3, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - - /* SD Card */ - GpioInit( &ioPin, NC_7, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, NC_8, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, NC_9, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, NC_10, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, NC_11, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, NC_12, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, NC_13, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - - /* USB */ -#if !defined( USE_USB_CDC ) - GpioInit( &ioPin, USB_DM, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, USB_DP, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); -#endif - - /* BOOT1 pin */ - GpioInit( &ioPin, BOOT_1, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - -#if defined( USE_DEBUGGER ) - DBGMCU_Config( DBGMCU_SLEEP, ENABLE ); - DBGMCU_Config( DBGMCU_STOP, ENABLE); - DBGMCU_Config( DBGMCU_STANDBY, ENABLE); -#else - DBGMCU_Config( DBGMCU_SLEEP, DISABLE ); - DBGMCU_Config( DBGMCU_STOP, DISABLE ); - DBGMCU_Config( DBGMCU_STANDBY, DISABLE ); - - GpioInit( &ioPin, JTAG_TMS, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, JTAG_TCK, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, JTAG_TDI, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, JTAG_TDO, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &ioPin, JTAG_NRST, PIN_ANALOGIC, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); -#endif -} diff --git a/src/boards/Bleeper-76/board.h b/src/boards/Bleeper-76/board.h deleted file mode 100644 index 5d5fe3be9..000000000 --- a/src/boards/Bleeper-76/board.h +++ /dev/null @@ -1,186 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Target board general functions implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __BOARD_H__ -#define __BOARD_H__ - -#include -#include -#include -#include -#include -#include "stm32l1xx.h" -#include "utilities.h" -#include "timer.h" -#include "delay.h" -#include "gpio.h" -#include "spi.h" -#include "i2c.h" -#include "radio.h" -#include "sx1276/sx1276.h" -#include "mpl3115.h" -#include "rtc-board.h" -#include "timer-board.h" -#include "sx1276-board.h" -#include "selector.h" - -/*! - * Generic definition - */ -#ifndef SUCCESS -#define SUCCESS 1 -#endif - -#ifndef FAIL -#define FAIL 0 -#endif - -/*! - * Board MCU pins definitions - */ -#define LED_1 PB_9 -#define LED_2 PB_8 -#define LED_3 PB_5 - -#define RADIO_RESET PC_2 - -#define RADIO_MOSI PA_7 -#define RADIO_MISO PA_6 -#define RADIO_SCLK PA_5 -#define RADIO_NSS PA_4 - -#define RADIO_DIO_0 PA_0 -#define RADIO_DIO_1 PA_1 -#define RADIO_DIO_2 PA_2 -#define RADIO_DIO_3 PA_3 -#define RADIO_DIO_4 PC_4 -#define RADIO_DIO_5 PC_5 - -#define RADIO_ANT_SWITCH_LF PC_0 -#define RADIO_ANT_SWITCH_HF PC_1 - -#define OSC_LSE_IN PC_14 -#define OSC_LSE_OUT PC_15 - -#define OSC_HSE_IN PH_0 -#define OSC_HSE_OUT PH_1 - -#define NC_1 PC_13 -#define NC_2 PC_3 -#define NC_3 PB_1 -#define NC_4 PA_10 - -#define J1_1 PB_12 -#define J1_2 PB_15 -#define J1_3 PB_14 -#define J1_4 PB_13 - -#define J2_2 PB_7 -#define J2_3 PB_6 - -#define SEL_1 PA_8 -#define SEL_2 PA_9 -#define SEL_3 PC_6 -#define SEL_4 PC_7 - -#define USB_DM PA_11 -#define USB_DP PA_12 - -#define BOOT_1 PB_2 - -#define JTAG_TMS PA_13 -#define JTAG_TCK PA_14 -#define JTAG_TDI PA_15 -#define JTAG_TDO PB_3 -#define JTAG_NRST PB_4 - -#define NC_7 PB_0 -#define NC_8 PC_8 -#define NC_9 PC_9 -#define NC_10 PC_10 -#define NC_11 PC_11 -#define NC_12 PC_12 -#define NC_13 PD_2 - -#define I2C_SCL PB_10 -#define I2C_SDA PB_11 - -/*! - * LED GPIO pins objects - */ -extern Gpio_t Led1; -extern Gpio_t Led2; -extern Gpio_t Led3; - -/*! - * Hex coder selector GPIO pins objects - */ -extern Gpio_t Sel1; -extern Gpio_t Sel2; -extern Gpio_t Sel3; -extern Gpio_t Sel4; - -/*! - * Debug GPIO pins objects - */ -#if defined( USE_DEBUG_PINS ) -extern Gpio_t DbgPin1; -extern Gpio_t DbgPin2; -extern Gpio_t DbgPin3; -extern Gpio_t DbgPin4; -#endif - -/*! - * MCU objects - */ -extern I2c_t I2c; - -/*! - * \brief Initializes the target board peripherals. - */ -void BoardInitMcu( void ); - -/*! - * \brief Initializes the boards peripherals. - */ -void BoardInitPeriph( void ); - -/*! - * \brief De-initializes the target board peripherals to decrease power - * consumption. - */ -void BoardDeInitMcu( void ); - -/*! - * \brief Get the current battery level - * - * \retval value battery level ( 0: very low, 254: fully charged ) - */ -uint8_t BoardGetBatteryLevel( void ); - -/*! - * Returns a pseudo random seed generated using the MCU Unique ID - * - * \retval seed Generated pseudo random seed - */ -uint32_t BoardGetRandomSeed( void ); - -/*! - * \brief Gets the board 64 bits unique ID - * - * \param [IN] id Pointer to an array that will contain the Unique ID - */ -void BoardGetUniqueId( uint8_t *id ); - -#endif // __BOARD_H__ diff --git a/src/boards/Bleeper-76/cmsis/arm-gcc/startup_stm32l1xx_hd.s b/src/boards/Bleeper-76/cmsis/arm-gcc/startup_stm32l1xx_hd.s deleted file mode 100644 index 926aad7e1..000000000 --- a/src/boards/Bleeper-76/cmsis/arm-gcc/startup_stm32l1xx_hd.s +++ /dev/null @@ -1,419 +0,0 @@ -/** - ****************************************************************************** - * @file startup_stm32l1xx_hd.s - * @author MCD Application Team - * @version V1.2.0 - * @date 22-February-2013 - * @brief STM32L1xx Ultra Low Power High-density Devices vector table for - * RIDE7 toolchain. - * This module performs: - * - Set the initial SP - * - Set the initial PC == Reset_Handler, - * - Set the vector table entries with the exceptions ISR address - * - 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 2013 STMicroelectronics

- * - * Licensed under MCD-ST Liberty SW License Agreement V2, (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.st.com/software_license_agreement_liberty_v2 - * - * 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. - * - ****************************************************************************** - */ - - .syntax unified - .cpu cortex-m3 - .fpu softvfp - .thumb - -.global g_pfnVectors -.global Default_Handler - -/* start address for the initialization values of the .data section. -defined in linker script */ -.word _sidata -/* start address for the .data section. defined in linker script */ -.word _sdata -/* end address for the .data section. defined in linker script */ -.word _edata -/* start address for the .bss section. defined in linker script */ -.word _sbss -/* end address for the .bss section. defined in linker script */ -.word _ebss - -.equ BootRAM, 0xF108F85F -/** - * @brief This is the code that gets called when the processor first - * starts execution following a reset event. Only the absolutely - * necessary set is performed, after which the application - * supplied main() routine is called. - * @param None - * @retval : None -*/ - - .section .text.Reset_Handler - .weak Reset_Handler - .type Reset_Handler, %function -Reset_Handler: - -/* Copy the data segment initializers from flash to SRAM */ - movs r1, #0 - b LoopCopyDataInit - -CopyDataInit: - ldr r3, =_sidata - ldr r3, [r3, r1] - str r3, [r0, r1] - adds r1, r1, #4 - -LoopCopyDataInit: - ldr r0, =_sdata - ldr r3, =_edata - adds r2, r0, r1 - cmp r2, r3 - bcc CopyDataInit - ldr r2, =_sbss - b LoopFillZerobss -/* Zero fill the bss segment. */ -FillZerobss: - movs r3, #0 - str r3, [r2], #4 - -LoopFillZerobss: - ldr r3, = _ebss - cmp r2, r3 - bcc FillZerobss -/* Call the clock system intitialization function.*/ - bl SystemInit -/* 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_STAMP_IRQHandler - .word RTC_WKUP_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_IRQHandler - .word USB_HP_IRQHandler - .word USB_LP_IRQHandler - .word DAC_IRQHandler - .word COMP_IRQHandler - .word EXTI9_5_IRQHandler - .word LCD_IRQHandler - .word TIM9_IRQHandler - .word TIM10_IRQHandler - .word TIM11_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 USB_FS_WKUP_IRQHandler - .word TIM6_IRQHandler - .word TIM7_IRQHandler - .word SDIO_IRQHandler - .word TIM5_IRQHandler - .word SPI3_IRQHandler - .word UART4_IRQHandler - .word UART5_IRQHandler - .word DMA2_Channel1_IRQHandler - .word DMA2_Channel2_IRQHandler - .word DMA2_Channel3_IRQHandler - .word DMA2_Channel4_IRQHandler - .word DMA2_Channel5_IRQHandler - .word AES_IRQHandler - .word COMP_ACQ_IRQHandler - .word 0 - .word 0 - .word 0 - .word 0 - .word 0 - .word BootRAM /* @0x108. This is for boot in RAM mode for - STM32L15x ULtra Low Power 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_STAMP_IRQHandler - .thumb_set TAMPER_STAMP_IRQHandler,Default_Handler - - .weak RTC_WKUP_IRQHandler - .thumb_set RTC_WKUP_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_IRQHandler - .thumb_set ADC1_IRQHandler,Default_Handler - - .weak USB_HP_IRQHandler - .thumb_set USB_HP_IRQHandler,Default_Handler - - .weak USB_LP_IRQHandler - .thumb_set USB_LP_IRQHandler,Default_Handler - - .weak DAC_IRQHandler - .thumb_set DAC_IRQHandler,Default_Handler - - .weak COMP_IRQHandler - .thumb_set COMP_IRQHandler,Default_Handler - - .weak EXTI9_5_IRQHandler - .thumb_set EXTI9_5_IRQHandler,Default_Handler - - .weak LCD_IRQHandler - .thumb_set LCD_IRQHandler,Default_Handler - - .weak TIM9_IRQHandler - .thumb_set TIM9_IRQHandler,Default_Handler - - .weak TIM10_IRQHandler - .thumb_set TIM10_IRQHandler,Default_Handler - - .weak TIM11_IRQHandler - .thumb_set TIM11_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 USB_FS_WKUP_IRQHandler - .thumb_set USB_FS_WKUP_IRQHandler,Default_Handler - - .weak TIM6_IRQHandler - .thumb_set TIM6_IRQHandler,Default_Handler - - .weak TIM7_IRQHandler - .thumb_set TIM7_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 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_IRQHandler - .thumb_set DMA2_Channel4_IRQHandler,Default_Handler - - .weak DMA2_Channel5_IRQHandler - .thumb_set DMA2_Channel5_IRQHandler,Default_Handler - - .weak AES_IRQHandler - .thumb_set AES_IRQHandler,Default_Handler - - .weak COMP_ACQ_IRQHandler - .thumb_set COMP_ACQ_IRQHandler,Default_Handler - -/************************* (C) COPYRIGHT STMicroelectronics *****END OF FILE***/ - diff --git a/src/boards/Bleeper-76/cmsis/arm-gcc/stm32l1xx_hd_flash.ld b/src/boards/Bleeper-76/cmsis/arm-gcc/stm32l1xx_hd_flash.ld deleted file mode 100644 index c9382e2b5..000000000 --- a/src/boards/Bleeper-76/cmsis/arm-gcc/stm32l1xx_hd_flash.ld +++ /dev/null @@ -1,131 +0,0 @@ -/* Memory regions.*/ -MEMORY -{ - FLASH (rx) : ORIGIN = 0x08000000, LENGTH = 384K - RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 48K -} - -/* Entry Point */ -ENTRY(Reset_Handler) - -_estack = 0x20000000 + 48K; - -/* Define output sections */ -SECTIONS -{ - .text : - { - KEEP(*(.isr_vector)) - *(.text*) - - KEEP(*(.init)) - KEEP(*(.fini)) - - /* .ctors */ - *crtbegin.o(.ctors) - *crtbegin?.o(.ctors) - *(EXCLUDE_FILE(*crtend?.o *crtend.o) .ctors) - *(SORT(.ctors.*)) - *(.ctors) - - /* .dtors */ - *crtbegin.o(.dtors) - *crtbegin?.o(.dtors) - *(EXCLUDE_FILE(*crtend?.o *crtend.o) .dtors) - *(SORT(.dtors.*)) - *(.dtors) - - *(.rodata*) - - KEEP(*(.eh_frame*)) - } > FLASH - - .ARM.extab : - { - *(.ARM.extab* .gnu.linkonce.armextab.*) - } > FLASH - - __exidx_start = .; - .ARM.exidx : - { - *(.ARM.exidx* .gnu.linkonce.armexidx.*) - } > FLASH - __exidx_end = .; - __etext = .; - - /* used by the startup to initialize data */ - _sidata = __etext; - - .data : AT (__etext) - { - __data_start__ = .; - _sdata = .; - *(vtable) - *(.data*) - - . = ALIGN(4); - /* preinit data */ - PROVIDE_HIDDEN (__preinit_array_start = .); - KEEP(*(.preinit_array)) - PROVIDE_HIDDEN (__preinit_array_end = .); - - . = ALIGN(4); - /* init data */ - PROVIDE_HIDDEN (__init_array_start = .); - KEEP(*(SORT(.init_array.*))) - KEEP(*(.init_array)) - PROVIDE_HIDDEN (__init_array_end = .); - - - . = ALIGN(4); - /* finit data */ - PROVIDE_HIDDEN (__fini_array_start = .); - KEEP(*(SORT(.fini_array.*))) - KEEP(*(.fini_array)) - PROVIDE_HIDDEN (__fini_array_end = .); - - KEEP(*(.jcr*)) - . = ALIGN(4); - /* All data end */ - __data_end__ = .; - _edata = .; - } > RAM - - .bss : - { - . = ALIGN(4); - __bss_start__ = .; - _sbss = .; - *(.bss*) - *(COMMON) - . = ALIGN(4); - __bss_end__ = .; - _ebss = .; - } > RAM - - .heap (COPY): - { - __end__ = .; - PROVIDE(_end = .); - PROVIDE(end = .); - *(.heap*) - __HeapLimit = .; - } > RAM - - /* .stack_dummy section doesn't contains any symbols. It is only - * used for linker to calculate size of stack sections, and assign - * values to stack symbols later */ - .stack_dummy (COPY): - { - *(.stack*) - } > RAM - - /* Set stack top to end of RAM, and stack limit move down by - * size of stack_dummy section */ - __StackTop = ORIGIN(RAM) + LENGTH(RAM); - __StackLimit = __StackTop - SIZEOF(.stack_dummy); - PROVIDE(__stack = __StackTop); - - /* Check if data + heap + stack exceeds RAM limit */ - ASSERT(__StackLimit >= __HeapLimit, "region RAM overflowed with stack") -} diff --git a/src/boards/Bleeper-76/cmsis/arm-std/startup_stm32l1xx_hd.s b/src/boards/Bleeper-76/cmsis/arm-std/startup_stm32l1xx_hd.s deleted file mode 100644 index c7d1e5e4a..000000000 --- a/src/boards/Bleeper-76/cmsis/arm-std/startup_stm32l1xx_hd.s +++ /dev/null @@ -1,356 +0,0 @@ -;******************** (C) COPYRIGHT 2012 STMicroelectronics ******************** -;* File Name : startup_stm32l1xx_hd.s -;* Author : MCD Application Team -;* Version : V1.1.1 -;* Date : 09-March-2012 -;* Description : STM32L1xx Ultra Low Power High-density Devices vector -;* table for MDK-ARM toolchain. -;* This module performs: -;* - Set the initial SP -;* - Set the initial PC == Reset_Handler -;* - Set the vector table entries with the exceptions ISR address -;* - Branches to __main in the C library (which eventually -;* calls main()). -;* After Reset the CortexM3 processor is in Thread mode, -;* priority is Privileged, and the Stack is set to Main. -;* <<< Use Configuration Wizard in Context Menu >>> -;******************************************************************************* -; -; Licensed under MCD-ST Liberty SW License Agreement V2, (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.st.com/software_license_agreement_liberty_v2 -; -; 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. -; -;******************************************************************************* - -; Amount of memory (in bytes) allocated for Stack -; Tailor this value to your application needs -; Stack Configuration -; Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> -; - -Stack_Size EQU 0x00000400 - - AREA STACK, NOINIT, READWRITE, ALIGN=3 -Stack_Mem SPACE Stack_Size -__initial_sp - - -; Heap Configuration -; Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> -; - -Heap_Size EQU 0x00000200 - - AREA HEAP, NOINIT, READWRITE, ALIGN=3 -__heap_base -Heap_Mem SPACE Heap_Size -__heap_limit - - PRESERVE8 - THUMB - - -; Vector Table Mapped to Address 0 at Reset - AREA RESET, DATA, READONLY - EXPORT __Vectors - EXPORT __Vectors_End - EXPORT __Vectors_Size - -__Vectors DCD __initial_sp ; Top of Stack - DCD Reset_Handler ; Reset Handler - DCD NMI_Handler ; NMI Handler - DCD HardFault_Handler ; Hard Fault Handler - DCD MemManage_Handler ; MPU Fault Handler - DCD BusFault_Handler ; Bus Fault Handler - DCD UsageFault_Handler ; Usage Fault Handler - DCD 0 ; Reserved - DCD 0 ; Reserved - DCD 0 ; Reserved - DCD 0 ; Reserved - DCD SVC_Handler ; SVCall Handler - DCD DebugMon_Handler ; Debug Monitor Handler - DCD 0 ; Reserved - DCD PendSV_Handler ; PendSV Handler - DCD SysTick_Handler ; SysTick Handler - - ; External Interrupts - DCD WWDG_IRQHandler ; Window Watchdog - DCD PVD_IRQHandler ; PVD through EXTI Line detect - DCD TAMPER_STAMP_IRQHandler ; Tamper and Time Stamp - DCD RTC_WKUP_IRQHandler ; RTC Wakeup - DCD FLASH_IRQHandler ; FLASH - DCD RCC_IRQHandler ; RCC - DCD EXTI0_IRQHandler ; EXTI Line 0 - DCD EXTI1_IRQHandler ; EXTI Line 1 - DCD EXTI2_IRQHandler ; EXTI Line 2 - DCD EXTI3_IRQHandler ; EXTI Line 3 - DCD EXTI4_IRQHandler ; EXTI Line 4 - DCD DMA1_Channel1_IRQHandler ; DMA1 Channel 1 - DCD DMA1_Channel2_IRQHandler ; DMA1 Channel 2 - DCD DMA1_Channel3_IRQHandler ; DMA1 Channel 3 - DCD DMA1_Channel4_IRQHandler ; DMA1 Channel 4 - DCD DMA1_Channel5_IRQHandler ; DMA1 Channel 5 - DCD DMA1_Channel6_IRQHandler ; DMA1 Channel 6 - DCD DMA1_Channel7_IRQHandler ; DMA1 Channel 7 - DCD ADC1_IRQHandler ; ADC1 - DCD USB_HP_IRQHandler ; USB High Priority - DCD USB_LP_IRQHandler ; USB Low Priority - DCD DAC_IRQHandler ; DAC - DCD COMP_IRQHandler ; COMP through EXTI Line - DCD EXTI9_5_IRQHandler ; EXTI Line 9..5 - DCD LCD_IRQHandler ; LCD - DCD TIM9_IRQHandler ; TIM9 - DCD TIM10_IRQHandler ; TIM10 - DCD TIM11_IRQHandler ; TIM11 - DCD TIM2_IRQHandler ; TIM2 - DCD TIM3_IRQHandler ; TIM3 - DCD TIM4_IRQHandler ; TIM4 - DCD I2C1_EV_IRQHandler ; I2C1 Event - DCD I2C1_ER_IRQHandler ; I2C1 Error - DCD I2C2_EV_IRQHandler ; I2C2 Event - DCD I2C2_ER_IRQHandler ; I2C2 Error - DCD SPI1_IRQHandler ; SPI1 - DCD SPI2_IRQHandler ; SPI2 - DCD USART1_IRQHandler ; USART1 - DCD USART2_IRQHandler ; USART2 - DCD USART3_IRQHandler ; USART3 - DCD EXTI15_10_IRQHandler ; EXTI Line 15..10 - DCD RTC_Alarm_IRQHandler ; RTC Alarm through EXTI Line - DCD USB_FS_WKUP_IRQHandler ; USB FS Wakeup from suspend - DCD TIM6_IRQHandler ; TIM6 - DCD TIM7_IRQHandler ; TIM7 - DCD SDIO_IRQHandler ; SDIO - DCD TIM5_IRQHandler ; TIM5 - DCD SPI3_IRQHandler ; SPI3 - DCD UART4_IRQHandler ; UART4 - DCD UART5_IRQHandler ; UART5 - DCD DMA2_Channel1_IRQHandler ; DMA2 Channel 1 - DCD DMA2_Channel2_IRQHandler ; DMA2 Channel 2 - DCD DMA2_Channel3_IRQHandler ; DMA2 Channel 3 - DCD DMA2_Channel4_IRQHandler ; DMA2 Channel 4 - DCD DMA2_Channel5_IRQHandler ; DMA2 Channel 5 - DCD AES_IRQHandler ; AES - DCD COMP_ACQ_IRQHandler ; Comparator Channel Acquisition - -__Vectors_End - -__Vectors_Size EQU __Vectors_End - __Vectors - - AREA |.text|, CODE, READONLY - -; Reset handler routine -Reset_Handler PROC - EXPORT Reset_Handler [WEAK] - IMPORT __main - IMPORT SystemInit - LDR R0, =SystemInit - BLX R0 - LDR R0, =__main - BX R0 - ENDP - -; Dummy Exception Handlers (infinite loops which can be modified) - -NMI_Handler PROC - EXPORT NMI_Handler [WEAK] - B . - ENDP -HardFault_Handler\ - PROC - EXPORT HardFault_Handler [WEAK] - B . - ENDP -MemManage_Handler\ - PROC - EXPORT MemManage_Handler [WEAK] - B . - ENDP -BusFault_Handler\ - PROC - EXPORT BusFault_Handler [WEAK] - B . - ENDP -UsageFault_Handler\ - PROC - EXPORT UsageFault_Handler [WEAK] - B . - ENDP -SVC_Handler PROC - EXPORT SVC_Handler [WEAK] - B . - ENDP -DebugMon_Handler\ - PROC - EXPORT DebugMon_Handler [WEAK] - B . - ENDP -PendSV_Handler PROC - EXPORT PendSV_Handler [WEAK] - B . - ENDP -SysTick_Handler PROC - EXPORT SysTick_Handler [WEAK] - B . - ENDP - -Default_Handler PROC - - EXPORT WWDG_IRQHandler [WEAK] - EXPORT PVD_IRQHandler [WEAK] - EXPORT TAMPER_STAMP_IRQHandler [WEAK] - EXPORT RTC_WKUP_IRQHandler [WEAK] - EXPORT FLASH_IRQHandler [WEAK] - EXPORT RCC_IRQHandler [WEAK] - EXPORT EXTI0_IRQHandler [WEAK] - EXPORT EXTI1_IRQHandler [WEAK] - EXPORT EXTI2_IRQHandler [WEAK] - EXPORT EXTI3_IRQHandler [WEAK] - EXPORT EXTI4_IRQHandler [WEAK] - EXPORT DMA1_Channel1_IRQHandler [WEAK] - EXPORT DMA1_Channel2_IRQHandler [WEAK] - EXPORT DMA1_Channel3_IRQHandler [WEAK] - EXPORT DMA1_Channel4_IRQHandler [WEAK] - EXPORT DMA1_Channel5_IRQHandler [WEAK] - EXPORT DMA1_Channel6_IRQHandler [WEAK] - EXPORT DMA1_Channel7_IRQHandler [WEAK] - EXPORT ADC1_IRQHandler [WEAK] - EXPORT USB_HP_IRQHandler [WEAK] - EXPORT USB_LP_IRQHandler [WEAK] - EXPORT DAC_IRQHandler [WEAK] - EXPORT COMP_IRQHandler [WEAK] - EXPORT EXTI9_5_IRQHandler [WEAK] - EXPORT LCD_IRQHandler [WEAK] - EXPORT TIM9_IRQHandler [WEAK] - EXPORT TIM10_IRQHandler [WEAK] - EXPORT TIM11_IRQHandler [WEAK] - EXPORT TIM2_IRQHandler [WEAK] - EXPORT TIM3_IRQHandler [WEAK] - EXPORT TIM4_IRQHandler [WEAK] - EXPORT I2C1_EV_IRQHandler [WEAK] - EXPORT I2C1_ER_IRQHandler [WEAK] - EXPORT I2C2_EV_IRQHandler [WEAK] - EXPORT I2C2_ER_IRQHandler [WEAK] - EXPORT SPI1_IRQHandler [WEAK] - EXPORT SPI2_IRQHandler [WEAK] - EXPORT USART1_IRQHandler [WEAK] - EXPORT USART2_IRQHandler [WEAK] - EXPORT USART3_IRQHandler [WEAK] - EXPORT EXTI15_10_IRQHandler [WEAK] - EXPORT RTC_Alarm_IRQHandler [WEAK] - EXPORT USB_FS_WKUP_IRQHandler [WEAK] - EXPORT TIM6_IRQHandler [WEAK] - EXPORT TIM7_IRQHandler [WEAK] - EXPORT SDIO_IRQHandler [WEAK] - EXPORT TIM5_IRQHandler [WEAK] - EXPORT SPI3_IRQHandler [WEAK] - EXPORT UART4_IRQHandler [WEAK] - EXPORT UART5_IRQHandler [WEAK] - EXPORT DMA2_Channel1_IRQHandler [WEAK] - EXPORT DMA2_Channel2_IRQHandler [WEAK] - EXPORT DMA2_Channel3_IRQHandler [WEAK] - EXPORT DMA2_Channel4_IRQHandler [WEAK] - EXPORT DMA2_Channel5_IRQHandler [WEAK] - EXPORT AES_IRQHandler [WEAK] - EXPORT COMP_ACQ_IRQHandler [WEAK] - -WWDG_IRQHandler -PVD_IRQHandler -TAMPER_STAMP_IRQHandler -RTC_WKUP_IRQHandler -FLASH_IRQHandler -RCC_IRQHandler -EXTI0_IRQHandler -EXTI1_IRQHandler -EXTI2_IRQHandler -EXTI3_IRQHandler -EXTI4_IRQHandler -DMA1_Channel1_IRQHandler -DMA1_Channel2_IRQHandler -DMA1_Channel3_IRQHandler -DMA1_Channel4_IRQHandler -DMA1_Channel5_IRQHandler -DMA1_Channel6_IRQHandler -DMA1_Channel7_IRQHandler -ADC1_IRQHandler -USB_HP_IRQHandler -USB_LP_IRQHandler -DAC_IRQHandler -COMP_IRQHandler -EXTI9_5_IRQHandler -LCD_IRQHandler -TIM9_IRQHandler -TIM10_IRQHandler -TIM11_IRQHandler -TIM2_IRQHandler -TIM3_IRQHandler -TIM4_IRQHandler -I2C1_EV_IRQHandler -I2C1_ER_IRQHandler -I2C2_EV_IRQHandler -I2C2_ER_IRQHandler -SPI1_IRQHandler -SPI2_IRQHandler -USART1_IRQHandler -USART2_IRQHandler -USART3_IRQHandler -EXTI15_10_IRQHandler -RTC_Alarm_IRQHandler -USB_FS_WKUP_IRQHandler -TIM6_IRQHandler -TIM7_IRQHandler -SDIO_IRQHandler -TIM5_IRQHandler -SPI3_IRQHandler -UART4_IRQHandler -UART5_IRQHandler -DMA2_Channel1_IRQHandler -DMA2_Channel2_IRQHandler -DMA2_Channel3_IRQHandler -DMA2_Channel4_IRQHandler -DMA2_Channel5_IRQHandler -AES_IRQHandler -COMP_ACQ_IRQHandler - - B . - - ENDP - - ALIGN - -;******************************************************************************* -; User Stack and Heap initialization -;******************************************************************************* - IF :DEF:__MICROLIB - - EXPORT __initial_sp - EXPORT __heap_base - EXPORT __heap_limit - - ELSE - - IMPORT __use_two_region_memory - EXPORT __user_initial_stackheap - -__user_initial_stackheap - - LDR R0, = Heap_Mem - LDR R1, =(Stack_Mem + Stack_Size) - LDR R2, = (Heap_Mem + Heap_Size) - LDR R3, = Stack_Mem - BX LR - - ALIGN - - ENDIF - - END - -;************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE***** diff --git a/src/boards/Bleeper-76/cmsis/stm32l1xx.h b/src/boards/Bleeper-76/cmsis/stm32l1xx.h deleted file mode 100644 index 053b6935b..000000000 --- a/src/boards/Bleeper-76/cmsis/stm32l1xx.h +++ /dev/null @@ -1,6355 +0,0 @@ -/** - ****************************************************************************** - * @file stm32l1xx.h - * @author MCD Application Team - * @version V1.2.0 - * @date 22-February-2013 - * @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 STM32L1xx High-density, Medium-density - * and Medium-density Plus devices. - * - * The file is the unique include file that the application programmer - * is using in the C source code, usually in main.c. This file contains: - * - Configuration section that allows to select: - * - The device used in the target application - * - To use or not the peripheral’s drivers in application code(i.e. - * code will be based on direct access to peripheral’s registers - * rather than drivers API), this option is controlled by - * "#define USE_STDPERIPH_DRIVER" - * - To change few application-specific parameters such as the HSE - * crystal frequency - * - 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 2013 STMicroelectronics

- * - * Licensed under MCD-ST Liberty SW License Agreement V2, (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.st.com/software_license_agreement_liberty_v2 - * - * 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. - * - ****************************************************************************** - */ - -/** @addtogroup CMSIS - * @{ - */ - -/** @addtogroup stm32l1xx - * @{ - */ - -#ifndef __STM32L1XX_H -#define __STM32L1XX_H - -#ifdef __cplusplus - extern "C" { -#endif - -/** @addtogroup Library_configuration_section - * @{ - */ - -/* Uncomment the line below according to the target STM32L device used in your - application - */ - -#if !defined (STM32L1XX_MD) && !defined (STM32L1XX_MDP) && !defined (STM32L1XX_HD) - -/* #define STM32L1XX_MD */ /*!< - Ultra Low Power Medium-density devices: STM32L151x6xx, STM32L151x8xx, - STM32L151xBxx, STM32L152x6xx, STM32L152x8xx and STM32L152xBxx. - - Ultra Low Power Medium-density Value Line devices: STM32L100x6xx, - STM32L100x8xx and STM32L100xBxx. */ - -/* #define STM32L1XX_MDP */ /*!< - Ultra Low Power Medium-density Plus devices: STM32L151xCxx, STM32L152xCxx and STM32L162xCxx - - Ultra Low Power Medium-density Plus Value Line devices: STM32L100xCxx */ - - #define STM32L1XX_HD /*!< Ultra Low Power High-density devices: STM32L151xDxx, STM32L152xDxx and STM32L162xDxx */ -#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 (STM32L1XX_MD) && !defined (STM32L1XX_MDP) && !defined (STM32L1XX_HD) - #error "Please select first the target STM32L1xx device used in your application (in stm32l1xx.h file)" -#endif - -#if !defined USE_STDPERIPH_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_STDPERIPH_DRIVER -#endif - -/** - * @brief In the following line adjust the value of External High Speed oscillator (HSE) - used in your application - - 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. - */ -#if !defined (HSE_VALUE) -#define HSE_VALUE ((uint32_t)12000000) /*!< Value of the External oscillator in Hz */ -#endif - -/** - * @brief In the following line adjust the External High Speed oscillator (HSE) Startup - Timeout value - */ -#if !defined (HSE_STARTUP_TIMEOUT) -#define HSE_STARTUP_TIMEOUT ((uint16_t)0x0500) /*!< Time out for HSE start up */ -#endif - -/** - * @brief In the following line adjust the Internal High Speed oscillator (HSI) Startup - Timeout value - */ -#if !defined (HSI_STARTUP_TIMEOUT) -#define HSI_STARTUP_TIMEOUT ((uint16_t)0x0500) /*!< Time out for HSI start up */ -#endif - -#if !defined (HSI_VALUE) -#define HSI_VALUE ((uint32_t)16000000) /*!< Value of the Internal High Speed oscillator in Hz. - The real value may vary depending on the variations - in voltage and temperature. */ -#endif - -#if !defined (LSI_VALUE) -#define LSI_VALUE ((uint32_t)37000) /*!< Value of the Internal Low Speed oscillator in Hz - The real value may vary depending on the variations - in voltage and temperature. */ -#endif - -#if !defined (LSE_VALUE) -#define LSE_VALUE ((uint32_t)32768) /*!< Value of the External Low Speed oscillator in Hz */ -#endif - -/** - * @brief STM32L1xx Standard Peripheral Library version number V1.2.0 - */ -#define __STM32L1XX_STDPERIPH_VERSION_MAIN (0x01) /*!< [31:24] main version */ -#define __STM32L1XX_STDPERIPH_VERSION_SUB1 (0x02) /*!< [23:16] sub1 version */ -#define __STM32L1XX_STDPERIPH_VERSION_SUB2 (0x00) /*!< [15:8] sub2 version */ -#define __STM32L1XX_STDPERIPH_VERSION_RC (0x00) /*!< [7:0] release candidate */ -#define __STM32L1XX_STDPERIPH_VERSION ( (__STM32L1XX_STDPERIPH_VERSION_MAIN << 24)\ - |(__STM32L1XX_STDPERIPH_VERSION_SUB1 << 16)\ - |(__STM32L1XX_STDPERIPH_VERSION_SUB2 << 8)\ - |(__STM32L1XX_STDPERIPH_VERSION_RC)) - -/** - * @} - */ - -/** @addtogroup Configuration_section_for_CMSIS - * @{ - */ - -/** - * @brief STM32L1xx Interrupt Number Definition, according to the selected device - * in @ref Library_configuration_section - */ -#define __CM3_REV 0x200 /*!< Cortex-M3 Revision r2p0 */ -#define __MPU_PRESENT 1 /*!< STM32L1 provides MPU */ -#define __NVIC_PRIO_BITS 4 /*!< STM32L1 uses 4 Bits for the Priority Levels */ -#define __Vendor_SysTickConfig 0 /*!< Set to 1 if different SysTick Config is used */ - -/*!< Interrupt Number Definition */ -typedef enum IRQn -{ -/****** Cortex-M3 Processor Exceptions Numbers ******************************************************/ - NonMaskableInt_IRQn = -14, /*!< 2 Non Maskable 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 */ - SVC_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 */ - -/****** STM32L specific Interrupt Numbers ***********************************************************/ - WWDG_IRQn = 0, /*!< Window WatchDog Interrupt */ - PVD_IRQn = 1, /*!< PVD through EXTI Line detection Interrupt */ - TAMPER_STAMP_IRQn = 2, /*!< Tamper and Time Stamp through EXTI Line Interrupts */ - RTC_WKUP_IRQn = 3, /*!< RTC Wakeup Timer through EXTI Line 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_IRQn = 18, /*!< ADC1 global Interrupt */ - USB_HP_IRQn = 19, /*!< USB High Priority Interrupt */ - USB_LP_IRQn = 20, /*!< USB Low Priority Interrupt */ - DAC_IRQn = 21, /*!< DAC Interrupt */ - COMP_IRQn = 22, /*!< Comparator through EXTI Line Interrupt */ - EXTI9_5_IRQn = 23, /*!< External Line[9:5] Interrupts */ - LCD_IRQn = 24, /*!< LCD Interrupt */ - TIM9_IRQn = 25, /*!< TIM9 global Interrupt */ - TIM10_IRQn = 26, /*!< TIM10 global Interrupt */ - TIM11_IRQn = 27, /*!< TIM11 global 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 */ - USB_FS_WKUP_IRQn = 42, /*!< USB FS WakeUp from suspend through EXTI Line Interrupt */ - TIM6_IRQn = 43, /*!< TIM6 global Interrupt */ -#ifdef STM32L1XX_MD - TIM7_IRQn = 44 /*!< TIM7 global Interrupt */ -#endif /* STM32L1XX_MD */ - -#ifdef STM32L1XX_MDP - TIM7_IRQn = 44, /*!< TIM7 global Interrupt */ - TIM5_IRQn = 46, /*!< TIM5 global Interrupt */ - SPI3_IRQn = 47, /*!< SPI3 global Interrupt */ - DMA2_Channel1_IRQn = 50, /*!< DMA2 Channel 1 global Interrupt */ - DMA2_Channel2_IRQn = 51, /*!< DMA2 Channel 2 global Interrupt */ - DMA2_Channel3_IRQn = 52, /*!< DMA2 Channel 3 global Interrupt */ - DMA2_Channel4_IRQn = 53, /*!< DMA2 Channel 4 global Interrupt */ - DMA2_Channel5_IRQn = 54, /*!< DMA2 Channel 5 global Interrupt */ - AES_IRQn = 55, /*!< AES global Interrupt */ - COMP_ACQ_IRQn = 56 /*!< Comparator Channel Acquisition global Interrupt */ -#endif /* STM32L1XX_MDP */ - -#ifdef STM32L1XX_HD - TIM7_IRQn = 44, /*!< TIM7 global Interrupt */ - SDIO_IRQn = 45, /*!< SDIO global Interrupt */ - TIM5_IRQn = 46, /*!< TIM5 global Interrupt */ - SPI3_IRQn = 47, /*!< SPI3 global Interrupt */ - UART4_IRQn = 48, /*!< UART4 global Interrupt */ - UART5_IRQn = 49, /*!< UART5 global Interrupt */ - DMA2_Channel1_IRQn = 50, /*!< DMA2 Channel 1 global Interrupt */ - DMA2_Channel2_IRQn = 51, /*!< DMA2 Channel 2 global Interrupt */ - DMA2_Channel3_IRQn = 52, /*!< DMA2 Channel 3 global Interrupt */ - DMA2_Channel4_IRQn = 53, /*!< DMA2 Channel 4 global Interrupt */ - DMA2_Channel5_IRQn = 54, /*!< DMA2 Channel 5 global Interrupt */ - AES_IRQn = 55, /*!< AES global Interrupt */ - COMP_ACQ_IRQn = 56 /*!< Comparator Channel Acquisition global Interrupt */ -#endif /* STM32L1XX_HD */ -} IRQn_Type; - -/** - * @} - */ - -#include "core_cm3.h" -#include "system_stm32l1xx.h" -#include - -/** @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 {ERROR = 0, SUCCESS = !ERROR} ErrorStatus; - -/** - * @brief __RAM_FUNC definition - */ -#if defined ( __CC_ARM ) -/* ARM Compiler - ------------ - 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 FLASH_Status - -#elif defined ( __ICCARM__ ) -/* ICCARM Compiler - --------------- - RAM functions are defined using a specific toolchain keyword "__ramfunc". -*/ - #define __RAM_FUNC __ramfunc FLASH_Status - -#elif defined ( __GNUC__ ) -/* GNU Compiler - ------------ - RAM functions are defined using a specific toolchain attribute - "__attribute__((section(".data")))". -*/ - #define __RAM_FUNC FLASH_Status __attribute__((section(".data"))) - -#elif defined ( __TASKING__ ) -/* TASKING Compiler - ---------------- - RAM functions are defined using a specific toolchain pragma. This pragma is - defined in the stm32l1xx_flash_ramfunc.c -*/ - #define __RAM_FUNC FLASH_Status - -#endif - -/** - * @} - */ - -/** @addtogroup Peripheral_registers_structures - * @{ - */ - -/** - * @brief Analog to Digital Converter - */ - -typedef struct -{ - __IO uint32_t SR; /*!< ADC status register, Address offset: 0x00 */ - __IO uint32_t CR1; /*!< ADC control register 1, Address offset: 0x04 */ - __IO uint32_t CR2; /*!< ADC control register 2, Address offset: 0x08 */ - __IO uint32_t SMPR1; /*!< ADC sample time register 1, Address offset: 0x0C */ - __IO uint32_t SMPR2; /*!< ADC sample time register 2, Address offset: 0x10 */ - __IO uint32_t SMPR3; /*!< ADC sample time register 3, Address offset: 0x14 */ - __IO uint32_t JOFR1; /*!< ADC injected channel data offset register 1, Address offset: 0x18 */ - __IO uint32_t JOFR2; /*!< ADC injected channel data offset register 2, Address offset: 0x1C */ - __IO uint32_t JOFR3; /*!< ADC injected channel data offset register 3, Address offset: 0x20 */ - __IO uint32_t JOFR4; /*!< ADC injected channel data offset register 4, Address offset: 0x24 */ - __IO uint32_t HTR; /*!< ADC watchdog higher threshold register, Address offset: 0x28 */ - __IO uint32_t LTR; /*!< ADC watchdog lower threshold register, Address offset: 0x2C */ - __IO uint32_t SQR1; /*!< ADC regular sequence register 1, Address offset: 0x30 */ - __IO uint32_t SQR2; /*!< ADC regular sequence register 2, Address offset: 0x34 */ - __IO uint32_t SQR3; /*!< ADC regular sequence register 3, Address offset: 0x38 */ - __IO uint32_t SQR4; /*!< ADC regular sequence register 4, Address offset: 0x3C */ - __IO uint32_t SQR5; /*!< ADC regular sequence register 5, Address offset: 0x40 */ - __IO uint32_t JSQR; /*!< ADC injected sequence register, Address offset: 0x44 */ - __IO uint32_t JDR1; /*!< ADC injected data register 1, Address offset: 0x48 */ - __IO uint32_t JDR2; /*!< ADC injected data register 2, Address offset: 0x4C */ - __IO uint32_t JDR3; /*!< ADC injected data register 3, Address offset: 0x50 */ - __IO uint32_t JDR4; /*!< ADC injected data register 4, Address offset: 0x54 */ - __IO uint32_t DR; /*!< ADC regular data register, Address offset: 0x58 */ - __IO uint32_t SMPR0; /*!< ADC sample time register 0, Address offset: 0x5C */ -} ADC_TypeDef; - -typedef struct -{ - __IO uint32_t CSR; /*!< ADC common status register, Address offset: ADC1 base address + 0x300 */ - __IO uint32_t CCR; /*!< ADC common control register, Address offset: ADC1 base address + 0x304 */ -} ADC_Common_TypeDef; - - -/** - * @brief AES hardware accelerator - */ - -typedef struct -{ - __IO uint32_t CR; /*!< AES control register, Address offset: 0x00 */ - __IO uint32_t SR; /*!< AES status register, Address offset: 0x04 */ - __IO uint32_t DINR; /*!< AES data input register, Address offset: 0x08 */ - __IO uint32_t DOUTR; /*!< AES data output register, Address offset: 0x0C */ - __IO uint32_t KEYR0; /*!< AES key register 0, Address offset: 0x10 */ - __IO uint32_t KEYR1; /*!< AES key register 1, Address offset: 0x14 */ - __IO uint32_t KEYR2; /*!< AES key register 2, Address offset: 0x18 */ - __IO uint32_t KEYR3; /*!< AES key register 3, Address offset: 0x1C */ - __IO uint32_t IVR0; /*!< AES initialization vector register 0, Address offset: 0x20 */ - __IO uint32_t IVR1; /*!< AES initialization vector register 1, Address offset: 0x24 */ - __IO uint32_t IVR2; /*!< AES initialization vector register 2, Address offset: 0x28 */ - __IO uint32_t IVR3; /*!< AES initialization vector register 3, Address offset: 0x2C */ -} AES_TypeDef; - -/** - * @brief Comparator - */ - -typedef struct -{ - __IO uint32_t CSR; /*!< COMP comparator control and status register, Address offset: 0x00 */ -} COMP_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, 0x05 */ - uint16_t RESERVED1; /*!< Reserved, 0x06 */ - __IO uint32_t CR; /*!< CRC Control register, Address offset: 0x08 */ -} CRC_TypeDef; - -/** - * @brief Digital to Analog Converter - */ - -typedef struct -{ - __IO uint32_t CR; /*!< DAC control register, Address offset: 0x00 */ - __IO uint32_t SWTRIGR; /*!< DAC software trigger register, Address offset: 0x04 */ - __IO uint32_t DHR12R1; /*!< DAC channel1 12-bit right-aligned data holding register, Address offset: 0x08 */ - __IO uint32_t DHR12L1; /*!< DAC channel1 12-bit left aligned data holding register, Address offset: 0x0C */ - __IO uint32_t DHR8R1; /*!< DAC channel1 8-bit right aligned data holding register, Address offset: 0x10 */ - __IO uint32_t DHR12R2; /*!< DAC channel2 12-bit right aligned data holding register, Address offset: 0x14 */ - __IO uint32_t DHR12L2; /*!< DAC channel2 12-bit left aligned data holding register, Address offset: 0x18 */ - __IO uint32_t DHR8R2; /*!< DAC channel2 8-bit right-aligned data holding register, Address offset: 0x1C */ - __IO uint32_t DHR12RD; /*!< Dual DAC 12-bit right-aligned data holding register, Address offset: 0x20 */ - __IO uint32_t DHR12LD; /*!< DUAL DAC 12-bit left aligned data holding register, Address offset: 0x24 */ - __IO uint32_t DHR8RD; /*!< DUAL DAC 8-bit right aligned data holding register, Address offset: 0x28 */ - __IO uint32_t DOR1; /*!< DAC channel1 data output register, Address offset: 0x2C */ - __IO uint32_t DOR2; /*!< DAC channel2 data output register, Address offset: 0x30 */ - __IO uint32_t SR; /*!< DAC status register, Address offset: 0x34 */ -} DAC_TypeDef; - -/** - * @brief Debug MCU - */ - -typedef struct -{ - __IO uint32_t IDCODE; /*!< MCU device ID code, Address offset: 0x00 */ - __IO uint32_t CR; /*!< Debug MCU configuration register, Address offset: 0x04 */ - __IO uint32_t APB1FZ; /*!< Debug MCU APB1 freeze register, Address offset: 0x08 */ - __IO uint32_t APB2FZ; /*!< Debug MCU APB2 freeze register, Address offset: 0x0C */ -}DBGMCU_TypeDef; - -/** - * @brief DMA Controller - */ - -typedef struct -{ - __IO uint32_t CCR; /*!< DMA channel x configuration register */ - __IO uint32_t CNDTR; /*!< DMA channel x number of data register */ - __IO uint32_t CPAR; /*!< DMA channel x peripheral address register */ - __IO uint32_t CMAR; /*!< DMA channel x memory address register */ -} DMA_Channel_TypeDef; - -typedef struct -{ - __IO uint32_t ISR; /*!< DMA interrupt status register, Address offset: 0x00 */ - __IO uint32_t IFCR; /*!< DMA interrupt flag clear register, Address offset: 0x04 */ -} DMA_TypeDef; - -/** - * @brief External Interrupt/Event Controller - */ - -typedef struct -{ - __IO uint32_t IMR; /*!< EXTI interrupt mask register, Address offset: 0x00 */ - __IO uint32_t EMR; /*!< EXTI event mask register, Address offset: 0x04 */ - __IO uint32_t RTSR; /*!< EXTI rising edge trigger selection register, Address offset: 0x08 */ - __IO uint32_t FTSR; /*!< EXTI Falling edge trigger selection register, Address offset: 0x0C */ - __IO uint32_t SWIER; /*!< EXTI software interrupt event register, Address offset: 0x10 */ - __IO uint32_t PR; /*!< EXTI pending register, Address offset: 0x14 */ -} EXTI_TypeDef; - -/** - * @brief FLASH Registers - */ - -typedef struct -{ - __IO uint32_t ACR; /*!< Access control register, Address offset: 0x00 */ - __IO uint32_t PECR; /*!< Program/erase control register, Address offset: 0x04 */ - __IO uint32_t PDKEYR; /*!< Power down key register, Address offset: 0x08 */ - __IO uint32_t PEKEYR; /*!< Program/erase key register, Address offset: 0x0c */ - __IO uint32_t PRGKEYR; /*!< Program memory key register, Address offset: 0x10 */ - __IO uint32_t OPTKEYR; /*!< Option byte key register, Address offset: 0x14 */ - __IO uint32_t SR; /*!< Status register, Address offset: 0x18 */ - __IO uint32_t OBR; /*!< Option byte register, Address offset: 0x1c */ - __IO uint32_t WRPR; /*!< Write protection register, Address offset: 0x20 */ - uint32_t RESERVED[23]; /*!< Reserved, 0x24 */ - __IO uint32_t WRPR1; /*!< Write protection register 1, Address offset: 0x28 */ - __IO uint32_t WRPR2; /*!< Write protection register 2, Address offset: 0x2C */ -} FLASH_TypeDef; - -/** - * @brief Option Bytes Registers - */ - -typedef struct -{ - __IO uint32_t RDP; /*!< Read protection register, Address offset: 0x00 */ - __IO uint32_t USER; /*!< user register, Address offset: 0x04 */ - __IO uint32_t WRP01; /*!< write protection register 0 1, Address offset: 0x08 */ - __IO uint32_t WRP23; /*!< write protection register 2 3, Address offset: 0x0C */ - __IO uint32_t WRP45; /*!< write protection register 4 5, Address offset: 0x10 */ - __IO uint32_t WRP67; /*!< write protection register 6 7, Address offset: 0x14 */ - __IO uint32_t WRP89; /*!< write protection register 8 9, Address offset: 0x18 */ - __IO uint32_t WRP1011; /*!< write protection register 10 11, Address offset: 0x1C */ -} OB_TypeDef; - -/** - * @brief Operational Amplifier (OPAMP) - */ - -typedef struct -{ - __IO uint32_t CSR; /*!< OPAMP control/status register, Address offset: 0x00 */ - __IO uint32_t OTR; /*!< OPAMP offset trimming register for normal mode, Address offset: 0x04 */ - __IO uint32_t LPOTR; /*!< OPAMP offset trimming register for low power mode, Address offset: 0x08 */ -} OPAMP_TypeDef; - -/** - * @brief Flexible Static Memory Controller - */ - -typedef struct -{ - __IO uint32_t BTCR[8]; /*!< NOR/PSRAM chip-select control register(BCR) and chip-select timing register(BTR), Address offset: 0x00-1C */ -} FSMC_Bank1_TypeDef; - -/** - * @brief Flexible Static Memory Controller Bank1E - */ - -typedef struct -{ - __IO uint32_t BWTR[7]; /*!< NOR/PSRAM write timing registers, Address offset: 0x104-0x11C */ -} FSMC_Bank1E_TypeDef; - -/** - * @brief General Purpose IO - */ - -typedef struct -{ - __IO uint32_t MODER; /*!< GPIO port mode register, Address offset: 0x00 */ - __IO uint16_t OTYPER; /*!< GPIO port output type register, Address offset: 0x04 */ - uint16_t RESERVED0; /*!< Reserved, 0x06 */ - __IO uint32_t OSPEEDR; /*!< GPIO port output speed register, Address offset: 0x08 */ - __IO uint32_t PUPDR; /*!< GPIO port pull-up/pull-down register, Address offset: 0x0C */ - __IO uint16_t IDR; /*!< GPIO port input data register, Address offset: 0x10 */ - uint16_t RESERVED1; /*!< Reserved, 0x12 */ - __IO uint16_t ODR; /*!< GPIO port output data register, Address offset: 0x14 */ - uint16_t RESERVED2; /*!< Reserved, 0x16 */ - __IO uint16_t BSRRL; /*!< GPIO port bit set/reset low registerBSRR, Address offset: 0x18 */ - __IO uint16_t BSRRH; /*!< GPIO port bit set/reset high registerBSRR, Address offset: 0x1A */ - __IO uint32_t LCKR; /*!< GPIO port configuration lock register, Address offset: 0x1C */ - __IO uint32_t AFR[2]; /*!< GPIO alternate function low register, Address offset: 0x20-0x24 */ - __IO uint16_t BRR; /*!< GPIO bit reset register, Address offset: 0x28 */ - uint16_t RESERVED3; /*!< Reserved, 0x2A */ -} GPIO_TypeDef; - -/** - * @brief SysTem Configuration - */ - -typedef struct -{ - __IO uint32_t MEMRMP; /*!< SYSCFG memory remap register, Address offset: 0x00 */ - __IO uint32_t PMC; /*!< SYSCFG peripheral mode configuration register, Address offset: 0x04 */ - __IO uint32_t EXTICR[4]; /*!< SYSCFG external interrupt configuration registers, Address offset: 0x08-0x14 */ -} SYSCFG_TypeDef; - -/** - * @brief Inter-integrated Circuit Interface - */ - -typedef struct -{ - __IO uint16_t CR1; /*!< I2C Control register 1, Address offset: 0x00 */ - uint16_t RESERVED0; /*!< Reserved, 0x02 */ - __IO uint16_t CR2; /*!< I2C Control register 2, Address offset: 0x04 */ - uint16_t RESERVED1; /*!< Reserved, 0x06 */ - __IO uint16_t OAR1; /*!< I2C Own address register 1, Address offset: 0x08 */ - uint16_t RESERVED2; /*!< Reserved, 0x0A */ - __IO uint16_t OAR2; /*!< I2C Own address register 2, Address offset: 0x0C */ - uint16_t RESERVED3; /*!< Reserved, 0x0E */ - __IO uint16_t DR; /*!< I2C Data register, Address offset: 0x10 */ - uint16_t RESERVED4; /*!< Reserved, 0x12 */ - __IO uint16_t SR1; /*!< I2C Status register 1, Address offset: 0x14 */ - uint16_t RESERVED5; /*!< Reserved, 0x16 */ - __IO uint16_t SR2; /*!< I2C Status register 2, Address offset: 0x18 */ - uint16_t RESERVED6; /*!< Reserved, 0x1A */ - __IO uint16_t CCR; /*!< I2C Clock control register, Address offset: 0x1C */ - uint16_t RESERVED7; /*!< Reserved, 0x1E */ - __IO uint16_t TRISE; /*!< I2C TRISE register, Address offset: 0x20 */ - uint16_t RESERVED8; /*!< Reserved, 0x22 */ -} 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 LCD - */ - -typedef struct -{ - __IO uint32_t CR; /*!< LCD control register, Address offset: 0x00 */ - __IO uint32_t FCR; /*!< LCD frame control register, Address offset: 0x04 */ - __IO uint32_t SR; /*!< LCD status register, Address offset: 0x08 */ - __IO uint32_t CLR; /*!< LCD clear register, Address offset: 0x0C */ - uint32_t RESERVED; /*!< Reserved, Address offset: 0x10 */ - __IO uint32_t RAM[16]; /*!< LCD display memory, Address offset: 0x14-0x50 */ -} LCD_TypeDef; - -/** - * @brief Power Control - */ - -typedef struct -{ - __IO uint32_t CR; /*!< PWR power control register, Address offset: 0x00 */ - __IO uint32_t CSR; /*!< PWR power control/status register, Address offset: 0x04 */ -} PWR_TypeDef; - -/** - * @brief Reset and Clock Control - */ - -typedef struct -{ - __IO uint32_t CR; /*!< RCC clock control register, Address offset: 0x00 */ - __IO uint32_t ICSCR; /*!< RCC Internal clock sources calibration register, Address offset: 0x04 */ - __IO uint32_t CFGR; /*!< RCC Clock configuration register, Address offset: 0x08 */ - __IO uint32_t CIR; /*!< RCC Clock interrupt register, Address offset: 0x0C */ - __IO uint32_t AHBRSTR; /*!< RCC AHB peripheral reset register, Address offset: 0x10 */ - __IO uint32_t APB2RSTR; /*!< RCC APB2 peripheral reset register, Address offset: 0x14 */ - __IO uint32_t APB1RSTR; /*!< RCC APB1 peripheral reset register, Address offset: 0x18 */ - __IO uint32_t AHBENR; /*!< RCC AHB peripheral clock enable register, Address offset: 0x1C */ - __IO uint32_t APB2ENR; /*!< RCC APB2 peripheral clock enable register, Address offset: 0x20 */ - __IO uint32_t APB1ENR; /*!< RCC APB1 peripheral clock enable register, Address offset: 0x24 */ - __IO uint32_t AHBLPENR; /*!< RCC AHB peripheral clock enable in low power mode register, Address offset: 0x28 */ - __IO uint32_t APB2LPENR; /*!< RCC APB2 peripheral clock enable in low power mode register, Address offset: 0x2C */ - __IO uint32_t APB1LPENR; /*!< RCC APB1 peripheral clock enable in low power mode register, Address offset: 0x30 */ - __IO uint32_t CSR; /*!< RCC Control/status register, Address offset: 0x34 */ -} RCC_TypeDef; - -/** - * @brief Routing Interface - */ - -typedef struct -{ - __IO uint32_t ICR; /*!< RI input capture register, Address offset: 0x00 */ - __IO uint32_t ASCR1; /*!< RI analog switches control register, Address offset: 0x04 */ - __IO uint32_t ASCR2; /*!< RI analog switch control register 2, Address offset: 0x08 */ - __IO uint32_t HYSCR1; /*!< RI hysteresis control register, Address offset: 0x0C */ - __IO uint32_t HYSCR2; /*!< RI Hysteresis control register, Address offset: 0x10 */ - __IO uint32_t HYSCR3; /*!< RI Hysteresis control register, Address offset: 0x14 */ - __IO uint32_t HYSCR4; /*!< RI Hysteresis control register, Address offset: 0x18 */ -} RI_TypeDef; - -/** - * @brief Real-Time Clock - */ - -typedef struct -{ - __IO uint32_t TR; /*!< RTC time register, Address offset: 0x00 */ - __IO uint32_t DR; /*!< RTC date register, Address offset: 0x04 */ - __IO uint32_t CR; /*!< RTC control register, Address offset: 0x08 */ - __IO uint32_t ISR; /*!< RTC initialization and status register, Address offset: 0x0C */ - __IO uint32_t PRER; /*!< RTC prescaler register, Address offset: 0x10 */ - __IO uint32_t WUTR; /*!< RTC wakeup timer register, Address offset: 0x14 */ - __IO uint32_t CALIBR; /*!< RTC calibration register, Address offset: 0x18 */ - __IO uint32_t ALRMAR; /*!< RTC alarm A register, Address offset: 0x1C */ - __IO uint32_t ALRMBR; /*!< RTC alarm B register, Address offset: 0x20 */ - __IO uint32_t WPR; /*!< RTC write protection register, Address offset: 0x24 */ - __IO uint32_t SSR; /*!< RTC sub second register, Address offset: 0x28 */ - __IO uint32_t SHIFTR; /*!< RTC shift control register, Address offset: 0x2C */ - __IO uint32_t TSTR; /*!< RTC time stamp time register, Address offset: 0x30 */ - __IO uint32_t TSDR; /*!< RTC time stamp date register, Address offset: 0x34 */ - __IO uint32_t TSSSR; /*!< RTC time-stamp sub second register, Address offset: 0x38 */ - __IO uint32_t CALR; /*!< RRTC calibration register, Address offset: 0x3C */ - __IO uint32_t TAFCR; /*!< RTC tamper and alternate function configuration register, Address offset: 0x40 */ - __IO uint32_t ALRMASSR; /*!< RTC alarm A sub second register, Address offset: 0x44 */ - __IO uint32_t ALRMBSSR; /*!< RTC alarm B sub second register, Address offset: 0x48 */ - uint32_t RESERVED7; /*!< Reserved, 0x4C */ - __IO uint32_t BKP0R; /*!< RTC backup register 0, Address offset: 0x50 */ - __IO uint32_t BKP1R; /*!< RTC backup register 1, Address offset: 0x54 */ - __IO uint32_t BKP2R; /*!< RTC backup register 2, Address offset: 0x58 */ - __IO uint32_t BKP3R; /*!< RTC backup register 3, Address offset: 0x5C */ - __IO uint32_t BKP4R; /*!< RTC backup register 4, Address offset: 0x60 */ - __IO uint32_t BKP5R; /*!< RTC backup register 5, Address offset: 0x64 */ - __IO uint32_t BKP6R; /*!< RTC backup register 6, Address offset: 0x68 */ - __IO uint32_t BKP7R; /*!< RTC backup register 7, Address offset: 0x6C */ - __IO uint32_t BKP8R; /*!< RTC backup register 8, Address offset: 0x70 */ - __IO uint32_t BKP9R; /*!< RTC backup register 9, Address offset: 0x74 */ - __IO uint32_t BKP10R; /*!< RTC backup register 10, Address offset: 0x78 */ - __IO uint32_t BKP11R; /*!< RTC backup register 11, Address offset: 0x7C */ - __IO uint32_t BKP12R; /*!< RTC backup register 12, Address offset: 0x80 */ - __IO uint32_t BKP13R; /*!< RTC backup register 13, Address offset: 0x84 */ - __IO uint32_t BKP14R; /*!< RTC backup register 14, Address offset: 0x88 */ - __IO uint32_t BKP15R; /*!< RTC backup register 15, Address offset: 0x8C */ - __IO uint32_t BKP16R; /*!< RTC backup register 16, Address offset: 0x90 */ - __IO uint32_t BKP17R; /*!< RTC backup register 17, Address offset: 0x94 */ - __IO uint32_t BKP18R; /*!< RTC backup register 18, Address offset: 0x98 */ - __IO uint32_t BKP19R; /*!< RTC backup register 19, Address offset: 0x9C */ - __IO uint32_t BKP20R; /*!< RTC backup register 20, Address offset: 0xA0 */ - __IO uint32_t BKP21R; /*!< RTC backup register 21, Address offset: 0xA4 */ - __IO uint32_t BKP22R; /*!< RTC backup register 22, Address offset: 0xA8 */ - __IO uint32_t BKP23R; /*!< RTC backup register 23, Address offset: 0xAC */ - __IO uint32_t BKP24R; /*!< RTC backup register 24, Address offset: 0xB0 */ - __IO uint32_t BKP25R; /*!< RTC backup register 25, Address offset: 0xB4 */ - __IO uint32_t BKP26R; /*!< RTC backup register 26, Address offset: 0xB8 */ - __IO uint32_t BKP27R; /*!< RTC backup register 27, Address offset: 0xBC */ - __IO uint32_t BKP28R; /*!< RTC backup register 28, Address offset: 0xC0 */ - __IO uint32_t BKP29R; /*!< RTC backup register 29, Address offset: 0xC4 */ - __IO uint32_t BKP30R; /*!< RTC backup register 30, Address offset: 0xC8 */ - __IO uint32_t BKP31R; /*!< RTC backup register 31, Address offset: 0xCC */ -} RTC_TypeDef; - -/** - * @brief SD host Interface - */ - -typedef struct -{ - __IO uint32_t POWER; /*!< SDIO power control register, Address offset: 0x00 */ - __IO uint32_t CLKCR; /*!< SDI clock control register, Address offset: 0x04 */ - __IO uint32_t ARG; /*!< SDIO argument register, Address offset: 0x08 */ - __IO uint32_t CMD; /*!< SDIO command register, Address offset: 0x0C */ - __I uint32_t RESPCMD; /*!< SDIO command response register, Address offset: 0x10 */ - __I uint32_t RESP1; /*!< SDIO response 1 register, Address offset: 0x14 */ - __I uint32_t RESP2; /*!< SDIO response 2 register, Address offset: 0x18 */ - __I uint32_t RESP3; /*!< SDIO response 3 register, Address offset: 0x1C */ - __I uint32_t RESP4; /*!< SDIO response 4 register, Address offset: 0x20 */ - __IO uint32_t DTIMER; /*!< SDIO data timer register, Address offset: 0x24 */ - __IO uint32_t DLEN; /*!< SDIO data length register, Address offset: 0x28 */ - __IO uint32_t DCTRL; /*!< SDIO data control register, Address offset: 0x2C */ - __I uint32_t DCOUNT; /*!< SDIO data counter register, Address offset: 0x30 */ - __I uint32_t STA; /*!< SDIO status register, Address offset: 0x34 */ - __IO uint32_t ICR; /*!< SDIO interrupt clear register, Address offset: 0x38 */ - __IO uint32_t MASK; /*!< SDIO mask register, Address offset: 0x3C */ - uint32_t RESERVED0[2]; /*!< Reserved, 0x40-0x44 */ - __I uint32_t FIFOCNT; /*!< SDIO FIFO counter register, Address offset: 0x48 */ - uint32_t RESERVED1[13]; /*!< Reserved, 0x4C-0x7C */ - __IO uint32_t FIFO; /*!< SDIO data FIFO register, Address offset: 0x80 */ -} SDIO_TypeDef; - -/** - * @brief Serial Peripheral Interface - */ - -typedef struct -{ - __IO uint16_t CR1; /*!< SPI control register 1 (not used in I2S mode), Address offset: 0x00 */ - uint16_t RESERVED0; /*!< Reserved, 0x02 */ - __IO uint16_t CR2; /*!< SPI control register 2, Address offset: 0x04 */ - uint16_t RESERVED1; /*!< Reserved, 0x06 */ - __IO uint16_t SR; /*!< SPI status register, Address offset: 0x08 */ - uint16_t RESERVED2; /*!< Reserved, 0x0A */ - __IO uint16_t DR; /*!< SPI data register, Address offset: 0x0C */ - uint16_t RESERVED3; /*!< Reserved, 0x0E */ - __IO uint16_t CRCPR; /*!< SPI CRC polynomial register (not used in I2S mode), Address offset: 0x10 */ - uint16_t RESERVED4; /*!< Reserved, 0x12 */ - __IO uint16_t RXCRCR; /*!< SPI RX CRC register (not used in I2S mode), Address offset: 0x14 */ - uint16_t RESERVED5; /*!< Reserved, 0x16 */ - __IO uint16_t TXCRCR; /*!< SPI TX CRC register (not used in I2S mode), Address offset: 0x18 */ - uint16_t RESERVED6; /*!< Reserved, 0x1A */ - __IO uint16_t I2SCFGR; /*!< SPI_I2S configuration register, Address offset: 0x1C */ - uint16_t RESERVED7; /*!< Reserved, 0x1E */ - __IO uint16_t I2SPR; /*!< SPI_I2S prescaler register, Address offset: 0x20 */ - uint16_t RESERVED8; /*!< Reserved, 0x22 */ -} SPI_TypeDef; - -/** - * @brief TIM - */ - -typedef struct -{ - __IO uint16_t CR1; /*!< TIM control register 1, Address offset: 0x00 */ - uint16_t RESERVED0; /*!< Reserved, 0x02 */ - __IO uint16_t CR2; /*!< TIM control register 2, Address offset: 0x04 */ - uint16_t RESERVED1; /*!< Reserved, 0x06 */ - __IO uint16_t SMCR; /*!< TIM slave mode control register, Address offset: 0x08 */ - uint16_t RESERVED2; /*!< Reserved, 0x0A */ - __IO uint16_t DIER; /*!< TIM DMA/interrupt enable register, Address offset: 0x0C */ - uint16_t RESERVED3; /*!< Reserved, 0x0E */ - __IO uint16_t SR; /*!< TIM status register, Address offset: 0x10 */ - uint16_t RESERVED4; /*!< Reserved, 0x12 */ - __IO uint16_t EGR; /*!< TIM event generation register, Address offset: 0x14 */ - uint16_t RESERVED5; /*!< Reserved, 0x16 */ - __IO uint16_t CCMR1; /*!< TIM capture/compare mode register 1, Address offset: 0x18 */ - uint16_t RESERVED6; /*!< Reserved, 0x1A */ - __IO uint16_t CCMR2; /*!< TIM capture/compare mode register 2, Address offset: 0x1C */ - uint16_t RESERVED7; /*!< Reserved, 0x1E */ - __IO uint16_t CCER; /*!< TIM capture/compare enable register, Address offset: 0x20 */ - uint16_t RESERVED8; /*!< Reserved, 0x22 */ - __IO uint32_t CNT; /*!< TIM counter register, Address offset: 0x24 */ - __IO uint16_t PSC; /*!< TIM prescaler, Address offset: 0x28 */ - uint16_t RESERVED10; /*!< Reserved, 0x2A */ - __IO uint32_t ARR; /*!< TIM auto-reload register, Address offset: 0x2C */ - uint32_t RESERVED12; /*!< Reserved, 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 */ - uint32_t RESERVED17; /*!< Reserved, 0x44 */ - __IO uint16_t DCR; /*!< TIM DMA control register, Address offset: 0x48 */ - uint16_t RESERVED18; /*!< Reserved, 0x4A */ - __IO uint16_t DMAR; /*!< TIM DMA address for full transfer, Address offset: 0x4C */ - uint16_t RESERVED19; /*!< Reserved, 0x4E */ - __IO uint16_t OR; /*!< TIM option register, Address offset: 0x50 */ - uint16_t RESERVED20; /*!< Reserved, 0x52 */ -} TIM_TypeDef; - -/** - * @brief Universal Synchronous Asynchronous Receiver Transmitter - */ - -typedef struct -{ - __IO uint16_t SR; /*!< USART Status register, Address offset: 0x00 */ - uint16_t RESERVED0; /*!< Reserved, 0x02 */ - __IO uint16_t DR; /*!< USART Data register, Address offset: 0x04 */ - uint16_t RESERVED1; /*!< Reserved, 0x06 */ - __IO uint16_t BRR; /*!< USART Baud rate register, Address offset: 0x08 */ - uint16_t RESERVED2; /*!< Reserved, 0x0A */ - __IO uint16_t CR1; /*!< USART Control register 1, Address offset: 0x0C */ - uint16_t RESERVED3; /*!< Reserved, 0x0E */ - __IO uint16_t CR2; /*!< USART Control register 2, Address offset: 0x10 */ - uint16_t RESERVED4; /*!< Reserved, 0x12 */ - __IO uint16_t CR3; /*!< USART Control register 3, Address offset: 0x14 */ - uint16_t RESERVED5; /*!< Reserved, 0x16 */ - __IO uint16_t GTPR; /*!< USART Guard time and prescaler register, Address offset: 0x18 */ - uint16_t RESERVED6; /*!< Reserved, 0x1A */ -} USART_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 ((uint32_t)0x08000000) /*!< FLASH base address in the alias region */ -#define SRAM_BASE ((uint32_t)0x20000000) /*!< SRAM base address in the alias region */ -#define PERIPH_BASE ((uint32_t)0x40000000) /*!< Peripheral base address in the alias region */ - -#define SRAM_BB_BASE ((uint32_t)0x22000000) /*!< SRAM base address in the bit-band region */ -#define PERIPH_BB_BASE ((uint32_t)0x42000000) /*!< Peripheral base address in the bit-band region */ - -#define FSMC_R_BASE ((uint32_t)0xA0000000) /*!< FSMC registers base address */ - -/*!< Peripheral memory map */ -#define APB1PERIPH_BASE PERIPH_BASE -#define APB2PERIPH_BASE (PERIPH_BASE + 0x10000) -#define AHBPERIPH_BASE (PERIPH_BASE + 0x20000) - -#define TIM2_BASE (APB1PERIPH_BASE + 0x0000) -#define TIM3_BASE (APB1PERIPH_BASE + 0x0400) -#define TIM4_BASE (APB1PERIPH_BASE + 0x0800) -#define TIM5_BASE (APB1PERIPH_BASE + 0x0C00) -#define TIM6_BASE (APB1PERIPH_BASE + 0x1000) -#define TIM7_BASE (APB1PERIPH_BASE + 0x1400) -#define LCD_BASE (APB1PERIPH_BASE + 0x2400) -#define RTC_BASE (APB1PERIPH_BASE + 0x2800) -#define WWDG_BASE (APB1PERIPH_BASE + 0x2C00) -#define IWDG_BASE (APB1PERIPH_BASE + 0x3000) -#define SPI2_BASE (APB1PERIPH_BASE + 0x3800) -#define SPI3_BASE (APB1PERIPH_BASE + 0x3C00) -#define USART2_BASE (APB1PERIPH_BASE + 0x4400) -#define USART3_BASE (APB1PERIPH_BASE + 0x4800) -#define UART4_BASE (APB1PERIPH_BASE + 0x4C00) -#define UART5_BASE (APB1PERIPH_BASE + 0x5000) -#define I2C1_BASE (APB1PERIPH_BASE + 0x5400) -#define I2C2_BASE (APB1PERIPH_BASE + 0x5800) -#define PWR_BASE (APB1PERIPH_BASE + 0x7000) -#define DAC_BASE (APB1PERIPH_BASE + 0x7400) -#define COMP_BASE (APB1PERIPH_BASE + 0x7C00) -#define RI_BASE (APB1PERIPH_BASE + 0x7C04) -#define OPAMP_BASE (APB1PERIPH_BASE + 0x7C5C) - -#define SYSCFG_BASE (APB2PERIPH_BASE + 0x0000) -#define EXTI_BASE (APB2PERIPH_BASE + 0x0400) -#define TIM9_BASE (APB2PERIPH_BASE + 0x0800) -#define TIM10_BASE (APB2PERIPH_BASE + 0x0C00) -#define TIM11_BASE (APB2PERIPH_BASE + 0x1000) -#define ADC1_BASE (APB2PERIPH_BASE + 0x2400) -#define ADC_BASE (APB2PERIPH_BASE + 0x2700) -#define SDIO_BASE (APB2PERIPH_BASE + 0x2C00) -#define SPI1_BASE (APB2PERIPH_BASE + 0x3000) -#define USART1_BASE (APB2PERIPH_BASE + 0x3800) - -#define GPIOA_BASE (AHBPERIPH_BASE + 0x0000) -#define GPIOB_BASE (AHBPERIPH_BASE + 0x0400) -#define GPIOC_BASE (AHBPERIPH_BASE + 0x0800) -#define GPIOD_BASE (AHBPERIPH_BASE + 0x0C00) -#define GPIOE_BASE (AHBPERIPH_BASE + 0x1000) -#define GPIOH_BASE (AHBPERIPH_BASE + 0x1400) -#define GPIOF_BASE (AHBPERIPH_BASE + 0x1800) -#define GPIOG_BASE (AHBPERIPH_BASE + 0x1C00) -#define CRC_BASE (AHBPERIPH_BASE + 0x3000) -#define RCC_BASE (AHBPERIPH_BASE + 0x3800) - - -#define FLASH_R_BASE (AHBPERIPH_BASE + 0x3C00) /*!< FLASH registers base address */ -#define OB_BASE ((uint32_t)0x1FF80000) /*!< FLASH Option Bytes base address */ - -#define DMA1_BASE (AHBPERIPH_BASE + 0x6000) -#define DMA1_Channel1_BASE (DMA1_BASE + 0x0008) -#define DMA1_Channel2_BASE (DMA1_BASE + 0x001C) -#define DMA1_Channel3_BASE (DMA1_BASE + 0x0030) -#define DMA1_Channel4_BASE (DMA1_BASE + 0x0044) -#define DMA1_Channel5_BASE (DMA1_BASE + 0x0058) -#define DMA1_Channel6_BASE (DMA1_BASE + 0x006C) -#define DMA1_Channel7_BASE (DMA1_BASE + 0x0080) - -#define DMA2_BASE (AHBPERIPH_BASE + 0x6400) -#define DMA2_Channel1_BASE (DMA2_BASE + 0x0008) -#define DMA2_Channel2_BASE (DMA2_BASE + 0x001C) -#define DMA2_Channel3_BASE (DMA2_BASE + 0x0030) -#define DMA2_Channel4_BASE (DMA2_BASE + 0x0044) -#define DMA2_Channel5_BASE (DMA2_BASE + 0x0058) - -#define AES_BASE ((uint32_t)0x50060000) - -#define FSMC_Bank1_R_BASE (FSMC_R_BASE + 0x0000) /*!< FSMC Bank1 registers base address */ -#define FSMC_Bank1E_R_BASE (FSMC_R_BASE + 0x0104) /*!< FSMC Bank1E registers base address */ - -#define DBGMCU_BASE ((uint32_t)0xE0042000) /*!< Debug MCU registers 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 LCD ((LCD_TypeDef *) LCD_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 PWR ((PWR_TypeDef *) PWR_BASE) -#define DAC ((DAC_TypeDef *) DAC_BASE) -#define COMP ((COMP_TypeDef *) COMP_BASE) -#define RI ((RI_TypeDef *) RI_BASE) -#define OPAMP ((OPAMP_TypeDef *) OPAMP_BASE) -#define SYSCFG ((SYSCFG_TypeDef *) SYSCFG_BASE) -#define EXTI ((EXTI_TypeDef *) EXTI_BASE) - -#define ADC1 ((ADC_TypeDef *) ADC1_BASE) -#define ADC ((ADC_Common_TypeDef *) ADC_BASE) -#define SDIO ((SDIO_TypeDef *) SDIO_BASE) -#define TIM9 ((TIM_TypeDef *) TIM9_BASE) -#define TIM10 ((TIM_TypeDef *) TIM10_BASE) -#define TIM11 ((TIM_TypeDef *) TIM11_BASE) -#define SPI1 ((SPI_TypeDef *) SPI1_BASE) -#define USART1 ((USART_TypeDef *) USART1_BASE) -#define DMA1 ((DMA_TypeDef *) DMA1_BASE) -#define DMA1_Channel1 ((DMA_Channel_TypeDef *) DMA1_Channel1_BASE) -#define DMA1_Channel2 ((DMA_Channel_TypeDef *) DMA1_Channel2_BASE) -#define DMA1_Channel3 ((DMA_Channel_TypeDef *) DMA1_Channel3_BASE) -#define DMA1_Channel4 ((DMA_Channel_TypeDef *) DMA1_Channel4_BASE) -#define DMA1_Channel5 ((DMA_Channel_TypeDef *) DMA1_Channel5_BASE) -#define DMA1_Channel6 ((DMA_Channel_TypeDef *) DMA1_Channel6_BASE) -#define DMA1_Channel7 ((DMA_Channel_TypeDef *) DMA1_Channel7_BASE) - -#define DMA2 ((DMA_TypeDef *) DMA2_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 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 GPIOH ((GPIO_TypeDef *) GPIOH_BASE) -#define GPIOF ((GPIO_TypeDef *) GPIOF_BASE) -#define GPIOG ((GPIO_TypeDef *) GPIOG_BASE) - -#define FLASH ((FLASH_TypeDef *) FLASH_R_BASE) -#define OB ((OB_TypeDef *) OB_BASE) - -#define AES ((AES_TypeDef *) AES_BASE) - -#define FSMC_Bank1 ((FSMC_Bank1_TypeDef *) FSMC_Bank1_R_BASE) -#define FSMC_Bank1E ((FSMC_Bank1E_TypeDef *) FSMC_Bank1E_R_BASE) - -#define DBGMCU ((DBGMCU_TypeDef *) DBGMCU_BASE) - -/** - * @} - */ - -/** @addtogroup Exported_constants - * @{ - */ - -/** @addtogroup Peripheral_Registers_Bits_Definition - * @{ - */ - -/******************************************************************************/ -/* Peripheral Registers Bits Definition */ -/******************************************************************************/ -/******************************************************************************/ -/* */ -/* Analog to Digital Converter (ADC) */ -/* */ -/******************************************************************************/ - -/******************** Bit definition for ADC_SR register ********************/ -#define ADC_SR_AWD ((uint32_t)0x00000001) /*!< Analog watchdog flag */ -#define ADC_SR_EOC ((uint32_t)0x00000002) /*!< End of conversion */ -#define ADC_SR_JEOC ((uint32_t)0x00000004) /*!< Injected channel end of conversion */ -#define ADC_SR_JSTRT ((uint32_t)0x00000008) /*!< Injected channel Start flag */ -#define ADC_SR_STRT ((uint32_t)0x00000010) /*!< Regular channel Start flag */ -#define ADC_SR_OVR ((uint32_t)0x00000020) /*!< Overrun flag */ -#define ADC_SR_ADONS ((uint32_t)0x00000040) /*!< ADC ON status */ -#define ADC_SR_RCNR ((uint32_t)0x00000100) /*!< Regular channel not ready flag */ -#define ADC_SR_JCNR ((uint32_t)0x00000200) /*!< Injected channel not ready flag */ - -/******************* Bit definition for ADC_CR1 register ********************/ -#define ADC_CR1_AWDCH ((uint32_t)0x0000001F) /*!< AWDCH[4:0] bits (Analog watchdog channel select bits) */ -#define ADC_CR1_AWDCH_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_CR1_AWDCH_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_CR1_AWDCH_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_CR1_AWDCH_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_CR1_AWDCH_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -#define ADC_CR1_EOCIE ((uint32_t)0x00000020) /*!< Interrupt enable for EOC */ -#define ADC_CR1_AWDIE ((uint32_t)0x00000040) /*!< Analog Watchdog interrupt enable */ -#define ADC_CR1_JEOCIE ((uint32_t)0x00000080) /*!< Interrupt enable for injected channels */ -#define ADC_CR1_SCAN ((uint32_t)0x00000100) /*!< Scan mode */ -#define ADC_CR1_AWDSGL ((uint32_t)0x00000200) /*!< Enable the watchdog on a single channel in scan mode */ -#define ADC_CR1_JAUTO ((uint32_t)0x00000400) /*!< Automatic injected group conversion */ -#define ADC_CR1_DISCEN ((uint32_t)0x00000800) /*!< Discontinuous mode on regular channels */ -#define ADC_CR1_JDISCEN ((uint32_t)0x00001000) /*!< Discontinuous mode on injected channels */ - -#define ADC_CR1_DISCNUM ((uint32_t)0x0000E000) /*!< DISCNUM[2:0] bits (Discontinuous mode channel count) */ -#define ADC_CR1_DISCNUM_0 ((uint32_t)0x00002000) /*!< Bit 0 */ -#define ADC_CR1_DISCNUM_1 ((uint32_t)0x00004000) /*!< Bit 1 */ -#define ADC_CR1_DISCNUM_2 ((uint32_t)0x00008000) /*!< Bit 2 */ - -#define ADC_CR1_PDD ((uint32_t)0x00010000) /*!< Power Down during Delay phase */ -#define ADC_CR1_PDI ((uint32_t)0x00020000) /*!< Power Down during Idle phase */ - -#define ADC_CR1_JAWDEN ((uint32_t)0x00400000) /*!< Analog watchdog enable on injected channels */ -#define ADC_CR1_AWDEN ((uint32_t)0x00800000) /*!< Analog watchdog enable on regular channels */ - -#define ADC_CR1_RES ((uint32_t)0x03000000) /*!< RES[1:0] bits (Resolution) */ -#define ADC_CR1_RES_0 ((uint32_t)0x01000000) /*!< Bit 0 */ -#define ADC_CR1_RES_1 ((uint32_t)0x02000000) /*!< Bit 1 */ - -#define ADC_CR1_OVRIE ((uint32_t)0x04000000) /*!< Overrun interrupt enable */ - -/******************* Bit definition for ADC_CR2 register ********************/ -#define ADC_CR2_ADON ((uint32_t)0x00000001) /*!< A/D Converter ON / OFF */ -#define ADC_CR2_CONT ((uint32_t)0x00000002) /*!< Continuous Conversion */ -#define ADC_CR2_CFG ((uint32_t)0x00000004) /*!< ADC Configuration */ - -#define ADC_CR2_DELS ((uint32_t)0x00000070) /*!< DELS[2:0] bits (Delay selection) */ -#define ADC_CR2_DELS_0 ((uint32_t)0x00000010) /*!< Bit 0 */ -#define ADC_CR2_DELS_1 ((uint32_t)0x00000020) /*!< Bit 1 */ -#define ADC_CR2_DELS_2 ((uint32_t)0x00000040) /*!< Bit 2 */ - -#define ADC_CR2_DMA ((uint32_t)0x00000100) /*!< Direct Memory access mode */ -#define ADC_CR2_DDS ((uint32_t)0x00000200) /*!< DMA disable selection (Single ADC) */ -#define ADC_CR2_EOCS ((uint32_t)0x00000400) /*!< End of conversion selection */ -#define ADC_CR2_ALIGN ((uint32_t)0x00000800) /*!< Data Alignment */ - -#define ADC_CR2_JEXTSEL ((uint32_t)0x000F0000) /*!< JEXTSEL[3:0] bits (External event select for injected group) */ -#define ADC_CR2_JEXTSEL_0 ((uint32_t)0x00010000) /*!< Bit 0 */ -#define ADC_CR2_JEXTSEL_1 ((uint32_t)0x00020000) /*!< Bit 1 */ -#define ADC_CR2_JEXTSEL_2 ((uint32_t)0x00040000) /*!< Bit 2 */ -#define ADC_CR2_JEXTSEL_3 ((uint32_t)0x00080000) /*!< Bit 3 */ - -#define ADC_CR2_JEXTEN ((uint32_t)0x00300000) /*!< JEXTEN[1:0] bits (External Trigger Conversion mode for injected channels) */ -#define ADC_CR2_JEXTEN_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_CR2_JEXTEN_1 ((uint32_t)0x00200000) /*!< Bit 1 */ - -#define ADC_CR2_JSWSTART ((uint32_t)0x00400000) /*!< Start Conversion of injected channels */ - -#define ADC_CR2_EXTSEL ((uint32_t)0x0F000000) /*!< EXTSEL[3:0] bits (External Event Select for regular group) */ -#define ADC_CR2_EXTSEL_0 ((uint32_t)0x01000000) /*!< Bit 0 */ -#define ADC_CR2_EXTSEL_1 ((uint32_t)0x02000000) /*!< Bit 1 */ -#define ADC_CR2_EXTSEL_2 ((uint32_t)0x04000000) /*!< Bit 2 */ -#define ADC_CR2_EXTSEL_3 ((uint32_t)0x08000000) /*!< Bit 3 */ - -#define ADC_CR2_EXTEN ((uint32_t)0x30000000) /*!< EXTEN[1:0] bits (External Trigger Conversion mode for regular channels) */ -#define ADC_CR2_EXTEN_0 ((uint32_t)0x10000000) /*!< Bit 0 */ -#define ADC_CR2_EXTEN_1 ((uint32_t)0x20000000) /*!< Bit 1 */ - -#define ADC_CR2_SWSTART ((uint32_t)0x40000000) /*!< Start Conversion of regular channels */ - -/****************** Bit definition for ADC_SMPR1 register *******************/ -#define ADC_SMPR1_SMP20 ((uint32_t)0x00000007) /*!< SMP20[2:0] bits (Channel 20 Sample time selection) */ -#define ADC_SMPR1_SMP20_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SMPR1_SMP20_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SMPR1_SMP20_2 ((uint32_t)0x00000004) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP21 ((uint32_t)0x00000038) /*!< SMP21[2:0] bits (Channel 21 Sample time selection) */ -#define ADC_SMPR1_SMP21_0 ((uint32_t)0x00000008) /*!< Bit 0 */ -#define ADC_SMPR1_SMP21_1 ((uint32_t)0x00000010) /*!< Bit 1 */ -#define ADC_SMPR1_SMP21_2 ((uint32_t)0x00000020) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP22 ((uint32_t)0x000001C0) /*!< SMP22[2:0] bits (Channel 22 Sample time selection) */ -#define ADC_SMPR1_SMP22_0 ((uint32_t)0x00000040) /*!< Bit 0 */ -#define ADC_SMPR1_SMP22_1 ((uint32_t)0x00000080) /*!< Bit 1 */ -#define ADC_SMPR1_SMP22_2 ((uint32_t)0x00000100) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP23 ((uint32_t)0x00000E00) /*!< SMP23[2:0] bits (Channel 23 Sample time selection) */ -#define ADC_SMPR1_SMP23_0 ((uint32_t)0x00000200) /*!< Bit 0 */ -#define ADC_SMPR1_SMP23_1 ((uint32_t)0x00000400) /*!< Bit 1 */ -#define ADC_SMPR1_SMP23_2 ((uint32_t)0x00000800) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP24 ((uint32_t)0x00007000) /*!< SMP24[2:0] bits (Channel 24 Sample time selection) */ -#define ADC_SMPR1_SMP24_0 ((uint32_t)0x00001000) /*!< Bit 0 */ -#define ADC_SMPR1_SMP24_1 ((uint32_t)0x00002000) /*!< Bit 1 */ -#define ADC_SMPR1_SMP24_2 ((uint32_t)0x00004000) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP25 ((uint32_t)0x00038000) /*!< SMP25[2:0] bits (Channel 25 Sample time selection) */ -#define ADC_SMPR1_SMP25_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SMPR1_SMP25_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SMPR1_SMP25_2 ((uint32_t)0x00020000) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP26 ((uint32_t)0x001C0000) /*!< SMP26[2:0] bits (Channel 26 Sample time selection) */ -#define ADC_SMPR1_SMP26_0 ((uint32_t)0x00040000) /*!< Bit 0 */ -#define ADC_SMPR1_SMP26_1 ((uint32_t)0x00080000) /*!< Bit 1 */ -#define ADC_SMPR1_SMP26_2 ((uint32_t)0x00100000) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP27 ((uint32_t)0x00E00000) /*!< SMP27[2:0] bits (Channel 27 Sample time selection) */ -#define ADC_SMPR1_SMP27_0 ((uint32_t)0x00200000) /*!< Bit 0 */ -#define ADC_SMPR1_SMP27_1 ((uint32_t)0x00400000) /*!< Bit 1 */ -#define ADC_SMPR1_SMP27_2 ((uint32_t)0x00800000) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP28 ((uint32_t)0x07000000) /*!< SMP28[2:0] bits (Channel 28 Sample time selection) */ -#define ADC_SMPR1_SMP28_0 ((uint32_t)0x01000000) /*!< Bit 0 */ -#define ADC_SMPR1_SMP28_1 ((uint32_t)0x02000000) /*!< Bit 1 */ -#define ADC_SMPR1_SMP28_2 ((uint32_t)0x04000000) /*!< Bit 2 */ - -#define ADC_SMPR1_SMP29 ((uint32_t)0x38000000) /*!< SMP29[2:0] bits (Channel 29 Sample time selection) */ -#define ADC_SMPR1_SMP29_0 ((uint32_t)0x08000000) /*!< Bit 0 */ -#define ADC_SMPR1_SMP29_1 ((uint32_t)0x10000000) /*!< Bit 1 */ -#define ADC_SMPR1_SMP29_2 ((uint32_t)0x20000000) /*!< Bit 2 */ - -/****************** Bit definition for ADC_SMPR2 register *******************/ -#define ADC_SMPR2_SMP10 ((uint32_t)0x00000007) /*!< SMP10[2:0] bits (Channel 10 Sample time selection) */ -#define ADC_SMPR2_SMP10_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SMPR2_SMP10_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SMPR2_SMP10_2 ((uint32_t)0x00000004) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP11 ((uint32_t)0x00000038) /*!< SMP11[2:0] bits (Channel 11 Sample time selection) */ -#define ADC_SMPR2_SMP11_0 ((uint32_t)0x00000008) /*!< Bit 0 */ -#define ADC_SMPR2_SMP11_1 ((uint32_t)0x00000010) /*!< Bit 1 */ -#define ADC_SMPR2_SMP11_2 ((uint32_t)0x00000020) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP12 ((uint32_t)0x000001C0) /*!< SMP12[2:0] bits (Channel 12 Sample time selection) */ -#define ADC_SMPR2_SMP12_0 ((uint32_t)0x00000040) /*!< Bit 0 */ -#define ADC_SMPR2_SMP12_1 ((uint32_t)0x00000080) /*!< Bit 1 */ -#define ADC_SMPR2_SMP12_2 ((uint32_t)0x00000100) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP13 ((uint32_t)0x00000E00) /*!< SMP13[2:0] bits (Channel 13 Sample time selection) */ -#define ADC_SMPR2_SMP13_0 ((uint32_t)0x00000200) /*!< Bit 0 */ -#define ADC_SMPR2_SMP13_1 ((uint32_t)0x00000400) /*!< Bit 1 */ -#define ADC_SMPR2_SMP13_2 ((uint32_t)0x00000800) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP14 ((uint32_t)0x00007000) /*!< SMP14[2:0] bits (Channel 14 Sample time selection) */ -#define ADC_SMPR2_SMP14_0 ((uint32_t)0x00001000) /*!< Bit 0 */ -#define ADC_SMPR2_SMP14_1 ((uint32_t)0x00002000) /*!< Bit 1 */ -#define ADC_SMPR2_SMP14_2 ((uint32_t)0x00004000) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP15 ((uint32_t)0x00038000) /*!< SMP15[2:0] bits (Channel 5 Sample time selection) */ -#define ADC_SMPR2_SMP15_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SMPR2_SMP15_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SMPR2_SMP15_2 ((uint32_t)0x00020000) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP16 ((uint32_t)0x001C0000) /*!< SMP16[2:0] bits (Channel 16 Sample time selection) */ -#define ADC_SMPR2_SMP16_0 ((uint32_t)0x00040000) /*!< Bit 0 */ -#define ADC_SMPR2_SMP16_1 ((uint32_t)0x00080000) /*!< Bit 1 */ -#define ADC_SMPR2_SMP16_2 ((uint32_t)0x00100000) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP17 ((uint32_t)0x00E00000) /*!< SMP17[2:0] bits (Channel 17 Sample time selection) */ -#define ADC_SMPR2_SMP17_0 ((uint32_t)0x00200000) /*!< Bit 0 */ -#define ADC_SMPR2_SMP17_1 ((uint32_t)0x00400000) /*!< Bit 1 */ -#define ADC_SMPR2_SMP17_2 ((uint32_t)0x00800000) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP18 ((uint32_t)0x07000000) /*!< SMP18[2:0] bits (Channel 18 Sample time selection) */ -#define ADC_SMPR2_SMP18_0 ((uint32_t)0x01000000) /*!< Bit 0 */ -#define ADC_SMPR2_SMP18_1 ((uint32_t)0x02000000) /*!< Bit 1 */ -#define ADC_SMPR2_SMP18_2 ((uint32_t)0x04000000) /*!< Bit 2 */ - -#define ADC_SMPR2_SMP19 ((uint32_t)0x38000000) /*!< SMP19[2:0] bits (Channel 19 Sample time selection) */ -#define ADC_SMPR2_SMP19_0 ((uint32_t)0x08000000) /*!< Bit 0 */ -#define ADC_SMPR2_SMP19_1 ((uint32_t)0x10000000) /*!< Bit 1 */ -#define ADC_SMPR2_SMP19_2 ((uint32_t)0x20000000) /*!< Bit 2 */ - -/****************** Bit definition for ADC_SMPR3 register *******************/ -#define ADC_SMPR3_SMP0 ((uint32_t)0x00000007) /*!< SMP0[2:0] bits (Channel 0 Sample time selection) */ -#define ADC_SMPR3_SMP0_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SMPR3_SMP0_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SMPR3_SMP0_2 ((uint32_t)0x00000004) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP1 ((uint32_t)0x00000038) /*!< SMP1[2:0] bits (Channel 1 Sample time selection) */ -#define ADC_SMPR3_SMP1_0 ((uint32_t)0x00000008) /*!< Bit 0 */ -#define ADC_SMPR3_SMP1_1 ((uint32_t)0x00000010) /*!< Bit 1 */ -#define ADC_SMPR3_SMP1_2 ((uint32_t)0x00000020) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP2 ((uint32_t)0x000001C0) /*!< SMP2[2:0] bits (Channel 2 Sample time selection) */ -#define ADC_SMPR3_SMP2_0 ((uint32_t)0x00000040) /*!< Bit 0 */ -#define ADC_SMPR3_SMP2_1 ((uint32_t)0x00000080) /*!< Bit 1 */ -#define ADC_SMPR3_SMP2_2 ((uint32_t)0x00000100) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP3 ((uint32_t)0x00000E00) /*!< SMP3[2:0] bits (Channel 3 Sample time selection) */ -#define ADC_SMPR3_SMP3_0 ((uint32_t)0x00000200) /*!< Bit 0 */ -#define ADC_SMPR3_SMP3_1 ((uint32_t)0x00000400) /*!< Bit 1 */ -#define ADC_SMPR3_SMP3_2 ((uint32_t)0x00000800) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP4 ((uint32_t)0x00007000) /*!< SMP4[2:0] bits (Channel 4 Sample time selection) */ -#define ADC_SMPR3_SMP4_0 ((uint32_t)0x00001000) /*!< Bit 0 */ -#define ADC_SMPR3_SMP4_1 ((uint32_t)0x00002000) /*!< Bit 1 */ -#define ADC_SMPR3_SMP4_2 ((uint32_t)0x00004000) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP5 ((uint32_t)0x00038000) /*!< SMP5[2:0] bits (Channel 5 Sample time selection) */ -#define ADC_SMPR3_SMP5_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SMPR3_SMP5_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SMPR3_SMP5_2 ((uint32_t)0x00020000) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP6 ((uint32_t)0x001C0000) /*!< SMP6[2:0] bits (Channel 6 Sample time selection) */ -#define ADC_SMPR3_SMP6_0 ((uint32_t)0x00040000) /*!< Bit 0 */ -#define ADC_SMPR3_SMP6_1 ((uint32_t)0x00080000) /*!< Bit 1 */ -#define ADC_SMPR3_SMP6_2 ((uint32_t)0x00100000) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP7 ((uint32_t)0x00E00000) /*!< SMP7[2:0] bits (Channel 7 Sample time selection) */ -#define ADC_SMPR3_SMP7_0 ((uint32_t)0x00200000) /*!< Bit 0 */ -#define ADC_SMPR3_SMP7_1 ((uint32_t)0x00400000) /*!< Bit 1 */ -#define ADC_SMPR3_SMP7_2 ((uint32_t)0x00800000) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP8 ((uint32_t)0x07000000) /*!< SMP8[2:0] bits (Channel 8 Sample time selection) */ -#define ADC_SMPR3_SMP8_0 ((uint32_t)0x01000000) /*!< Bit 0 */ -#define ADC_SMPR3_SMP8_1 ((uint32_t)0x02000000) /*!< Bit 1 */ -#define ADC_SMPR3_SMP8_2 ((uint32_t)0x04000000) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP9 ((uint32_t)0x38000000) /*!< SMP9[2:0] bits (Channel 9 Sample time selection) */ -#define ADC_SMPR3_SMP9_0 ((uint32_t)0x08000000) /*!< Bit 0 */ -#define ADC_SMPR3_SMP9_1 ((uint32_t)0x10000000) /*!< Bit 1 */ -#define ADC_SMPR3_SMP9_2 ((uint32_t)0x20000000) /*!< Bit 2 */ - -/****************** Bit definition for ADC_JOFR1 register *******************/ -#define ADC_JOFR1_JOFFSET1 ((uint32_t)0x00000FFF) /*!< Data offset for injected channel 1 */ - -/****************** Bit definition for ADC_JOFR2 register *******************/ -#define ADC_JOFR2_JOFFSET2 ((uint32_t)0x00000FFF) /*!< Data offset for injected channel 2 */ - -/****************** Bit definition for ADC_JOFR3 register *******************/ -#define ADC_JOFR3_JOFFSET3 ((uint32_t)0x00000FFF) /*!< Data offset for injected channel 3 */ - -/****************** Bit definition for ADC_JOFR4 register *******************/ -#define ADC_JOFR4_JOFFSET4 ((uint32_t)0x00000FFF) /*!< Data offset for injected channel 4 */ - -/******************* Bit definition for ADC_HTR register ********************/ -#define ADC_HTR_HT ((uint32_t)0x00000FFF) /*!< Analog watchdog high threshold */ - -/******************* Bit definition for ADC_LTR register ********************/ -#define ADC_LTR_LT ((uint32_t)0x00000FFF) /*!< Analog watchdog low threshold */ - -/******************* Bit definition for ADC_SQR1 register *******************/ -#define ADC_SQR1_L ((uint32_t)0x00F00000) /*!< L[3:0] bits (Regular channel sequence length) */ -#define ADC_SQR1_L_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_SQR1_L_1 ((uint32_t)0x00200000) /*!< Bit 1 */ -#define ADC_SQR1_L_2 ((uint32_t)0x00400000) /*!< Bit 2 */ -#define ADC_SQR1_L_3 ((uint32_t)0x00800000) /*!< Bit 3 */ - -#define ADC_SQR1_SQ28 ((uint32_t)0x000F8000) /*!< SQ28[4:0] bits (25th conversion in regular sequence) */ -#define ADC_SQR1_SQ28_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SQR1_SQ28_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SQR1_SQ28_2 ((uint32_t)0x00020000) /*!< Bit 2 */ -#define ADC_SQR1_SQ28_3 ((uint32_t)0x00040000) /*!< Bit 3 */ -#define ADC_SQR1_SQ28_4 ((uint32_t)0x00080000) /*!< Bit 4 */ - -#define ADC_SQR1_SQ27 ((uint32_t)0x00007C00) /*!< SQ27[4:0] bits (27th conversion in regular sequence) */ -#define ADC_SQR1_SQ27_0 ((uint32_t)0x00000400) /*!< Bit 0 */ -#define ADC_SQR1_SQ27_1 ((uint32_t)0x00000800) /*!< Bit 1 */ -#define ADC_SQR1_SQ27_2 ((uint32_t)0x00001000) /*!< Bit 2 */ -#define ADC_SQR1_SQ27_3 ((uint32_t)0x00002000) /*!< Bit 3 */ -#define ADC_SQR1_SQ27_4 ((uint32_t)0x00004000) /*!< Bit 4 */ - -#define ADC_SQR1_SQ26 ((uint32_t)0x000003E0) /*!< SQ26[4:0] bits (26th conversion in regular sequence) */ -#define ADC_SQR1_SQ26_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define ADC_SQR1_SQ26_1 ((uint32_t)0x00000040) /*!< Bit 1 */ -#define ADC_SQR1_SQ26_2 ((uint32_t)0x00000080) /*!< Bit 2 */ -#define ADC_SQR1_SQ26_3 ((uint32_t)0x00000100) /*!< Bit 3 */ -#define ADC_SQR1_SQ26_4 ((uint32_t)0x00000200) /*!< Bit 4 */ - -#define ADC_SQR1_SQ25 ((uint32_t)0x0000001F) /*!< SQ25[4:0] bits (25th conversion in regular sequence) */ -#define ADC_SQR1_SQ25_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SQR1_SQ25_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SQR1_SQ25_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_SQR1_SQ25_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_SQR1_SQ25_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -/******************* Bit definition for ADC_SQR2 register *******************/ -#define ADC_SQR2_SQ19 ((uint32_t)0x0000001F) /*!< SQ19[4:0] bits (19th conversion in regular sequence) */ -#define ADC_SQR2_SQ19_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SQR2_SQ19_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SQR2_SQ19_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_SQR2_SQ19_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_SQR2_SQ19_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -#define ADC_SQR2_SQ20 ((uint32_t)0x000003E0) /*!< SQ20[4:0] bits (20th conversion in regular sequence) */ -#define ADC_SQR2_SQ20_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define ADC_SQR2_SQ20_1 ((uint32_t)0x00000040) /*!< Bit 1 */ -#define ADC_SQR2_SQ20_2 ((uint32_t)0x00000080) /*!< Bit 2 */ -#define ADC_SQR2_SQ20_3 ((uint32_t)0x00000100) /*!< Bit 3 */ -#define ADC_SQR2_SQ20_4 ((uint32_t)0x00000200) /*!< Bit 4 */ - -#define ADC_SQR2_SQ21 ((uint32_t)0x00007C00) /*!< SQ21[4:0] bits (21th conversion in regular sequence) */ -#define ADC_SQR2_SQ21_0 ((uint32_t)0x00000400) /*!< Bit 0 */ -#define ADC_SQR2_SQ21_1 ((uint32_t)0x00000800) /*!< Bit 1 */ -#define ADC_SQR2_SQ21_2 ((uint32_t)0x00001000) /*!< Bit 2 */ -#define ADC_SQR2_SQ21_3 ((uint32_t)0x00002000) /*!< Bit 3 */ -#define ADC_SQR2_SQ21_4 ((uint32_t)0x00004000) /*!< Bit 4 */ - -#define ADC_SQR2_SQ22 ((uint32_t)0x000F8000) /*!< SQ22[4:0] bits (22th conversion in regular sequence) */ -#define ADC_SQR2_SQ22_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SQR2_SQ22_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SQR2_SQ22_2 ((uint32_t)0x00020000) /*!< Bit 2 */ -#define ADC_SQR2_SQ22_3 ((uint32_t)0x00040000) /*!< Bit 3 */ -#define ADC_SQR2_SQ22_4 ((uint32_t)0x00080000) /*!< Bit 4 */ - -#define ADC_SQR2_SQ23 ((uint32_t)0x01F00000) /*!< SQ23[4:0] bits (23th conversion in regular sequence) */ -#define ADC_SQR2_SQ23_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_SQR2_SQ23_1 ((uint32_t)0x00200000) /*!< Bit 1 */ -#define ADC_SQR2_SQ23_2 ((uint32_t)0x00400000) /*!< Bit 2 */ -#define ADC_SQR2_SQ23_3 ((uint32_t)0x00800000) /*!< Bit 3 */ -#define ADC_SQR2_SQ23_4 ((uint32_t)0x01000000) /*!< Bit 4 */ - -#define ADC_SQR2_SQ24 ((uint32_t)0x3E000000) /*!< SQ24[4:0] bits (24th conversion in regular sequence) */ -#define ADC_SQR2_SQ24_0 ((uint32_t)0x02000000) /*!< Bit 0 */ -#define ADC_SQR2_SQ24_1 ((uint32_t)0x04000000) /*!< Bit 1 */ -#define ADC_SQR2_SQ24_2 ((uint32_t)0x08000000) /*!< Bit 2 */ -#define ADC_SQR2_SQ24_3 ((uint32_t)0x10000000) /*!< Bit 3 */ -#define ADC_SQR2_SQ24_4 ((uint32_t)0x20000000) /*!< Bit 4 */ - -/******************* Bit definition for ADC_SQR3 register *******************/ -#define ADC_SQR3_SQ13 ((uint32_t)0x0000001F) /*!< SQ13[4:0] bits (13th conversion in regular sequence) */ -#define ADC_SQR3_SQ13_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SQR3_SQ13_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SQR3_SQ13_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_SQR3_SQ13_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_SQR3_SQ13_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -#define ADC_SQR3_SQ14 ((uint32_t)0x000003E0) /*!< SQ14[4:0] bits (14th conversion in regular sequence) */ -#define ADC_SQR3_SQ14_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define ADC_SQR3_SQ14_1 ((uint32_t)0x00000040) /*!< Bit 1 */ -#define ADC_SQR3_SQ14_2 ((uint32_t)0x00000080) /*!< Bit 2 */ -#define ADC_SQR3_SQ14_3 ((uint32_t)0x00000100) /*!< Bit 3 */ -#define ADC_SQR3_SQ14_4 ((uint32_t)0x00000200) /*!< Bit 4 */ - -#define ADC_SQR3_SQ15 ((uint32_t)0x00007C00) /*!< SQ15[4:0] bits (15th conversion in regular sequence) */ -#define ADC_SQR3_SQ15_0 ((uint32_t)0x00000400) /*!< Bit 0 */ -#define ADC_SQR3_SQ15_1 ((uint32_t)0x00000800) /*!< Bit 1 */ -#define ADC_SQR3_SQ15_2 ((uint32_t)0x00001000) /*!< Bit 2 */ -#define ADC_SQR3_SQ15_3 ((uint32_t)0x00002000) /*!< Bit 3 */ -#define ADC_SQR3_SQ15_4 ((uint32_t)0x00004000) /*!< Bit 4 */ - -#define ADC_SQR3_SQ16 ((uint32_t)0x000F8000) /*!< SQ16[4:0] bits (16th conversion in regular sequence) */ -#define ADC_SQR3_SQ16_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SQR3_SQ16_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SQR3_SQ16_2 ((uint32_t)0x00020000) /*!< Bit 2 */ -#define ADC_SQR3_SQ16_3 ((uint32_t)0x00040000) /*!< Bit 3 */ -#define ADC_SQR3_SQ16_4 ((uint32_t)0x00080000) /*!< Bit 4 */ - -#define ADC_SQR3_SQ17 ((uint32_t)0x01F00000) /*!< SQ17[4:0] bits (17th conversion in regular sequence) */ -#define ADC_SQR3_SQ17_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_SQR3_SQ17_1 ((uint32_t)0x00200000) /*!< Bit 1 */ -#define ADC_SQR3_SQ17_2 ((uint32_t)0x00400000) /*!< Bit 2 */ -#define ADC_SQR3_SQ17_3 ((uint32_t)0x00800000) /*!< Bit 3 */ -#define ADC_SQR3_SQ17_4 ((uint32_t)0x01000000) /*!< Bit 4 */ - -#define ADC_SQR3_SQ18 ((uint32_t)0x3E000000) /*!< SQ18[4:0] bits (18th conversion in regular sequence) */ -#define ADC_SQR3_SQ18_0 ((uint32_t)0x02000000) /*!< Bit 0 */ -#define ADC_SQR3_SQ18_1 ((uint32_t)0x04000000) /*!< Bit 1 */ -#define ADC_SQR3_SQ18_2 ((uint32_t)0x08000000) /*!< Bit 2 */ -#define ADC_SQR3_SQ18_3 ((uint32_t)0x10000000) /*!< Bit 3 */ -#define ADC_SQR3_SQ18_4 ((uint32_t)0x20000000) /*!< Bit 4 */ - -/******************* Bit definition for ADC_SQR4 register *******************/ -#define ADC_SQR4_SQ7 ((uint32_t)0x0000001F) /*!< SQ7[4:0] bits (7th conversion in regular sequence) */ -#define ADC_SQR4_SQ7_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SQR4_SQ7_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SQR4_SQ7_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_SQR4_SQ7_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_SQR4_SQ7_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -#define ADC_SQR4_SQ8 ((uint32_t)0x000003E0) /*!< SQ8[4:0] bits (8th conversion in regular sequence) */ -#define ADC_SQR4_SQ8_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define ADC_SQR4_SQ8_1 ((uint32_t)0x00000040) /*!< Bit 1 */ -#define ADC_SQR4_SQ8_2 ((uint32_t)0x00000080) /*!< Bit 2 */ -#define ADC_SQR4_SQ8_3 ((uint32_t)0x00000100) /*!< Bit 3 */ -#define ADC_SQR4_SQ8_4 ((uint32_t)0x00000200) /*!< Bit 4 */ - -#define ADC_SQR4_SQ9 ((uint32_t)0x00007C00) /*!< SQ9[4:0] bits (9th conversion in regular sequence) */ -#define ADC_SQR4_SQ9_0 ((uint32_t)0x00000400) /*!< Bit 0 */ -#define ADC_SQR4_SQ9_1 ((uint32_t)0x00000800) /*!< Bit 1 */ -#define ADC_SQR4_SQ9_2 ((uint32_t)0x00001000) /*!< Bit 2 */ -#define ADC_SQR4_SQ9_3 ((uint32_t)0x00002000) /*!< Bit 3 */ -#define ADC_SQR4_SQ9_4 ((uint32_t)0x00004000) /*!< Bit 4 */ - -#define ADC_SQR4_SQ10 ((uint32_t)0x000F8000) /*!< SQ10[4:0] bits (10th conversion in regular sequence) */ -#define ADC_SQR4_SQ10_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SQR4_SQ10_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SQR4_SQ10_2 ((uint32_t)0x00020000) /*!< Bit 2 */ -#define ADC_SQR4_SQ10_3 ((uint32_t)0x00040000) /*!< Bit 3 */ -#define ADC_SQR4_SQ10_4 ((uint32_t)0x00080000) /*!< Bit 4 */ - -#define ADC_SQR4_SQ11 ((uint32_t)0x01F00000) /*!< SQ11[4:0] bits (11th conversion in regular sequence) */ -#define ADC_SQR4_SQ11_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_SQR4_SQ11_1 ((uint32_t)0x00200000) /*!< Bit 1 */ -#define ADC_SQR4_SQ11_2 ((uint32_t)0x00400000) /*!< Bit 2 */ -#define ADC_SQR4_SQ11_3 ((uint32_t)0x00800000) /*!< Bit 3 */ -#define ADC_SQR4_SQ11_4 ((uint32_t)0x01000000) /*!< Bit 4 */ - -#define ADC_SQR4_SQ12 ((uint32_t)0x3E000000) /*!< SQ12[4:0] bits (12th conversion in regular sequence) */ -#define ADC_SQR4_SQ12_0 ((uint32_t)0x02000000) /*!< Bit 0 */ -#define ADC_SQR4_SQ12_1 ((uint32_t)0x04000000) /*!< Bit 1 */ -#define ADC_SQR4_SQ12_2 ((uint32_t)0x08000000) /*!< Bit 2 */ -#define ADC_SQR4_SQ12_3 ((uint32_t)0x10000000) /*!< Bit 3 */ -#define ADC_SQR4_SQ12_4 ((uint32_t)0x20000000) /*!< Bit 4 */ - -/******************* Bit definition for ADC_SQR5 register *******************/ -#define ADC_SQR5_SQ1 ((uint32_t)0x0000001F) /*!< SQ1[4:0] bits (1st conversion in regular sequence) */ -#define ADC_SQR5_SQ1_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SQR5_SQ1_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SQR5_SQ1_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_SQR5_SQ1_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_SQR5_SQ1_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -#define ADC_SQR5_SQ2 ((uint32_t)0x000003E0) /*!< SQ2[4:0] bits (2nd conversion in regular sequence) */ -#define ADC_SQR5_SQ2_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define ADC_SQR5_SQ2_1 ((uint32_t)0x00000040) /*!< Bit 1 */ -#define ADC_SQR5_SQ2_2 ((uint32_t)0x00000080) /*!< Bit 2 */ -#define ADC_SQR5_SQ2_3 ((uint32_t)0x00000100) /*!< Bit 3 */ -#define ADC_SQR5_SQ2_4 ((uint32_t)0x00000200) /*!< Bit 4 */ - -#define ADC_SQR5_SQ3 ((uint32_t)0x00007C00) /*!< SQ3[4:0] bits (3rd conversion in regular sequence) */ -#define ADC_SQR5_SQ3_0 ((uint32_t)0x00000400) /*!< Bit 0 */ -#define ADC_SQR5_SQ3_1 ((uint32_t)0x00000800) /*!< Bit 1 */ -#define ADC_SQR5_SQ3_2 ((uint32_t)0x00001000) /*!< Bit 2 */ -#define ADC_SQR5_SQ3_3 ((uint32_t)0x00002000) /*!< Bit 3 */ -#define ADC_SQR5_SQ3_4 ((uint32_t)0x00004000) /*!< Bit 4 */ - -#define ADC_SQR5_SQ4 ((uint32_t)0x000F8000) /*!< SQ4[4:0] bits (4th conversion in regular sequence) */ -#define ADC_SQR5_SQ4_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_SQR5_SQ4_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_SQR5_SQ4_2 ((uint32_t)0x00020000) /*!< Bit 2 */ -#define ADC_SQR5_SQ4_3 ((uint32_t)0x00040000) /*!< Bit 3 */ -#define ADC_SQR5_SQ4_4 ((uint32_t)0x00080000) /*!< Bit 4 */ - -#define ADC_SQR5_SQ5 ((uint32_t)0x01F00000) /*!< SQ5[4:0] bits (5th conversion in regular sequence) */ -#define ADC_SQR5_SQ5_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_SQR5_SQ5_1 ((uint32_t)0x00200000) /*!< Bit 1 */ -#define ADC_SQR5_SQ5_2 ((uint32_t)0x00400000) /*!< Bit 2 */ -#define ADC_SQR5_SQ5_3 ((uint32_t)0x00800000) /*!< Bit 3 */ -#define ADC_SQR5_SQ5_4 ((uint32_t)0x01000000) /*!< Bit 4 */ - -#define ADC_SQR5_SQ6 ((uint32_t)0x3E000000) /*!< SQ6[4:0] bits (6th conversion in regular sequence) */ -#define ADC_SQR5_SQ6_0 ((uint32_t)0x02000000) /*!< Bit 0 */ -#define ADC_SQR5_SQ6_1 ((uint32_t)0x04000000) /*!< Bit 1 */ -#define ADC_SQR5_SQ6_2 ((uint32_t)0x08000000) /*!< Bit 2 */ -#define ADC_SQR5_SQ6_3 ((uint32_t)0x10000000) /*!< Bit 3 */ -#define ADC_SQR5_SQ6_4 ((uint32_t)0x20000000) /*!< Bit 4 */ - - -/******************* Bit definition for ADC_JSQR register *******************/ -#define ADC_JSQR_JSQ1 ((uint32_t)0x0000001F) /*!< JSQ1[4:0] bits (1st conversion in injected sequence) */ -#define ADC_JSQR_JSQ1_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_JSQR_JSQ1_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_JSQR_JSQ1_2 ((uint32_t)0x00000004) /*!< Bit 2 */ -#define ADC_JSQR_JSQ1_3 ((uint32_t)0x00000008) /*!< Bit 3 */ -#define ADC_JSQR_JSQ1_4 ((uint32_t)0x00000010) /*!< Bit 4 */ - -#define ADC_JSQR_JSQ2 ((uint32_t)0x000003E0) /*!< JSQ2[4:0] bits (2nd conversion in injected sequence) */ -#define ADC_JSQR_JSQ2_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define ADC_JSQR_JSQ2_1 ((uint32_t)0x00000040) /*!< Bit 1 */ -#define ADC_JSQR_JSQ2_2 ((uint32_t)0x00000080) /*!< Bit 2 */ -#define ADC_JSQR_JSQ2_3 ((uint32_t)0x00000100) /*!< Bit 3 */ -#define ADC_JSQR_JSQ2_4 ((uint32_t)0x00000200) /*!< Bit 4 */ - -#define ADC_JSQR_JSQ3 ((uint32_t)0x00007C00) /*!< JSQ3[4:0] bits (3rd conversion in injected sequence) */ -#define ADC_JSQR_JSQ3_0 ((uint32_t)0x00000400) /*!< Bit 0 */ -#define ADC_JSQR_JSQ3_1 ((uint32_t)0x00000800) /*!< Bit 1 */ -#define ADC_JSQR_JSQ3_2 ((uint32_t)0x00001000) /*!< Bit 2 */ -#define ADC_JSQR_JSQ3_3 ((uint32_t)0x00002000) /*!< Bit 3 */ -#define ADC_JSQR_JSQ3_4 ((uint32_t)0x00004000) /*!< Bit 4 */ - -#define ADC_JSQR_JSQ4 ((uint32_t)0x000F8000) /*!< JSQ4[4:0] bits (4th conversion in injected sequence) */ -#define ADC_JSQR_JSQ4_0 ((uint32_t)0x00008000) /*!< Bit 0 */ -#define ADC_JSQR_JSQ4_1 ((uint32_t)0x00010000) /*!< Bit 1 */ -#define ADC_JSQR_JSQ4_2 ((uint32_t)0x00020000) /*!< Bit 2 */ -#define ADC_JSQR_JSQ4_3 ((uint32_t)0x00040000) /*!< Bit 3 */ -#define ADC_JSQR_JSQ4_4 ((uint32_t)0x00080000) /*!< Bit 4 */ - -#define ADC_JSQR_JL ((uint32_t)0x00300000) /*!< JL[1:0] bits (Injected Sequence length) */ -#define ADC_JSQR_JL_0 ((uint32_t)0x00100000) /*!< Bit 0 */ -#define ADC_JSQR_JL_1 ((uint32_t)0x00200000) /*!< Bit 1 */ - -/******************* Bit definition for ADC_JDR1 register *******************/ -#define ADC_JDR1_JDATA ((uint32_t)0x0000FFFF) /*!< Injected data */ - -/******************* Bit definition for ADC_JDR2 register *******************/ -#define ADC_JDR2_JDATA ((uint32_t)0x0000FFFF) /*!< Injected data */ - -/******************* Bit definition for ADC_JDR3 register *******************/ -#define ADC_JDR3_JDATA ((uint32_t)0x0000FFFF) /*!< Injected data */ - -/******************* Bit definition for ADC_JDR4 register *******************/ -#define ADC_JDR4_JDATA ((uint32_t)0x0000FFFF) /*!< Injected data */ - -/******************** Bit definition for ADC_DR register ********************/ -#define ADC_DR_DATA ((uint32_t)0x0000FFFF) /*!< Regular data */ - -/****************** Bit definition for ADC_SMPR0 register *******************/ -#define ADC_SMPR3_SMP30 ((uint32_t)0x00000007) /*!< SMP30[2:0] bits (Channel 30 Sample time selection) */ -#define ADC_SMPR3_SMP30_0 ((uint32_t)0x00000001) /*!< Bit 0 */ -#define ADC_SMPR3_SMP30_1 ((uint32_t)0x00000002) /*!< Bit 1 */ -#define ADC_SMPR3_SMP30_2 ((uint32_t)0x00000004) /*!< Bit 2 */ - -#define ADC_SMPR3_SMP31 ((uint32_t)0x00000038) /*!< SMP31[2:0] bits (Channel 31 Sample time selection) */ -#define ADC_SMPR3_SMP31_0 ((uint32_t)0x00000008) /*!< Bit 0 */ -#define ADC_SMPR3_SMP31_1 ((uint32_t)0x00000010) /*!< Bit 1 */ -#define ADC_SMPR3_SMP31_2 ((uint32_t)0x00000020) /*!< Bit 2 */ - -/******************* Bit definition for ADC_CSR register ********************/ -#define ADC_CSR_AWD1 ((uint32_t)0x00000001) /*!< ADC1 Analog watchdog flag */ -#define ADC_CSR_EOC1 ((uint32_t)0x00000002) /*!< ADC1 End of conversion */ -#define ADC_CSR_JEOC1 ((uint32_t)0x00000004) /*!< ADC1 Injected channel end of conversion */ -#define ADC_CSR_JSTRT1 ((uint32_t)0x00000008) /*!< ADC1 Injected channel Start flag */ -#define ADC_CSR_STRT1 ((uint32_t)0x00000010) /*!< ADC1 Regular channel Start flag */ -#define ADC_CSR_OVR1 ((uint32_t)0x00000020) /*!< ADC1 overrun flag */ -#define ADC_CSR_ADONS1 ((uint32_t)0x00000040) /*!< ADON status of ADC1 */ - -/******************* Bit definition for ADC_CCR register ********************/ -#define ADC_CCR_ADCPRE ((uint32_t)0x00030000) /*!< ADC prescaler*/ -#define ADC_CCR_ADCPRE_0 ((uint32_t)0x00010000) /*!< Bit 0 */ -#define ADC_CCR_ADCPRE_1 ((uint32_t)0x00020000) /*!< Bit 1 */ -#define ADC_CCR_TSVREFE ((uint32_t)0x00800000) /*!< Temperature Sensor and VREFINT Enable */ - -/******************************************************************************/ -/* */ -/* Advanced Encryption Standard (AES) */ -/* */ -/******************************************************************************/ -/******************* Bit definition for AES_CR register *********************/ -#define AES_CR_EN ((uint32_t)0x00000001) /*!< AES Enable */ -#define AES_CR_DATATYPE ((uint32_t)0x00000006) /*!< Data type selection */ -#define AES_CR_DATATYPE_0 ((uint32_t)0x00000002) /*!< Bit 0 */ -#define AES_CR_DATATYPE_1 ((uint32_t)0x00000004) /*!< Bit 1 */ - -#define AES_CR_MODE ((uint32_t)0x00000018) /*!< AES Mode Of Operation */ -#define AES_CR_MODE_0 ((uint32_t)0x00000008) /*!< Bit 0 */ -#define AES_CR_MODE_1 ((uint32_t)0x00000010) /*!< Bit 1 */ - -#define AES_CR_CHMOD ((uint32_t)0x00000060) /*!< AES Chaining Mode */ -#define AES_CR_CHMOD_0 ((uint32_t)0x00000020) /*!< Bit 0 */ -#define AES_CR_CHMOD_1 ((uint32_t)0x00000040) /*!< Bit 1 */ - -#define AES_CR_CCFC ((uint32_t)0x00000080) /*!< Computation Complete Flag Clear */ -#define AES_CR_ERRC ((uint32_t)0x00000100) /*!< Error Clear */ -#define AES_CR_CCIE ((uint32_t)0x00000200) /*!< Computation Complete Interrupt Enable */ -#define AES_CR_ERRIE ((uint32_t)0x00000400) /*!< Error Interrupt Enable */ -#define AES_CR_DMAINEN ((uint32_t)0x00000800) /*!< DMA ENable managing the data input phase */ -#define AES_CR_DMAOUTEN ((uint32_t)0x00001000) /*!< DMA Enable managing the data output phase */ - -/******************* Bit definition for AES_SR register *********************/ -#define AES_SR_CCF ((uint32_t)0x00000001) /*!< Computation Complete Flag */ -#define AES_SR_RDERR ((uint32_t)0x00000002) /*!< Read Error Flag */ -#define AES_SR_WRERR ((uint32_t)0x00000004) /*!< Write Error Flag */ - -/******************* Bit definition for AES_DINR register *******************/ -#define AES_DINR ((uint32_t)0x0000FFFF) /*!< AES Data Input Register */ - -/******************* Bit definition for AES_DOUTR register ******************/ -#define AES_DOUTR ((uint32_t)0x0000FFFF) /*!< AES Data Output Register */ - -/******************* Bit definition for AES_KEYR0 register ******************/ -#define AES_KEYR0 ((uint32_t)0x0000FFFF) /*!< AES Key Register 0 */ - -/******************* Bit definition for AES_KEYR1 register ******************/ -#define AES_KEYR1 ((uint32_t)0x0000FFFF) /*!< AES Key Register 1 */ - -/******************* Bit definition for AES_KEYR2 register ******************/ -#define AES_KEYR2 ((uint32_t)0x0000FFFF) /*!< AES Key Register 2 */ - -/******************* Bit definition for AES_KEYR3 register ******************/ -#define AES_KEYR3 ((uint32_t)0x0000FFFF) /*!< AES Key Register 3 */ - -/******************* Bit definition for AES_IVR0 register *******************/ -#define AES_IVR0 ((uint32_t)0x0000FFFF) /*!< AES Initialization Vector Register 0 */ - -/******************* Bit definition for AES_IVR1 register *******************/ -#define AES_IVR1 ((uint32_t)0x0000FFFF) /*!< AES Initialization Vector Register 1 */ - -/******************* Bit definition for AES_IVR2 register *******************/ -#define AES_IVR2 ((uint32_t)0x0000FFFF) /*!< AES Initialization Vector Register 2 */ - -/******************* Bit definition for AES_IVR3 register *******************/ -#define AES_IVR3 ((uint32_t)0x0000FFFF) /*!< AES Initialization Vector Register 3 */ - -/******************************************************************************/ -/* */ -/* Analog Comparators (COMP) */ -/* */ -/******************************************************************************/ - -/****************** Bit definition for COMP_CSR register ********************/ -#define COMP_CSR_10KPU ((uint32_t)0x00000001) /*!< 10K pull-up resistor */ -#define COMP_CSR_400KPU ((uint32_t)0x00000002) /*!< 400K pull-up resistor */ -#define COMP_CSR_10KPD ((uint32_t)0x00000004) /*!< 10K pull-down resistor */ -#define COMP_CSR_400KPD ((uint32_t)0x00000008) /*!< 400K pull-down resistor */ - -#define COMP_CSR_CMP1EN ((uint32_t)0x00000010) /*!< Comparator 1 enable */ -#define COMP_CSR_SW1 ((uint32_t)0x00000020) /*!< SW1 analog switch enable */ -#define COMP_CSR_CMP1OUT ((uint32_t)0x00000080) /*!< Comparator 1 output */ - -#define COMP_CSR_SPEED ((uint32_t)0x00001000) /*!< Comparator 2 speed */ -#define COMP_CSR_CMP2OUT ((uint32_t)0x00002000) /*!< Comparator 2 ouput */ - -#define COMP_CSR_VREFOUTEN ((uint32_t)0x00010000) /*!< Comparator Vref Enable */ -#define COMP_CSR_WNDWE ((uint32_t)0x00020000) /*!< Window mode enable */ - -#define COMP_CSR_INSEL ((uint32_t)0x001C0000) /*!< INSEL[2:0] Inversion input Selection */ -#define COMP_CSR_INSEL_0 ((uint32_t)0x00040000) /*!< Bit 0 */ -#define COMP_CSR_INSEL_1 ((uint32_t)0x00080000) /*!< Bit 1 */ -#define COMP_CSR_INSEL_2 ((uint32_t)0x00100000) /*!< Bit 2 */ - -#define COMP_CSR_OUTSEL ((uint32_t)0x00E00000) /*!< OUTSEL[2:0] comparator 2 output redirection */ -#define COMP_CSR_OUTSEL_0 ((uint32_t)0x00200000) /*!< Bit 0 */ -#define COMP_CSR_OUTSEL_1 ((uint32_t)0x00400000) /*!< Bit 1 */ -#define COMP_CSR_OUTSEL_2 ((uint32_t)0x00800000) /*!< Bit 2 */ - -#define COMP_CSR_FCH3 ((uint32_t)0x04000000) /*!< Bit 26 */ -#define COMP_CSR_FCH8 ((uint32_t)0x08000000) /*!< Bit 27 */ -#define COMP_CSR_RCH13 ((uint32_t)0x10000000) /*!< Bit 28 */ - -#define COMP_CSR_CAIE ((uint32_t)0x20000000) /*!< Bit 29 */ -#define COMP_CSR_CAIF ((uint32_t)0x40000000) /*!< Bit 30 */ -#define COMP_CSR_TSUSP ((uint32_t)0x80000000) /*!< Bit 31 */ - -/******************************************************************************/ -/* */ -/* Operational Amplifier (OPAMP) */ -/* */ -/******************************************************************************/ -/******************* Bit definition for OPAMP_CSR register ******************/ -#define OPAMP_CSR_OPA1PD ((uint32_t)0x00000001) /*!< OPAMP1 disable */ -#define OPAMP_CSR_S3SEL1 ((uint32_t)0x00000002) /*!< Switch 3 for OPAMP1 Enable */ -#define OPAMP_CSR_S4SEL1 ((uint32_t)0x00000004) /*!< Switch 4 for OPAMP1 Enable */ -#define OPAMP_CSR_S5SEL1 ((uint32_t)0x00000008) /*!< Switch 5 for OPAMP1 Enable */ -#define OPAMP_CSR_S6SEL1 ((uint32_t)0x00000010) /*!< Switch 6 for OPAMP1 Enable */ -#define OPAMP_CSR_OPA1CAL_L ((uint32_t)0x00000020) /*!< OPAMP1 Offset calibration for P differential pair */ -#define OPAMP_CSR_OPA1CAL_H ((uint32_t)0x00000040) /*!< OPAMP1 Offset calibration for N differential pair */ -#define OPAMP_CSR_OPA1LPM ((uint32_t)0x00000080) /*!< OPAMP1 Low power enable */ -#define OPAMP_CSR_OPA2PD ((uint32_t)0x00000100) /*!< OPAMP2 disable */ -#define OPAMP_CSR_S3SEL2 ((uint32_t)0x00000200) /*!< Switch 3 for OPAMP2 Enable */ -#define OPAMP_CSR_S4SEL2 ((uint32_t)0x00000400) /*!< Switch 4 for OPAMP2 Enable */ -#define OPAMP_CSR_S5SEL2 ((uint32_t)0x00000800) /*!< Switch 5 for OPAMP2 Enable */ -#define OPAMP_CSR_S6SEL2 ((uint32_t)0x00001000) /*!< Switch 6 for OPAMP2 Enable */ -#define OPAMP_CSR_OPA2CAL_L ((uint32_t)0x00002000) /*!< OPAMP2 Offset calibration for P differential pair */ -#define OPAMP_CSR_OPA2CAL_H ((uint32_t)0x00004000) /*!< OPAMP2 Offset calibration for N differential pair */ -#define OPAMP_CSR_OPA2LPM ((uint32_t)0x00008000) /*!< OPAMP2 Low power enable */ -#define OPAMP_CSR_OPA3PD ((uint32_t)0x00010000) /*!< OPAMP3 disable */ -#define OPAMP_CSR_S3SEL3 ((uint32_t)0x00020000) /*!< Switch 3 for OPAMP3 Enable */ -#define OPAMP_CSR_S4SEL3 ((uint32_t)0x00040000) /*!< Switch 4 for OPAMP3 Enable */ -#define OPAMP_CSR_S5SEL3 ((uint32_t)0x00080000) /*!< Switch 5 for OPAMP3 Enable */ -#define OPAMP_CSR_S6SEL3 ((uint32_t)0x00100000) /*!< Switch 6 for OPAMP3 Enable */ -#define OPAMP_CSR_OPA3CAL_L ((uint32_t)0x00200000) /*!< OPAMP3 Offset calibration for P differential pair */ -#define OPAMP_CSR_OPA3CAL_H ((uint32_t)0x00400000) /*!< OPAMP3 Offset calibration for N differential pair */ -#define OPAMP_CSR_OPA3LPM ((uint32_t)0x00800000) /*!< OPAMP3 Low power enable */ -#define OPAMP_CSR_ANAWSEL1 ((uint32_t)0x01000000) /*!< Switch ANA Enable for OPAMP1 */ -#define OPAMP_CSR_ANAWSEL2 ((uint32_t)0x02000000) /*!< Switch ANA Enable for OPAMP2 */ -#define OPAMP_CSR_ANAWSEL3 ((uint32_t)0x04000000) /*!< Switch ANA Enable for OPAMP3 */ -#define OPAMP_CSR_S7SEL2 ((uint32_t)0x08000000) /*!< Switch 7 for OPAMP2 Enable */ -#define OPAMP_CSR_AOP_RANGE ((uint32_t)0x10000000) /*!< Power range selection */ -#define OPAMP_CSR_OPA1CALOUT ((uint32_t)0x20000000) /*!< OPAMP1 calibration output */ -#define OPAMP_CSR_OPA2CALOUT ((uint32_t)0x40000000) /*!< OPAMP2 calibration output */ -#define OPAMP_CSR_OPA3CALOUT ((uint32_t)0x80000000) /*!< OPAMP3 calibration output */ - -/******************* Bit definition for OPAMP_OTR register ******************/ -#define OPAMP_OTR_AO1_OPT_OFFSET_TRIM ((uint32_t)0x000003FF) /*!< Offset trim for OPAMP1 */ -#define OPAMP_OTR_AO2_OPT_OFFSET_TRIM ((uint32_t)0x000FFC00) /*!< Offset trim for OPAMP2 */ -#define OPAMP_OTR_AO3_OPT_OFFSET_TRIM ((uint32_t)0x3FF00000) /*!< Offset trim for OPAMP2 */ -#define OPAMP_OTR_OT_USER ((uint32_t)0x80000000) /*!< Switch to OPAMP offset user trimmed values */ - -/******************* Bit definition for OPAMP_LPOTR register ****************/ -#define OPAMP_LP_OTR_AO1_OPT_OFFSET_TRIM_LP ((uint32_t)0x000003FF) /*!< Offset trim in low power for OPAMP1 */ -#define OPAMP_LP_OTR_AO2_OPT_OFFSET_TRIM_LP ((uint32_t)0x000FFC00) /*!< Offset trim in low power for OPAMP2 */ -#define OPAMP_LP_OTR_AO3_OPT_OFFSET_TRIM_LP ((uint32_t)0x3FF00000) /*!< Offset trim in low power for OPAMP3 */ - -/******************************************************************************/ -/* */ -/* CRC calculation unit (CRC) */ -/* */ -/******************************************************************************/ - -/******************* Bit definition for CRC_DR register *********************/ -#define CRC_DR_DR ((uint32_t)0xFFFFFFFF) /*!< Data register bits */ - -/******************* Bit definition for CRC_IDR register ********************/ -#define CRC_IDR_IDR ((uint8_t)0xFF) /*!< General-purpose 8-bit data register bits */ - -/******************** Bit definition for CRC_CR register ********************/ -#define CRC_CR_RESET ((uint32_t)0x00000001) /*!< RESET bit */ - -/******************************************************************************/ -/* */ -/* Digital to Analog Converter (DAC) */ -/* */ -/******************************************************************************/ - -/******************** Bit definition for DAC_CR register ********************/ -#define DAC_CR_EN1 ((uint32_t)0x00000001) /*!
© COPYRIGHT 2012 STMicroelectronics
- * - * Licensed under MCD-ST Liberty SW License Agreement V2, (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.st.com/software_license_agreement_liberty_v2 - * - * 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. - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32L1xx_CONF_H -#define __STM32L1xx_CONF_H - -/* Includes ------------------------------------------------------------------*/ -/* Uncomment/Comment the line below to enable/disable peripheral header file inclusion */ -#include "stm32l1xx_adc.h" -#include "stm32l1xx_aes.h" -#include "stm32l1xx_comp.h" -#include "stm32l1xx_crc.h" -#include "stm32l1xx_dac.h" -#include "stm32l1xx_dbgmcu.h" -#include "stm32l1xx_dma.h" -#include "stm32l1xx_exti.h" -#include "stm32l1xx_flash.h" -#include "stm32l1xx_fsmc.h" -#include "stm32l1xx_gpio.h" -#include "stm32l1xx_i2c.h" -#include "stm32l1xx_iwdg.h" -#include "stm32l1xx_lcd.h" -#include "stm32l1xx_opamp.h" -#include "stm32l1xx_pwr.h" -#include "stm32l1xx_rcc.h" -#include "stm32l1xx_rtc.h" -#include "stm32l1xx_sdio.h" -#include "stm32l1xx_spi.h" -#include "stm32l1xx_syscfg.h" -#include "stm32l1xx_tim.h" -#include "stm32l1xx_usart.h" -#include "stm32l1xx_wwdg.h" -#include "misc.h" /* High level functions for NVIC and SysTick (add-on to CMSIS functions) */ - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Uncomment the line below to expanse the "assert_param" macro in the - Standard Peripheral Library drivers code */ -/* #define USE_FULL_ASSERT 1 */ - -/* 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)0 : assert_failed((uint8_t *)__FILE__, __LINE__)) -/* Exported functions ------------------------------------------------------- */ - void assert_failed(uint8_t* file, uint32_t line); -#else - #define assert_param(expr) ((void)0) -#endif /* USE_FULL_ASSERT */ - -#endif /* __STM32L1xx_CONF_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/src/boards/Bleeper-76/cmsis/system_stm32l1xx.c b/src/boards/Bleeper-76/cmsis/system_stm32l1xx.c deleted file mode 100644 index 4181a7436..000000000 --- a/src/boards/Bleeper-76/cmsis/system_stm32l1xx.c +++ /dev/null @@ -1,394 +0,0 @@ -/** - ****************************************************************************** - * @file system_stm32l1xx.c - * @author MCD Application Team - * @version V1.2.0 - * @date 27-August-2013 - * @brief CMSIS Cortex-M3 Device Peripheral Access Layer System Source File. - * This file contains the system clock configuration for STM32L1xx Ultra - * Low power devices, and is generated by the clock configuration - * tool STM32L1xx_Clock_Configuration_V1.2.0.xls - * - * 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 - * and Divider factors, AHB/APBx prescalers and Flash settings), - * depending on the configuration made in the clock xls tool. - * This function is called at startup just after reset and - * before branch to main program. This call is made inside - * the "startup_stm32l1xx_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 MSI (2.1 MHz Range) is used as system clock source. - * Then SystemInit() function is called, in "startup_stm32l1xx_xx.s" file, to - * configure the system clock before to branch to main program. - * - * 3. If the system clock source selected by user fails to startup, the SystemInit() - * function will do nothing and MSI still used as system clock source. User can - * add some code to deal with this issue inside the SetSysClock() function. - * - * 4. The default value of HSE crystal is set to 8MHz, refer to "HSE_VALUE" define - * in "stm32l1xx.h" file. 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. - * - * 5. This file configures the system clock as follows: - *============================================================================= - * System Clock Configuration - *============================================================================= - * System Clock source | PLL(HSE) - *----------------------------------------------------------------------------- - * SYSCLK | 32000000 Hz - *----------------------------------------------------------------------------- - * HCLK | 32000000 Hz - *----------------------------------------------------------------------------- - * AHB Prescaler | 1 - *----------------------------------------------------------------------------- - * APB1 Prescaler | 1 - *----------------------------------------------------------------------------- - * APB2 Prescaler | 1 - *----------------------------------------------------------------------------- - * HSE Frequency | 12000000 Hz - *----------------------------------------------------------------------------- - * PLL DIV | 3 - *----------------------------------------------------------------------------- - * PLL MUL | 8 - *----------------------------------------------------------------------------- - * VDD | 3.3 V - *----------------------------------------------------------------------------- - * Vcore | 1.8 V (Range 1) - *----------------------------------------------------------------------------- - * Flash Latency | 1 WS - *----------------------------------------------------------------------------- - * Require 48MHz for USB clock | Enabled - *----------------------------------------------------------------------------- - *============================================================================= - * @attention - * - *

© COPYRIGHT 2013 STMicroelectronics

- * - * Licensed under MCD-ST Liberty SW License Agreement V2, (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.st.com/software_license_agreement_liberty_v2 - * - * 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. - * - ****************************************************************************** - */ - -/** @addtogroup CMSIS - * @{ - */ - -/** @addtogroup stm32l1xx_system - * @{ - */ - -/** @addtogroup STM32L1xx_System_Private_Includes - * @{ - */ - -#include "stm32l1xx.h" - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Private_TypesDefinitions - * @{ - */ - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Private_Defines - * @{ - */ - -/*!< Uncomment the following line if you need to relocate your vector Table in - Internal SRAM. */ -/* #define VECT_TAB_SRAM */ -#define VECT_TAB_OFFSET 0x0 /*!< Vector Table base offset field. - This value must be a multiple of 0x200. */ -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Private_Macros - * @{ - */ - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Private_Variables - * @{ - */ -uint32_t SystemCoreClock = 32000000; -__I uint8_t PLLMulTable[9] = {3, 4, 6, 8, 12, 16, 24, 32, 48}; -__I uint8_t AHBPrescTable[16] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 7, 8, 9}; - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Private_FunctionPrototypes - * @{ - */ - -static void SetSysClock(void); - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Private_Functions - * @{ - */ - -/** - * @brief Setup the microcontroller system. - * Initialize the Embedded Flash Interface, the PLL and update the - * SystemCoreClock variable. - * @param None - * @retval None - */ -void SystemInit (void) -{ - /*!< Set MSION bit */ - RCC->CR |= (uint32_t)0x00000100; - - /*!< Reset SW[1:0], HPRE[3:0], PPRE1[2:0], PPRE2[2:0], MCOSEL[2:0] and MCOPRE[2:0] bits */ - RCC->CFGR &= (uint32_t)0x88FFC00C; - - /*!< Reset HSION, HSEON, CSSON and PLLON bits */ - RCC->CR &= (uint32_t)0xEEFEFFFE; - - /*!< Reset HSEBYP bit */ - RCC->CR &= (uint32_t)0xFFFBFFFF; - - /*!< Reset PLLSRC, PLLMUL[3:0] and PLLDIV[1:0] bits */ - RCC->CFGR &= (uint32_t)0xFF02FFFF; - - /*!< Disable all interrupts */ - RCC->CIR = 0x00000000; - - /* Configure the System clock frequency, AHB/APBx prescalers and Flash settings */ - SetSysClock(); - -#ifdef VECT_TAB_SRAM - SCB->VTOR = SRAM_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM. */ -#else - SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal FLASH. */ -#endif -} - -/** - * @brief Update SystemCoreClock 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 MSI, SystemCoreClock will contain the MSI - * value as defined by the MSI range. - * - * - 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/divided by the PLL factors. - * - * (*) HSI_VALUE is a constant defined in stm32l1xx.h file (default value - * 16 MHz) but the real value may vary depending on the variations - * in voltage and temperature. - * - * (**) HSE_VALUE is a constant defined in stm32l1xx.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. - * - * - 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 = 0, pllmul = 0, plldiv = 0, pllsource = 0, msirange = 0; - - /* Get SYSCLK source -------------------------------------------------------*/ - tmp = RCC->CFGR & RCC_CFGR_SWS; - - switch (tmp) - { - case 0x00: /* MSI used as system clock */ - msirange = (RCC->ICSCR & RCC_ICSCR_MSIRANGE) >> 13; - SystemCoreClock = (32768 * (1 << (msirange + 1))); - break; - case 0x04: /* HSI used as system clock */ - SystemCoreClock = HSI_VALUE; - break; - case 0x08: /* HSE used as system clock */ - SystemCoreClock = HSE_VALUE; - break; - case 0x0C: /* PLL used as system clock */ - /* Get PLL clock source and multiplication factor ----------------------*/ - pllmul = RCC->CFGR & RCC_CFGR_PLLMUL; - plldiv = RCC->CFGR & RCC_CFGR_PLLDIV; - pllmul = PLLMulTable[(pllmul >> 18)]; - plldiv = (plldiv >> 22) + 1; - - pllsource = RCC->CFGR & RCC_CFGR_PLLSRC; - - if (pllsource == 0x00) - { - /* HSI oscillator clock selected as PLL clock entry */ - SystemCoreClock = (((HSI_VALUE) * pllmul) / plldiv); - } - else - { - /* HSE selected as PLL clock entry */ - SystemCoreClock = (((HSE_VALUE) * pllmul) / plldiv); - } - break; - default: /* MSI used as system clock */ - msirange = (RCC->ICSCR & RCC_ICSCR_MSIRANGE) >> 13; - SystemCoreClock = (32768 * (1 << (msirange + 1))); - break; - } - /* Compute HCLK clock frequency --------------------------------------------*/ - /* Get HCLK prescaler */ - tmp = AHBPrescTable[((RCC->CFGR & RCC_CFGR_HPRE) >> 4)]; - /* HCLK clock frequency */ - SystemCoreClock >>= tmp; -} - -/** - * @brief Configures the System clock frequency, AHB/APBx prescalers and Flash - * settings. - * @note This function should be called only once the RCC clock configuration - * is reset to the default reset state (done in SystemInit() function). - * @param None - * @retval None - */ -static void SetSysClock(void) -{ - __IO uint32_t StartUpCounter = 0, HSEStatus = 0; - - /* SYSCLK, HCLK, PCLK2 and PCLK1 configuration ---------------------------*/ - /* Enable HSE */ - RCC->CR |= ((uint32_t)RCC_CR_HSEON); - - /* Wait till HSE is ready and if Time out is reached exit */ - do - { - HSEStatus = RCC->CR & RCC_CR_HSERDY; - StartUpCounter++; - } while((HSEStatus == 0) && (StartUpCounter != HSE_STARTUP_TIMEOUT)); - - if ((RCC->CR & RCC_CR_HSERDY) != RESET) - { - HSEStatus = (uint32_t)0x01; - } - else - { - HSEStatus = (uint32_t)0x00; - } - - if (HSEStatus == (uint32_t)0x01) - { - /* Enable 64-bit access */ - FLASH->ACR |= FLASH_ACR_ACC64; - - /* Enable Prefetch Buffer */ - FLASH->ACR |= FLASH_ACR_PRFTEN; - - /* Flash 1 wait state */ - FLASH->ACR |= FLASH_ACR_LATENCY; - - /* Power enable */ - RCC->APB1ENR |= RCC_APB1ENR_PWREN; - - /* Select the Voltage Range 1 (1.8 V) */ - PWR->CR = PWR_CR_VOS_0; - - /* Wait Until the Voltage Regulator is ready */ - while((PWR->CSR & PWR_CSR_VOSF) != RESET) - { - } - - /* HCLK = SYSCLK /1*/ - RCC->CFGR |= (uint32_t)RCC_CFGR_HPRE_DIV1; - - /* PCLK2 = HCLK /1*/ - RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE2_DIV1; - - /* PCLK1 = HCLK /1*/ - RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE1_DIV1; - - /* PLL configuration */ - RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLMUL | - RCC_CFGR_PLLDIV)); - RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMUL8 | RCC_CFGR_PLLDIV3); - - /* Enable PLL */ - RCC->CR |= RCC_CR_PLLON; - - /* Wait till PLL is ready */ - while((RCC->CR & RCC_CR_PLLRDY) == 0) - { - } - - /* Select PLL as system clock source */ - RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_SW)); - RCC->CFGR |= (uint32_t)RCC_CFGR_SW_PLL; - - /* Wait till PLL is used as system clock source */ - while ((RCC->CFGR & (uint32_t)RCC_CFGR_SWS) != (uint32_t)RCC_CFGR_SWS_PLL) - { - } - } - else - { - /* If HSE fails to start-up, the application will have wrong clock - configuration. User can add here some code to deal with this error */ - } -} - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -/******************* (C) COPYRIGHT 2013 STMicroelectronics *****END OF FILE****/ diff --git a/src/boards/Bleeper-76/cmsis/system_stm32l1xx.h b/src/boards/Bleeper-76/cmsis/system_stm32l1xx.h deleted file mode 100644 index 25ad24096..000000000 --- a/src/boards/Bleeper-76/cmsis/system_stm32l1xx.h +++ /dev/null @@ -1,104 +0,0 @@ -/** - ****************************************************************************** - * @file system_stm32l1xx.h - * @author MCD Application Team - * @version V1.2.0 - * @date 22-February-2013 - * @brief CMSIS Cortex-M3 Device Peripheral Access Layer System Header File. - ****************************************************************************** - * @attention - * - *

© COPYRIGHT 2013 STMicroelectronics

- * - * Licensed under MCD-ST Liberty SW License Agreement V2, (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.st.com/software_license_agreement_liberty_v2 - * - * 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. - * - ****************************************************************************** - */ - -/** @addtogroup CMSIS - * @{ - */ - -/** @addtogroup stm32l1xx_system - * @{ - */ - -/** - * @brief Define to prevent recursive inclusion - */ -#ifndef __SYSTEM_STM32L1XX_H -#define __SYSTEM_STM32L1XX_H - -#ifdef __cplusplus - extern "C" { -#endif - -/** @addtogroup STM32L1xx_System_Includes - * @{ - */ - -/** - * @} - */ - - -/** @addtogroup STM32L1xx_System_Exported_types - * @{ - */ - -extern uint32_t SystemCoreClock; /*!< System Clock Frequency (Core Clock) */ - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Exported_Constants - * @{ - */ - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Exported_Macros - * @{ - */ - -/** - * @} - */ - -/** @addtogroup STM32L1xx_System_Exported_Functions - * @{ - */ - -extern void SystemInit(void); -extern void SystemCoreClockUpdate(void); -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /*__SYSTEM_STM32L1XX_H */ - -/** - * @} - */ - -/** - * @} - */ -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/src/boards/Bleeper-76/gpio-board.c b/src/boards/Bleeper-76/gpio-board.c deleted file mode 100644 index 7121671ec..000000000 --- a/src/boards/Bleeper-76/gpio-board.c +++ /dev/null @@ -1,406 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper board GPIO driver implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include "board.h" -#include "gpio-board.h" -#include "stm32l1xx_gpio.h" - -static GpioIrqHandler *GpioIrq[16]; - -void GpioMcuInit( Gpio_t *obj, PinNames pin, PinModes mode, PinConfigs config, PinTypes type, uint32_t value ) -{ - GPIO_InitTypeDef GPIO_InitStructure; - - if( pin == NC ) - { - return; - } - - obj->portIndex = ( uint32_t ) pin >> 4; - - obj->pin = pin; - obj->pinIndex = ( 0x01 << ( obj->pin & 0x0F ) ); - - if( obj->portIndex < 6 ) - { - obj->port = ( GPIO_TypeDef * )( GPIOA_BASE + ( obj->portIndex << 10 ) ); - RCC_AHBPeriphClockCmd( ( 0x01 << obj->portIndex ), ENABLE ); - } - else if( obj->portIndex == 6 ) - { /* GPIO base address not in alphabetical order after GPIOE (cf stm32l1xx.h, line 926 ) */ - /* Access to GPIOF and GPIOG not implemented */ - obj->port = ( GPIO_TypeDef * )( GPIOH_BASE ); - RCC_AHBPeriphClockCmd( ( 0x01 << ( obj->portIndex - 1 ) ), ENABLE ); - } - - // Sets initial output value - if( mode == PIN_OUTPUT ) - { - GpioMcuWrite( obj, value ); - } - - GPIO_InitStructure.GPIO_Mode = ( GPIOMode_TypeDef )mode; - GPIO_InitStructure.GPIO_OType = ( GPIOOType_TypeDef )config; - GPIO_InitStructure.GPIO_PuPd = ( GPIOPuPd_TypeDef )type; - GPIO_InitStructure.GPIO_Speed = GPIO_Speed_40MHz; - GPIO_InitStructure.GPIO_Pin = obj->pinIndex; - GPIO_Init( obj->port, &GPIO_InitStructure ); -} - -void GpioMcuSetInterrupt( Gpio_t *obj, IrqModes irqMode, IrqPriorities irqPriority, GpioIrqHandler *irqHandler ) -{ - NVIC_InitTypeDef NVIC_InitStructure; - EXTI_InitTypeDef EXTI_InitStructure; - - if( irqHandler == NULL ) - { - return; - } - - GpioIrq[obj->pin & 0x0F] = irqHandler; - - /* Enable SYSCFG clock */ - RCC_APB2PeriphClockCmd( RCC_APB2Periph_SYSCFG, ENABLE ); - - /* Connect EXTI Line to GPIO pin */ - SYSCFG_EXTILineConfig( obj->portIndex, ( ( obj->pin ) & 0x0F ) ); - - /* Configure EXTI line */ - EXTI_InitStructure.EXTI_Line = ( 0x01 << ( obj->pin & 0x0F ) ); - EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; - - if( irqMode == IRQ_RISING_EDGE ) - { - EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising; - } - else if( irqMode == IRQ_FALLING_EDGE ) - { - EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; - } - else if( irqMode == IRQ_RISING_FALLING_EDGE ) - { - EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising_Falling; - } - else - { - while( 1 ); - } - - EXTI_InitStructure.EXTI_LineCmd = ENABLE; - EXTI_Init(&EXTI_InitStructure); - - if( ( ( obj->pin ) & 0x0F ) < 5 ) - { - NVIC_InitStructure.NVIC_IRQChannel = ( ( obj->pin ) & 0x0F ) + 6; - } - else if( ( ( obj->pin ) & 0x0F ) < 10 ) - { - NVIC_InitStructure.NVIC_IRQChannel = 23; - } - else if( ( ( obj->pin ) & 0x0F ) < 16 ) - { - NVIC_InitStructure.NVIC_IRQChannel = 40; - } - else - { - while( 1 ); - } - - if( irqPriority == IRQ_VERY_LOW_PRIORITY ) - { - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 15; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - } - else if( irqPriority == IRQ_LOW_PRIORITY ) - { - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 12; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - } - else if( irqPriority == IRQ_MEDIUM_PRIORITY ) - { - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 8; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - } - else if( irqPriority == IRQ_HIGH_PRIORITY ) - { - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 4; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - } - else if( irqPriority == IRQ_VERY_HIGH_PRIORITY ) - { - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - } - else - { - while( 1 ); - } - NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; - NVIC_Init( &NVIC_InitStructure ); - -} - -void GpioMcuRemoveInterrupt( Gpio_t *obj ) -{ - EXTI_InitTypeDef EXTI_InitStructure; - - GpioIrq[obj->pin & 0x0F] = NULL; - - EXTI_InitStructure.EXTI_Line = ( 0x01 << ( obj->pin & 0x0F ) ); - EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; - EXTI_InitStructure.EXTI_LineCmd = DISABLE; - EXTI_Init(&EXTI_InitStructure); -} - -void GpioMcuWrite( Gpio_t *obj, uint32_t value ) -{ - if( ( obj == NULL ) || ( obj->port == NULL ) ) - { - while( 1 ); - } - // Check if pin is not connected - if( obj->pin == NC ) - { - return; - } - if( value == 0 ) - { - GPIO_ResetBits( obj->port, obj->pinIndex ); - } - else - { - GPIO_SetBits( obj->port, obj->pinIndex ); - } -} - -uint32_t GpioMcuRead( Gpio_t *obj ) -{ - if( obj == NULL ) - { - while( 1 ); - } - // Check if pin is not connected - if( obj->pin == NC ) - { - return 0; - } - return GPIO_ReadInputDataBit( obj->port, obj->pinIndex ); -} - -void EXTI0_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line0 ) != RESET ) - { - if( GpioIrq[0] != NULL ) - { - GpioIrq[0]( ); - } - EXTI_ClearITPendingBit( EXTI_Line0 ); - } -} - -void EXTI1_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line1 ) != RESET ) - { - if( GpioIrq[1] != NULL ) - { - GpioIrq[1]( ); - } - EXTI_ClearITPendingBit( EXTI_Line1 ); - } -} - -void EXTI2_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line2 ) != RESET ) - { - if( GpioIrq[2] != NULL ) - { - GpioIrq[2]( ); - } - EXTI_ClearITPendingBit( EXTI_Line2 ); - } -} - -void EXTI3_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line3 ) != RESET ) - { - if( GpioIrq[3] != NULL ) - { - GpioIrq[3]( ); - } - EXTI_ClearITPendingBit( EXTI_Line3 ); - } -} - -void EXTI4_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line4 ) != RESET ) - { - if( GpioIrq[4] != NULL ) - { - GpioIrq[4]( ); - } - EXTI_ClearITPendingBit( EXTI_Line4 ); - } -} - -void EXTI9_5_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line5 ) != RESET ) - { - if( GpioIrq[5] != NULL ) - { - GpioIrq[5]( ); - } - EXTI_ClearITPendingBit( EXTI_Line5 ); - } - - if( EXTI_GetITStatus( EXTI_Line6 ) != RESET ) - { - if( GpioIrq[6] != NULL ) - { - GpioIrq[6]( ); - } - EXTI_ClearITPendingBit( EXTI_Line6 ); - } - - if( EXTI_GetITStatus( EXTI_Line7 ) != RESET ) - { - if( GpioIrq[7] != NULL ) - { - GpioIrq[7]( ); - } - EXTI_ClearITPendingBit( EXTI_Line7 ); - } - - if( EXTI_GetITStatus( EXTI_Line8 ) != RESET ) - { - if( GpioIrq[8] != NULL ) - { - GpioIrq[8]( ); - } - EXTI_ClearITPendingBit( EXTI_Line8 ); - } - - if( EXTI_GetITStatus( EXTI_Line9 ) != RESET ) - { - if( GpioIrq[9] != NULL ) - { - GpioIrq[9]( ); - } - EXTI_ClearITPendingBit( EXTI_Line9 ); - } -} - -void EXTI15_10_IRQHandler( void ) -{ -#if !defined( USE_NO_TIMER ) - if( TimerGetLowPowerEnable( ) == true ) - { - RtcRecoverMcuStatus( ); - } -#endif - if( EXTI_GetITStatus( EXTI_Line10 ) != RESET ) - { - if( GpioIrq[10] != NULL ) - { - GpioIrq[10]( ); - } - EXTI_ClearITPendingBit( EXTI_Line10 ); - } - - if( EXTI_GetITStatus( EXTI_Line11 ) != RESET ) - { - if( GpioIrq[11] != NULL ) - { - GpioIrq[11]( ); - } - EXTI_ClearITPendingBit( EXTI_Line11 ); - } - - if( EXTI_GetITStatus( EXTI_Line12 ) != RESET ) - { - if( GpioIrq[12] != NULL ) - { - GpioIrq[12]( ); - } - EXTI_ClearITPendingBit( EXTI_Line12 ); - } - - if( EXTI_GetITStatus( EXTI_Line13 ) != RESET ) - { - if( GpioIrq[13] != NULL ) - { - GpioIrq[13]( ); - } - EXTI_ClearITPendingBit( EXTI_Line13 ); - } - - if( EXTI_GetITStatus( EXTI_Line14 ) != RESET ) - { - if( GpioIrq[14] != NULL ) - { - GpioIrq[14]( ); - } - EXTI_ClearITPendingBit( EXTI_Line14 ); - } - - if( EXTI_GetITStatus( EXTI_Line15 ) != RESET ) - { - if( GpioIrq[15] != NULL ) - { - GpioIrq[15]( ); - } - EXTI_ClearITPendingBit( EXTI_Line15 ); - } -} diff --git a/src/boards/Bleeper-76/gpio-board.h b/src/boards/Bleeper-76/gpio-board.h deleted file mode 100644 index 4fc0843ac..000000000 --- a/src/boards/Bleeper-76/gpio-board.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper board GPIO driver implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __GPIO_MCU_H__ -#define __GPIO_MCU_H__ - -/*! - * \brief Initializes the given GPIO object - * - * \param [IN] obj Pointer to the GPIO object to be initialized - * \param [IN] pin Pin name ( please look in pinName-board.h file ) - * \param [IN] mode Pin mode [PIN_INPUT, PIN_OUTPUT, - * PIN_ALTERNATE_FCT, PIN_ANALOGIC] - * \param [IN] config Pin config [PIN_PUSH_PULL, PIN_OPEN_DRAIN] - * \param [IN] type Pin type [PIN_NO_PULL, PIN_PULL_UP, PIN_PULL_DOWN] - * \param [IN] value Default output value at initialisation - */ -void GpioMcuInit( Gpio_t *obj, PinNames pin, PinModes mode, PinConfigs config, PinTypes type, uint32_t value ); - -/*! - * \brief GPIO IRQ Initialization - * - * \param [IN] obj Pointer to the GPIO object to be initialized - * \param [IN] irqMode IRQ mode [NO_IRQ, IRQ_RISING_EDGE, - * IRQ_FALLING_EDGE, IRQ_RISING_FALLING_EDGE] - * \param [IN] irqPriority IRQ priority [IRQ_VERY_LOW_PRIORITY, IRQ_LOW_PRIORITY - * IRQ_MEDIUM_PRIORITY, IRQ_HIGH_PRIORITY - * IRQ_VERY_HIGH_PRIORITY] - * \param [IN] irqHandler Callback function pointer - */ -void GpioMcuSetInterrupt( Gpio_t *obj, IrqModes irqMode, IrqPriorities irqPriority, GpioIrqHandler *irqHandler ); - -/*! - * \brief GPIO IRQ DeInitialization - * - * \param [IN] obj Pointer to the GPIO object to be Deinitialized - */ -void GpioMcuRemoveInterrupt( Gpio_t *obj ); - -/*! - * \brief Writes the given value to the GPIO output - * - * \param [IN] obj Pointer to the GPIO object - * \param [IN] value New GPIO output value - */ -void GpioMcuWrite( Gpio_t *obj, uint32_t value ); - -/*! - * \brief Reads the current GPIO input value - * - * \param [IN] obj Pointer to the GPIO object - * \retval value Current GPIO input value - */ -uint32_t GpioMcuRead( Gpio_t *obj ); - -#endif // __GPIO_MCU_H__ diff --git a/src/boards/Bleeper-76/i2c-board.c b/src/boards/Bleeper-76/i2c-board.c deleted file mode 100644 index def3bf6af..000000000 --- a/src/boards/Bleeper-76/i2c-board.c +++ /dev/null @@ -1,582 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper board I2C driver implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include "board.h" -#include "i2c-board.h" - -/*! - * The value of the maximal timeout for I2C waiting loops - */ -#define TIMEOUT_MAX 0x8000 - -I2cAddrSize I2cInternalAddrSize = I2C_ADDR_SIZE_8; - -/*! - * MCU I2C peripherals enumeration - */ -typedef enum { - I2C_1 = ( uint32_t )I2C1_BASE, - I2C_2 = ( uint32_t )I2C2_BASE, -} I2cName; - -void I2cMcuInit( I2c_t *obj, PinNames scl, PinNames sda ) -{ - obj->I2c = ( I2C_TypeDef * )I2C2_BASE; - - RCC_APB1PeriphClockCmd( RCC_APB1Periph_I2C2, ENABLE ); - - I2C_DeInit( obj->I2c ); - - GpioInit( &obj->Scl, scl, PIN_ALTERNATE_FCT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &obj->Sda, sda, PIN_ALTERNATE_FCT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - - GPIO_PinAFConfig( obj->Scl.port, ( obj->Scl.pin & 0x0F ), GPIO_AF_I2C2 ); - GPIO_PinAFConfig( obj->Sda.port, ( obj->Sda.pin & 0x0F ), GPIO_AF_I2C2 ); -} - -void I2cMcuFormat( I2c_t *obj, I2cMode mode, I2cDutyCycle dutyCycle, bool I2cAckEnable, I2cAckAddrMode AckAddrMode, uint32_t I2cFrequency ) -{ - I2C_InitTypeDef I2C_InitStructure; - - if( mode == MODE_I2C ) - { - I2C_InitStructure.I2C_Mode = 0x0000; - } - else if( mode == MODE_SMBUS_DEVICE ) - { - I2C_InitStructure.I2C_Mode = 0x0002; - } - else - { - I2C_InitStructure.I2C_Mode = 0x000A; // MODE_SMBUS_HOST - } - - if( dutyCycle == I2C_DUTY_CYCLE_2 ) - { - I2C_InitStructure.I2C_DutyCycle = 0xBFFF; - } - else - { - I2C_InitStructure.I2C_DutyCycle = 0x4000; //I2C_DUTY_CYCLE_16_9 - } - - if( I2cAckEnable == true ) - { - I2C_InitStructure.I2C_Ack = 0x0400; - } - else - { - I2C_InitStructure.I2C_Ack = 0x0000; - } - - if( AckAddrMode == I2C_ACK_ADD_7_BIT ) - { - I2C_InitStructure.I2C_AcknowledgedAddress = 0x4000; - } - else - { - I2C_InitStructure.I2C_AcknowledgedAddress = 0xC000; // I2C_ACK_ADD_10_BIT - } - - if( I2cFrequency > 400000 ) - { - I2C_InitStructure.I2C_ClockSpeed = 400000; - } - else - { - I2C_InitStructure.I2C_ClockSpeed = I2cFrequency; - } - - I2C_Init( obj->I2c, &I2C_InitStructure ); - - /* I2C Peripheral Enable */ - I2C_Cmd( obj->I2c, ENABLE ); -} - -void I2cMcuDeInit( I2c_t *obj ) -{ - I2C_DeInit( obj->I2c ); - - GpioInit( &obj->Scl, obj->Scl.pin, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &obj->Sda, obj->Sda.pin, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); -} - -void I2cSetAddrSize( I2c_t *obj, I2cAddrSize addrSize ) -{ - I2cInternalAddrSize = addrSize; -} - -uint8_t I2cMcuWriteBuffer( I2c_t *obj, uint8_t deviceAddr, uint16_t addr, uint8_t *buffer, uint16_t size ) -{ - uint32_t timeOut; - - __disable_irq( ); - - /* Test on BUSY Flag */ - timeOut = TIMEOUT_MAX; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_BUSY) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Send START condition */ - I2C_GenerateSTART( obj->I2c, ENABLE ); - - /* Test on EV5 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_MODE_SELECT ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Send device's address for write */ - I2C_Send7bitAddress( obj->I2c, deviceAddr, I2C_Direction_Transmitter ); - - /* Test on EV6 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - if( I2cInternalAddrSize == I2C_ADDR_SIZE_16 ) - { - /* Send the device's internal address MSB to write to */ - I2C_SendData( obj->I2c, ( uint8_t )( ( addr & 0xFF00 ) >> 8 ) ); - - /* Test on EV8 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_BYTE_TRANSMITTING ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - } - - /* Send the device's internal address LSB to write to */ - I2C_SendData( obj->I2c, ( uint8_t )( addr & 0x00FF ) ); - - /* Test on EV8 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_BYTE_TRANSMITTING ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - while( size ) - { - /* Send the byte to be written */ - I2C_SendData( obj->I2c, *buffer ); - - /* Test on EV8 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_BYTE_TRANSMITTING ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - if( size == 1 ) - { - I2C_GenerateSTOP( obj->I2c, ENABLE ); - - /* Wait to make sure that STOP control bit has been cleared */ - timeOut = TIMEOUT_MAX; - while(obj->I2c->CR1 & I2C_CR1_STOP) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - } /* STOP */ - - buffer++; - size--; - } - - __enable_irq( ); - return( SUCCESS ); -} - -uint8_t I2cMcuReadBuffer( I2c_t *obj, uint8_t deviceAddr, uint16_t addr, uint8_t *buffer, uint16_t size ) -{ - uint32_t timeOut; - - __disable_irq( ); - - /* Test on BUSY Flag */ - timeOut = TIMEOUT_MAX; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_BUSY ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Send START condition */ - I2C_GenerateSTART( obj->I2c, ENABLE ); - - /* Test on EV5 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_MODE_SELECT ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Send device's address for write */ - I2C_Send7bitAddress( obj->I2c, deviceAddr, I2C_Direction_Transmitter ); - - /* Test on EV6 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - if( I2cInternalAddrSize == I2C_ADDR_SIZE_16 ) - { - /* Send the device's internal address MSB to write to */ - I2C_SendData( obj->I2c, ( uint8_t )( ( addr & 0xFF00 ) >> 8 ) ); - - /* Test on EV8 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_BYTE_TRANSMITTING ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - } - - /* Send the device's internal address LSB to write to */ - I2C_SendData( obj->I2c, ( uint8_t )( addr & 0x00FF ) ); - - /* Test on EV8 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_BYTE_TRANSMITTING ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Test on EV8 and clear it */ - timeOut = TIMEOUT_MAX; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_BTF ) == RESET ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Send START condition a second time */ - I2C_GenerateSTART( obj->I2c, ENABLE ); - - /* Test on EV5 and clear it */ - timeOut = TIMEOUT_MAX; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_MODE_SELECT ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Send device's address for read */ - I2C_Send7bitAddress( obj->I2c, deviceAddr, I2C_Direction_Receiver ); - - if( size < 2 ) - { - /* Wait on ADDR flag to be set (ADDR is still not cleared at this level */ - timeOut = TIMEOUT_MAX; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_ADDR ) == RESET ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Disable Acknowledgement */ - I2C_AcknowledgeConfig( obj->I2c, DISABLE ); - - /* Clear ADDR register by reading SR1 then SR2 register (SR1 has already been read) */ - ( void )obj->I2c->SR2; - - /* Send STOP Condition */ - I2C_GenerateSTOP( obj->I2c, ENABLE ); - - /* Wait for the byte to be received */ - timeOut = TIMEOUT_MAX; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_RXNE ) == RESET ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Read a byte from the device */ - *buffer = I2C_ReceiveData( obj->I2c ); - - /* Decrement the read bytes counter */ - size--; - } - else - { - timeOut = TIMEOUT_MAX; - while( I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_RECEIVER_MODE_SELECTED ) == ERROR ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - while( size ) - { - if( size == 1 ) - { - /* Disable Acknowledgement */ - I2C_AcknowledgeConfig( obj->I2c, DISABLE ); - - /* Send STOP Condition */ - I2C_GenerateSTOP( obj->I2c, ENABLE ); - } - - timeOut = TIMEOUT_MAX; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_RXNE ) == RESET ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /* Read a byte from the device */ - *buffer = I2C_ReceiveData( obj->I2c ); - - /* Point to the next location where the byte read will be saved */ - buffer++; - - /* Decrement the read bytes counter */ - size--; - } - - /* Wait to make sure that STOP control bit has been cleared */ - timeOut = TIMEOUT_MAX; - while( obj->I2c->CR1 & I2C_CR1_STOP ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - } - - /*!< Re-Enable Acknowledgement to be ready for another reception */ - I2C_AcknowledgeConfig( obj->I2c, ENABLE ); - - __enable_irq( ); - return( SUCCESS ); -} - -/* Maximum Timeout values for flags and events waiting loops. These timeouts are - not based on accurate values, they just guarantee that the application will - not remain stuck if the I2C communication is corrupted. - You may modify these timeout values depending on CPU frequency and application - conditions (interrupts routines ...). */ -#define EE_FLAG_TIMEOUT ( ( uint32_t )0x1000 ) -#define EE_LONG_TIMEOUT ( ( uint32_t )( 10 * EE_FLAG_TIMEOUT ) ) - -/* Maximum number of trials for I2cMcuWaitStandbyState( ) function */ -#define EE_MAX_TRIALS_NUMBER 300 - -uint8_t I2cMcuWaitStandbyState( I2c_t *obj, uint8_t deviceAddr ) -{ - uint32_t timeOut; - volatile uint16_t tmpSR1 = 0; - volatile uint32_t trials = 0; - - __disable_irq( ); - - /*!< While the bus is busy */ - timeOut = EE_LONG_TIMEOUT; - while( I2C_GetFlagStatus( obj->I2c, I2C_FLAG_BUSY ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - __enable_irq( ); - return( FAIL ); - } - } - - /* Keep looping till the slave acknowledge his address or maximum number - of trials is reached (this number is defined by EE_MAX_TRIALS_NUMBER define - in eeProm.h file) */ - while( 1 ) - { - /*!< Send START condition */ - I2C_GenerateSTART( obj->I2c, ENABLE ); - - /*!< Test on EV5 and clear it */ - timeOut = EE_FLAG_TIMEOUT; - while( !I2C_CheckEvent( obj->I2c, I2C_EVENT_MASTER_MODE_SELECT ) ) - { - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - - __enable_irq( ); - return( FAIL ); - } - } - - /*!< Send device address for write */ - I2C_Send7bitAddress( obj->I2c, deviceAddr, I2C_Direction_Transmitter ); - - /* Wait for ADDR flag to be set (Slave acknowledged his address) */ - timeOut = EE_LONG_TIMEOUT; - do - { - /* Get the current value of the SR1 register */ - tmpSR1 = obj->I2c->SR1; - - /* Update the timeout value and exit if it reach 0 */ - if( ( timeOut-- ) == 0 ) - { - I2cResetBus( obj ); - __enable_irq( ); - return( FAIL ); - } - } - /* Keep looping till the Address is acknowledged or the AF flag is - set (address not acknowledged at time) */ - while( ( tmpSR1 & ( I2C_SR1_ADDR | I2C_SR1_AF ) ) == 0 ); - - /* Check if the ADDR flag has been set */ - if ( tmpSR1 & I2C_SR1_ADDR ) - { - /* Clear ADDR Flag by reading SR1 then SR2 registers (SR1 have already - been read) */ - ( void )obj->I2c->SR2; - - /*!< STOP condition */ - I2C_GenerateSTOP( obj->I2c, ENABLE ); - - /* Exit the function */ - __enable_irq( ); - return ( SUCCESS ); - } - else - { - /*!< Clear AF flag */ - I2C_ClearFlag( obj->I2c, I2C_FLAG_AF ); - } - - /* Check if the maximum allowed number of trials has bee reached */ - if ( trials++ == EE_MAX_TRIALS_NUMBER ) - { - I2cResetBus( obj ); - /* If the maximum number of trials has been reached, exit the function */ - __enable_irq( ); - return( FAIL ); - } - } -} diff --git a/src/boards/Bleeper-76/i2c-board.h b/src/boards/Bleeper-76/i2c-board.h deleted file mode 100644 index 72aae12bb..000000000 --- a/src/boards/Bleeper-76/i2c-board.h +++ /dev/null @@ -1,121 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper board I2C driver implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __I2C_MCU_H__ -#define __I2C_MCU_H__ - -/*! - * Operation Mode for the I2C - */ -typedef enum -{ - MODE_I2C = 0, - MODE_SMBUS_DEVICE, - MODE_SMBUS_HOST -}I2cMode; - -/*! - * I2C signal duty cycle - */ -typedef enum -{ - I2C_DUTY_CYCLE_2 = 0, - I2C_DUTY_CYCLE_16_9 -}I2cDutyCycle; - -/*! - * I2C select if the acknowledge in after the 7th or 10th bit - */ -typedef enum -{ - I2C_ACK_ADD_7_BIT = 0, - I2C_ACK_ADD_10_BIT -}I2cAckAddrMode; - -/*! - * Internal device address size - */ -typedef enum -{ - I2C_ADDR_SIZE_8 = 0, - I2C_ADDR_SIZE_16, -}I2cAddrSize; - -/*! - * \brief Initializes the I2C object and MCU peripheral - * - * \param [IN] obj I2C object - * \param [IN] scl I2C Scl pin name to be used - * \param [IN] sda I2C Sda pin name to be used - */ -void I2cMcuInit( I2c_t *obj, PinNames scl, PinNames sda ); - -/*! - * \brief Initializes the I2C object and MCU peripheral - * - * \param [IN] obj I2C object - * \param [IN] mode Mode of operation for the I2C Bus - * \param [IN] dutyCycle Signal duty cycle - * \param [IN] I2cAckEnable Enable or Disable to ack - * \param [IN] AckAddrMode 7bit or 10 bit addressing - * \param [IN] I2cFrequency I2C bus clock frequency - */ -void I2cMcuFormat( I2c_t *obj, I2cMode mode, I2cDutyCycle dutyCycle, bool I2cAckEnable, I2cAckAddrMode AckAddrMode, uint32_t I2cFrequency ); - -/*! - * \brief DeInitializes the I2C object and MCU peripheral - * - * \param [IN] obj I2C object - */ -void I2cMcuDeInit( I2c_t *obj ); - -/*! - * \brief Write several data to the I2C device - * - * \param [IN] obj I2C object - * \param [IN] deviceAddr device address - * \param [IN] addr register address - * \param [IN] buffer data buffer to write - * \param [IN] size number of data byte to write - */ -uint8_t I2cMcuWriteBuffer( I2c_t *obj, uint8_t deviceAddr, uint16_t addr, uint8_t *buffer, uint16_t size ); - -/*! - * \brief Read several data byte from the I2C device - * - * \param [IN] obj I2C object - * \param [IN] deviceAddr device address - * \param [IN] addr register address - * \param [IN] buffer data buffer used to store the data read - * \param [IN] size number of data byte to read - */ -uint8_t I2cMcuReadBuffer( I2c_t *obj, uint8_t deviceAddr, uint16_t addr, uint8_t *buffer, uint16_t size ); - -/*! - * \brief Waits until the given device is in standby mode - * - * \param [IN] obj I2C object - * \param [IN] deviceAddr device address - */ -uint8_t I2cMcuWaitStandbyState( I2c_t *obj, uint8_t deviceAddr ); - -/*! - * \brief Sets the internal device address size - * - * \param [IN] obj I2C object - * \param [IN] addrSize Internal address size - */ -void I2cSetAddrSize( I2c_t *obj, I2cAddrSize addrSize ); - -#endif // __I2C_MCU_H__ diff --git a/src/boards/Bleeper-76/pinName-board.h b/src/boards/Bleeper-76/pinName-board.h deleted file mode 100644 index 4a66023bb..000000000 --- a/src/boards/Bleeper-76/pinName-board.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper STM32L151RD microcontroller pins definition - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __PIN_NAME_MCU_H__ -#define __PIN_NAME_MCU_H__ - -/*! - * STM32 Pin Names - */ -#define MCU_PINS \ - PA_0 = 0, PA_1, PA_2, PA_3, PA_4, PA_5, PA_6, PA_7, PA_8, PA_9, PA_10, PA_11, PA_12, PA_13, PA_14, PA_15, \ - PB_0, PB_1, PB_2, PB_3, PB_4, PB_5, PB_6, PB_7, PB_8, PB_9, PB_10, PB_11, PB_12, PB_13, PB_14, PB_15, \ - PC_0, PC_1, PC_2, PC_3, PC_4, PC_5, PC_6, PC_7, PC_8, PC_9, PC_10, PC_11, PC_12, PC_13, PC_14, PC_15, \ - PD_0, PD_1, PD_2, PD_3, PD_4, PD_5, PD_6, PD_7, PD_8, PD_9, PD_10, PD_11, PD_12, PD_13, PD_14, PD_15, \ - PE_0, PE_1, PE_2, PE_3, PE_4, PE_5, PE_6, PE_7, PE_8, PE_9, PE_10, PE_11, PE_12, PE_13, PE_14, PE_15, \ - PF_0, PF_1, PF_2, PF_3, PF_4, PF_5, PF_6, PF_7, PF_8, PF_9, PF_10, PF_11, PF_12, PF_13, PF_14, PF_15, \ - PH_0, PH_1, PH_2, PH_3, PH_4, PH_5, PH_6, PH_7, PH_8, PH_9, PH_10, PH_11, PH_12, PH_13, PH_14, PH_15 - -#endif // __PIN_NAME_MCU_H__ diff --git a/src/boards/Bleeper-76/pinName-ioe.h b/src/boards/Bleeper-76/pinName-ioe.h deleted file mode 100644 index 531100ab9..000000000 --- a/src/boards/Bleeper-76/pinName-ioe.h +++ /dev/null @@ -1,22 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper STM32L151RD microcontroller pins definition - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __PIN_NAME_IOE_H__ -#define __PIN_NAME_IOE_H__ - -// SX1509 Pin Names -#define IOE_PINS \ - IOE_0, IOE_1, IOE_2, IOE_3, IOE_4, IOE_5, IOE_6, IOE_7, \ - IOE_8, IOE_9, IOE_10, IOE_11, IOE_12, IOE_13, IOE_14, IOE_15 -#endif // __PIN_NAME_IOE_H__ diff --git a/src/boards/Bleeper-76/rtc-board.c b/src/boards/Bleeper-76/rtc-board.c deleted file mode 100644 index d58622057..000000000 --- a/src/boards/Bleeper-76/rtc-board.c +++ /dev/null @@ -1,557 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: MCU RTC timer and low power modes management - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include -#include "board.h" -#include "rtc-board.h" - -/*! - * RTC Time base in us - */ -#define RTC_ALARM_TIME_BASE 122.07 - -/*! - * MCU Wake Up Time - */ -#define MCU_WAKE_UP_TIME 3400 - -/*! - * \brief Configure the Rtc hardware - */ -static void RtcSetConfig( void ); - -/*! - * \brief Configure the Rtc Alarm - */ -static void RtcSetAlarmConfig( void ); - -/*! - * \brief Start the Rtc Alarm (time base 1s) - */ -static void RtcStartWakeUpAlarm( uint32_t timeoutValue ); - -/*! - * \brief Read the MCU internal Calendar value - * - * \retval Calendar value - */ -static TimerTime_t RtcGetCalendarValue( void ); - -/*! - * \brief Clear the RTC flags and Stop all IRQs - */ -static void RtcClearStatus( void ); - -/*! - * \brief Indicates if the RTC is already Initalized or not - */ -static bool RtcInitalized = false; - -/*! - * \brief Flag to indicate if the timestamps until the next event is long enough - * to set the MCU into low power mode - */ -static bool RtcTimerEventAllowsLowPower = false; - -/*! - * \brief Flag to disable the LowPower Mode even if the timestamps until the - * next event is long enough to allow Low Power mode - */ -static bool LowPowerDisableDuringTask = false; - -/*! - * Keep the value of the RTC timer when the RTC alarm is set - */ -static TimerTime_t RtcTimerContext = 0; - -/*! - * Number of seconds in a minute - */ -static const uint8_t SecondsInMinute = 60; - -/*! - * Number of seconds in an hour - */ -static const uint16_t SecondsInHour = 3600; - -/*! - * Number of seconds in a day - */ -static const uint32_t SecondsInDay = 86400; - -/*! - * Number of hours in a day - */ -static const uint8_t HoursInDay = 24; - -/*! - * Number of days in a standard year - */ -static const uint16_t DaysInYear = 365; - -/*! - * Number of days in a leap year - */ -static const uint16_t DaysInLeapYear = 366; - -/*! - * Number of days in a century - */ -static const double DaysInCentury = 36524.219; - -/*! - * Number of days in each month on a normal year - */ -static const uint8_t DaysInMonth[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; - -/*! - * Number of days in each month on a leap year - */ -static const uint8_t DaysInMonthLeapYear[] = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; - -/*! - * Hold the previous year value to detect the turn of a century - */ -static uint8_t PreviousYear = 0; - -/*! - * Century counter - */ -static uint8_t Century = 0; - -void RtcInit( void ) -{ - if( RtcInitalized == false ) - { - RtcSetConfig( ); - RtcSetAlarmConfig( ); - RtcInitalized = true; - } -} - -static void RtcSetConfig( void ) -{ - RTC_InitTypeDef RTC_InitStructure; - RTC_TimeTypeDef RTC_TimeStruct; - RTC_DateTypeDef RTC_DateStruct; - - /* Enable the PWR clock */ - RCC_APB1PeriphClockCmd( RCC_APB1Periph_PWR, ENABLE ); - - /* Allow access to RTC */ - PWR_RTCAccessCmd( ENABLE ); - - /* Reset RTC Domain */ - RCC_RTCResetCmd( ENABLE ); - RCC_RTCResetCmd( DISABLE ); - - /* Enable the LSE OSC */ - RCC_LSEConfig( RCC_LSE_ON ); - - /* Wait till LSE is ready */ - while( RCC_GetFlagStatus( RCC_FLAG_LSERDY ) == RESET ) - {} - - /* Select the RTC Clock Source */ - RCC_RTCCLKConfig( RCC_RTCCLKSource_LSE ); - - /* Enable the RTC Clock */ - RCC_RTCCLKCmd( ENABLE ); - - RTC_TimeStructInit( &RTC_TimeStruct ); - RTC_DateStructInit( &RTC_DateStruct ); - - RTC_SetDate( RTC_Format_BIN, &RTC_DateStruct ); - RTC_SetTime( RTC_Format_BIN, &RTC_TimeStruct ); - - /* Wait for RTC APB registers synchronisation */ - RTC_WaitForSynchro( ); - - /* Configure the RTC data register and RTC prescaler */ - RTC_InitStructure.RTC_AsynchPrediv = 0x01; - RTC_InitStructure.RTC_SynchPrediv = 0x01; - RTC_InitStructure.RTC_HourFormat = RTC_HourFormat_24; - RTC_Init( &RTC_InitStructure ); - - /* Wait for RTC APB registers synchronisation */ - RTC_WaitForSynchro( ); -} - -static void RtcSetAlarmConfig( void ) -{ - EXTI_InitTypeDef EXTI_InitStructure; - RTC_AlarmTypeDef RTC_AlarmStructure; - NVIC_InitTypeDef NVIC_InitStructure; - - /* EXTI configuration */ - EXTI_ClearITPendingBit( EXTI_Line17 ); - EXTI_InitStructure.EXTI_Line = EXTI_Line17; - EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; - EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising; - EXTI_InitStructure.EXTI_LineCmd = ENABLE; - EXTI_Init( &EXTI_InitStructure ); - - /* Enable the RTC Alarm Interrupt */ - NVIC_InitStructure.NVIC_IRQChannel = RTC_Alarm_IRQn; - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; - NVIC_Init( &NVIC_InitStructure ); - - /* Set the alarmA Masks */ - RTC_AlarmStructure.RTC_AlarmMask = RTC_AlarmMask_DateWeekDay; - RTC_SetAlarm( RTC_Format_BIN, RTC_Alarm_A, &RTC_AlarmStructure ); - - /* Enable AlarmA interrupt */ - RTC_ITConfig( RTC_IT_ALRA, DISABLE ); - - /* Enable the alarmA */ - RTC_AlarmCmd( RTC_Alarm_A, DISABLE ); -} - -void RtcStopTimer( void ) -{ - RtcClearStatus( ); -} - -uint32_t RtcGetMinimumTimeout( void ) -{ - return( ceil( 3 * RTC_ALARM_TIME_BASE ) ); -} - -void RtcSetTimeout( uint32_t timeout ) -{ - uint32_t timeoutValue = 0; - - timeoutValue = timeout; - - if( timeoutValue < ( 3 * RTC_ALARM_TIME_BASE ) ) - { - timeoutValue = 3 * RTC_ALARM_TIME_BASE; - } - - if( timeoutValue < 55000 ) - { - // we don't go in Low Power mode for delay below 50ms (needed for LEDs) - RtcTimerEventAllowsLowPower = false; - } - else - { - RtcTimerEventAllowsLowPower = true; - } - - if( ( LowPowerDisableDuringTask == false ) && ( RtcTimerEventAllowsLowPower == true ) ) - { - timeoutValue = timeoutValue - MCU_WAKE_UP_TIME; - } - - RtcStartWakeUpAlarm( timeoutValue ); -} - - -uint32_t RtcGetTimerElapsedTime( void ) -{ - TimerTime_t CalendarValue = 0; - - CalendarValue = RtcGetCalendarValue( ); - - return( ( uint32_t )( ceil ( ( ( CalendarValue - RtcTimerContext ) + 2 ) * RTC_ALARM_TIME_BASE ) ) ); -} - -TimerTime_t RtcGetTimerValue( void ) -{ - TimerTime_t CalendarValue = 0; - - CalendarValue = RtcGetCalendarValue( ); - - return( ( CalendarValue + 2 ) * RTC_ALARM_TIME_BASE ); -} - -static void RtcClearStatus( void ) -{ - /* Clear RTC Alarm Flag */ - RTC_ClearFlag(RTC_FLAG_ALRAF); - - /* Enable RTC Alarm A Interrupt */ - RTC_ITConfig( RTC_IT_ALRA, DISABLE ); - - /* Enable the Alarm A */ - RTC_AlarmCmd( RTC_Alarm_A, DISABLE ); -} - -static void RtcStartWakeUpAlarm( uint32_t timeoutValue ) -{ - uint16_t rtcSeconds = 0; - uint16_t rtcMinutes = 0; - uint16_t rtcHours = 0; - uint16_t rtcDays = 0; - - uint8_t rtcAlarmSeconds = 0; - uint8_t rtcAlarmMinutes = 0; - uint8_t rtcAlarmHours = 0; - uint16_t rtcAlarmDays = 0; - - RTC_AlarmTypeDef RTC_AlarmStructure; - RTC_TimeTypeDef RTC_TimeStruct; - RTC_DateTypeDef RTC_DateStruct; - - RtcClearStatus( ); - - RtcTimerContext = RtcGetCalendarValue( ); - RTC_GetTime( RTC_Format_BIN, &RTC_TimeStruct ); - RTC_GetDate( RTC_Format_BIN, &RTC_DateStruct ); - - timeoutValue = timeoutValue / RTC_ALARM_TIME_BASE; - - if( timeoutValue > 2160000 ) // 25 "days" in tick - { // drastically reduce the computation time - rtcAlarmSeconds = RTC_TimeStruct.RTC_Seconds; - rtcAlarmMinutes = RTC_TimeStruct.RTC_Minutes; - rtcAlarmHours = RTC_TimeStruct.RTC_Hours; - rtcAlarmDays = 25 + RTC_DateStruct.RTC_Date; // simply add 25 days to current date and time - - if( ( RTC_DateStruct.RTC_Year == 0 ) || ( RTC_DateStruct.RTC_Year % 4 == 0 ) ) - { - if( rtcAlarmDays > DaysInMonthLeapYear[ RTC_DateStruct.RTC_Month - 1 ] ) - { - rtcAlarmDays = rtcAlarmDays % DaysInMonthLeapYear[ RTC_DateStruct.RTC_Month - 1]; - } - } - else - { - if( rtcAlarmDays > DaysInMonth[ RTC_DateStruct.RTC_Month - 1 ] ) - { - rtcAlarmDays = rtcAlarmDays % DaysInMonth[ RTC_DateStruct.RTC_Month - 1]; - } - } - } - else - { - rtcSeconds = ( timeoutValue % SecondsInMinute ) + RTC_TimeStruct.RTC_Seconds; - rtcMinutes = ( ( timeoutValue / SecondsInMinute ) % SecondsInMinute ) + RTC_TimeStruct.RTC_Minutes; - rtcHours = ( ( timeoutValue / SecondsInHour ) % HoursInDay ) + RTC_TimeStruct.RTC_Hours; - rtcDays = ( timeoutValue / SecondsInDay ) + RTC_DateStruct.RTC_Date; - - rtcAlarmSeconds = ( rtcSeconds ) % 60; - rtcAlarmMinutes = ( ( rtcSeconds / 60 ) + rtcMinutes ) % 60; - rtcAlarmHours = ( ( ( ( rtcSeconds / 60 ) + rtcMinutes ) / 60 ) + rtcHours ) % 24; - rtcAlarmDays = ( ( ( ( ( rtcSeconds / 60 ) + rtcMinutes ) / 60 ) + rtcHours ) / 24 ) + rtcDays; - - if( ( RTC_DateStruct.RTC_Year == 0 ) || ( RTC_DateStruct.RTC_Year % 4 == 0 ) ) - { - if( rtcAlarmDays > DaysInMonthLeapYear[ RTC_DateStruct.RTC_Month - 1 ] ) - { - rtcAlarmDays = rtcAlarmDays % DaysInMonthLeapYear[ RTC_DateStruct.RTC_Month - 1 ]; - } - } - else - { - if( rtcAlarmDays > DaysInMonth[ RTC_DateStruct.RTC_Month - 1 ] ) - { - rtcAlarmDays = rtcAlarmDays % DaysInMonth[ RTC_DateStruct.RTC_Month - 1 ]; - } - } - } - - RTC_AlarmStructure.RTC_AlarmTime.RTC_Seconds = rtcAlarmSeconds; - RTC_AlarmStructure.RTC_AlarmTime.RTC_Minutes = rtcAlarmMinutes; - RTC_AlarmStructure.RTC_AlarmTime.RTC_Hours = rtcAlarmHours; - RTC_AlarmStructure.RTC_AlarmDateWeekDay = ( uint8_t )rtcAlarmDays; - RTC_AlarmStructure.RTC_AlarmTime.RTC_H12 = RTC_TimeStruct.RTC_H12; - RTC_AlarmStructure.RTC_AlarmDateWeekDaySel = RTC_AlarmDateWeekDaySel_Date; - RTC_AlarmStructure.RTC_AlarmMask = RTC_AlarmMask_None; - RTC_SetAlarm( RTC_Format_BIN, RTC_Alarm_A, &RTC_AlarmStructure ); - - /* Wait for RTC APB registers synchronisation */ - RTC_WaitForSynchro( ); - - /* Enable RTC Alarm A Interrupt */ - RTC_ITConfig( RTC_IT_ALRA, ENABLE ); - - /* Enable the Alarm A */ - RTC_AlarmCmd( RTC_Alarm_A, ENABLE ); -} - -void RtcEnterLowPowerStopMode( void ) -{ - if( ( LowPowerDisableDuringTask == false ) && ( RtcTimerEventAllowsLowPower == true ) ) - { - // Disable IRQ while the MCU is being deinitialized to prevent race issues - __disable_irq( ); - - BoardDeInitMcu( ); - - __enable_irq( ); - - /* Disable the Power Voltage Detector */ - PWR_PVDCmd( DISABLE ); - - /* Set MCU in ULP (Ultra Low Power) */ - PWR_UltraLowPowerCmd( ENABLE ); - - /*Disable fast wakeUp*/ - PWR_FastWakeUpCmd( DISABLE ); - - /* Enter Stop Mode */ - PWR_EnterSTOPMode( PWR_Regulator_LowPower, PWR_STOPEntry_WFI ); - } -} - -void RtcRecoverMcuStatus( void ) -{ - if( TimerGetLowPowerEnable( ) == true ) - { - if( ( LowPowerDisableDuringTask == false ) && ( RtcTimerEventAllowsLowPower == true ) ) - { - // Disable IRQ while the MCU is not running on HSE - __disable_irq( ); - - /* After wake-up from STOP reconfigure the system clock */ - /* Enable HSE */ - RCC_HSEConfig( RCC_HSE_ON ); - - /* Wait till HSE is ready */ - while( RCC_GetFlagStatus( RCC_FLAG_HSERDY ) == RESET ) - {} - - /* Enable PLL */ - RCC_PLLCmd( ENABLE ); - - /* Wait till PLL is ready */ - while( RCC_GetFlagStatus( RCC_FLAG_PLLRDY ) == RESET ) - {} - - /* Select PLL as system clock source */ - RCC_SYSCLKConfig( RCC_SYSCLKSource_PLLCLK ); - - /* Wait till PLL is used as system clock source */ - while( RCC_GetSYSCLKSource( ) != 0x0C ) - {} - - /* Set MCU in ULP (Ultra Low Power) */ - PWR_UltraLowPowerCmd( DISABLE ); // add up to 3ms wakeup time - - /* Enable the Power Voltage Detector */ - PWR_PVDCmd( ENABLE ); - - BoardInitMcu( ); - - __enable_irq( ); - } - } -} - -/*! - * \brief RTC IRQ Handler on the RTC Alarm - */ -void RTC_Alarm_IRQHandler( void ) -{ - if( RTC_GetITStatus( RTC_IT_ALRA ) != RESET ) - { - RtcRecoverMcuStatus( ); - - TimerIrqHandler( ); - - RTC_ClearITPendingBit( RTC_IT_ALRA ); - EXTI_ClearITPendingBit( EXTI_Line17 ); - } -} - -void BlockLowPowerDuringTask( bool status ) -{ - if( status == true ) - { - RtcRecoverMcuStatus( ); - } - LowPowerDisableDuringTask = status; -} - -void RtcDelayMs( uint32_t delay ) -{ - TimerTime_t delayValue = 0; - TimerTime_t timeout = 0; - - delayValue = ( TimerTime_t )( delay * 1000 ); - - // Wait delay ms - timeout = RtcGetTimerValue( ); - while( ( ( RtcGetTimerValue( ) - timeout ) ) < delayValue ) - { - __NOP( ); - } -} - -TimerTime_t RtcGetCalendarValue( void ) -{ - TimerTime_t calendarValue = 0; - uint8_t i = 0; - - RTC_TimeTypeDef RTC_TimeStruct; - RTC_DateTypeDef RTC_DateStruct; - - RTC_GetTime( RTC_Format_BIN, &RTC_TimeStruct ); - RTC_GetDate( RTC_Format_BIN, &RTC_DateStruct ); - - RTC_WaitForSynchro( ); - - if( ( PreviousYear == 99 ) && ( RTC_DateStruct.RTC_Year == 0 ) ) - { - Century++; - } - PreviousYear = RTC_DateStruct.RTC_Year; - - // century - for( i = 0; i < Century; i++ ) - { - calendarValue += ( TimerTime_t )( DaysInCentury * SecondsInDay ); - } - - // years - for( i = 0; i < RTC_DateStruct.RTC_Year; i++ ) - { - if( ( i == 0 ) || ( i % 4 == 0 ) ) - { - calendarValue += DaysInLeapYear * SecondsInDay; - } - else - { - calendarValue += DaysInYear * SecondsInDay; - } - } - - // months - if( ( RTC_DateStruct.RTC_Year == 0 ) || ( RTC_DateStruct.RTC_Year % 4 == 0 ) ) - { - for( i = 0; i < ( RTC_DateStruct.RTC_Month - 1 ); i++ ) - { - calendarValue += DaysInMonthLeapYear[i] * SecondsInDay; - } - } - else - { - for( i = 0; i < ( RTC_DateStruct.RTC_Month - 1 ); i++ ) - { - calendarValue += DaysInMonth[i] * SecondsInDay; - } - } - - // days - calendarValue += ( ( uint32_t )RTC_TimeStruct.RTC_Seconds + - ( ( uint32_t )RTC_TimeStruct.RTC_Minutes * SecondsInMinute ) + - ( ( uint32_t )RTC_TimeStruct.RTC_Hours * SecondsInHour ) + - ( ( uint32_t )( RTC_DateStruct.RTC_Date * SecondsInDay ) ) ); - - return( calendarValue ); -} diff --git a/src/boards/Bleeper-76/rtc-board.h b/src/boards/Bleeper-76/rtc-board.h deleted file mode 100644 index 429d6e38e..000000000 --- a/src/boards/Bleeper-76/rtc-board.h +++ /dev/null @@ -1,91 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: MCU RTC timer and low power modes management - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __RTC_BOARD_H__ -#define __RTC_BOARD_H__ - -/*! - * \brief Timer time variable definition - */ -#ifndef TimerTime_t -typedef uint64_t TimerTime_t; -#endif - -/*! - * \brief Initializes the RTC timer - * - * \remark The timer is based on the RTC - */ -void RtcInit( void ); - -/*! - * \brief Stop the RTC Timer - */ -void RtcStopTimer( void ); - -/*! - * \brief Return the minimum timeout the RTC is able to handle - * - * \retval minimum value for a timeout - */ -uint32_t RtcGetMinimumTimeout( void ); - -/*! - * \brief Start the RTC timer - * - * \remark The timer is based on the RTC Alarm running at 32.768KHz - * - * \param[IN] timeout Duration of the Timer - */ -void RtcSetTimeout( uint32_t timeout ); - -/*! - * \brief Get the RTC timer value - * - * \retval RTC Timer value - */ -TimerTime_t RtcGetTimerValue( void ); - -/*! - * \brief Get the RTC timer elapsed time since the last Alarm was set - * - * \retval RTC Elapsed time since the last alarm - */ -uint32_t RtcGetTimerElapsedTime( void ); - -/*! - * \brief This function block the MCU from going into Low Power mode - * - * \param [IN] Status enable or disable - */ -void BlockLowPowerDuringTask ( bool Status ); - -/*! - * \brief Sets the MCU in low power STOP mode - */ -void RtcEnterLowPowerStopMode( void ); - -/*! - * \brief Restore the MCU to its normal operation mode - */ -void RtcRecoverMcuStatus( void ); - -/*! - * \brief Perfoms a standard blocking delay in the code execution - * - * \param [IN] delay Delay value in ms - */ -void RtcDelayMs ( uint32_t delay ); - -#endif // __RTC_BOARD_H__ diff --git a/src/boards/Bleeper-76/spi-board.c b/src/boards/Bleeper-76/spi-board.c deleted file mode 100644 index 167d77fae..000000000 --- a/src/boards/Bleeper-76/spi-board.c +++ /dev/null @@ -1,157 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper board SPI driver implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include "board.h" -#include "spi-board.h" -#include "stm32l1xx_spi.h" -#include "stm32l1xx_gpio.h" - -/*! - * \brief Find First Set - * This function identifies the least significant index or position of the - * bits set to one in the word - * - * \param [in] value Value to find least significant index - * \retval bitIndex Index of least significat bit at one - */ -__STATIC_INLINE uint8_t __ffs( uint32_t value ) -{ - return( uint32_t )( 32 - __CLZ( value & ( -value ) ) ); -} - -/*! - * MCU SPI peripherals enumeration - */ -typedef enum { - SPI_1 = ( uint32_t )SPI1_BASE, - SPI_2 = ( uint32_t )SPI2_BASE, - SPI_3 = ( uint32_t )SPI3_BASE, -} SPIName; - -SPI_InitTypeDef SPI_InitStructure; - -void SpiInit( Spi_t *obj, PinNames mosi, PinNames miso, PinNames sclk, PinNames nss ) -{ - GpioInit( &obj->Mosi, mosi, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); - GpioInit( &obj->Miso, miso, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); - GpioInit( &obj->Sclk, sclk, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); - - // TODO: Make independent of stm32l1xx_gpio.h - GPIO_PinAFConfig( obj->Mosi.port, ( obj->Mosi.pin & 0x0F ), GPIO_AF_SPI1 ); - GPIO_PinAFConfig( obj->Miso.port, ( obj->Miso.pin & 0x0F ), GPIO_AF_SPI1 ); - GPIO_PinAFConfig( obj->Sclk.port, ( obj->Sclk.pin & 0x0F ), GPIO_AF_SPI1 ); - - if( nss != NC ) - { - GpioInit( &obj->Nss, nss, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_UP, 1 ); - // TODO: Make independent of stm32l1xx_gpio.h - GPIO_PinAFConfig( obj->Nss.port, ( obj->Nss.pin & 0x0F ), GPIO_AF_SPI1 ); - } - else - { - SPI_InitStructure.SPI_NSS = SPI_NSS_Soft; - } - - // Choose SPI interface according to the given pins - obj->Spi = ( SPI_TypeDef* )SPI1_BASE; - RCC_APB2PeriphClockCmd( RCC_APB2Periph_SPI1, ENABLE ); - - if( nss == NC ) - { - // 8 bits, CPOL = 0, CPHA = 0, MASTER - SpiFormat( obj, 8, 0, 0, 0 ); - } - else - { - // 8 bits, CPOL = 0, CPHA = 0, SLAVE - SpiFormat( obj, 8, 0, 0, 1 ); - } - SpiFrequency( obj, 10000000 ); - - SPI_Cmd( obj->Spi, ENABLE ); -} - -void SpiDeInit( Spi_t *obj ) -{ - SPI_Cmd( obj->Spi, DISABLE ); - SPI_I2S_DeInit( obj->Spi ); - - GpioInit( &obj->Mosi, obj->Mosi.pin, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &obj->Miso, obj->Miso.pin, PIN_OUTPUT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); - GpioInit( &obj->Sclk, obj->Sclk.pin, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &obj->Nss, obj->Nss.pin, PIN_OUTPUT, PIN_PUSH_PULL, PIN_PULL_UP, 1 ); - -} - -void SpiFormat( Spi_t *obj, int8_t bits, int8_t cpol, int8_t cpha, int8_t slave ) -{ - SPI_Cmd( obj->Spi, DISABLE ); - - if( ( ( ( bits == 8 ) || ( bits == 16 ) ) == false ) || - ( ( ( cpol >= 0 ) && ( cpol <= 1 ) ) == false ) || - ( ( ( cpha >= 0 ) && ( cpha <= 1 ) ) == false ) ) - { - // SPI error - while( 1 ); - } - - SPI_InitStructure.SPI_Mode = ( slave == 0x01 ) ? SPI_Mode_Slave : SPI_Mode_Master; - SPI_InitStructure.SPI_CPOL = ( cpol == 0x01 ) ? SPI_CPOL_High : SPI_CPOL_Low; - SPI_InitStructure.SPI_CPHA = ( cpha == 0x01 ) ? SPI_CPHA_2Edge : SPI_CPHA_1Edge; - SPI_InitStructure.SPI_DataSize = ( bits == 8 ) ? SPI_DataSize_8b : SPI_DataSize_16b; - SPI_Init( obj->Spi, &SPI_InitStructure ); - - SPI_Cmd( obj->Spi, ENABLE ); -} - -void SpiFrequency( Spi_t *obj, uint32_t hz ) -{ - uint32_t divisor; - - SPI_Cmd( obj->Spi, DISABLE ); - - divisor = SystemCoreClock / hz; - - // Find the nearest power-of-2 - divisor = divisor > 0 ? divisor-1 : 0; - divisor |= divisor >> 1; - divisor |= divisor >> 2; - divisor |= divisor >> 4; - divisor |= divisor >> 8; - divisor |= divisor >> 16; - divisor++; - - divisor = __ffs( divisor ) - 1; - - divisor = ( divisor > 0x07 ) ? 0x07 : divisor; - - SPI_InitStructure.SPI_BaudRatePrescaler = divisor << 3; - SPI_Init( obj->Spi, &SPI_InitStructure ); - - SPI_Cmd( obj->Spi, ENABLE ); -} - -uint16_t SpiInOut( Spi_t *obj, uint16_t outData ) -{ - if( ( obj == NULL ) || ( obj->Spi ) == NULL ) - { - while( 1 ); - } - - while( SPI_I2S_GetFlagStatus( obj->Spi, SPI_I2S_FLAG_TXE ) == RESET ); - SPI_I2S_SendData( obj->Spi, outData ); - while( SPI_I2S_GetFlagStatus( obj->Spi, SPI_I2S_FLAG_RXNE ) == RESET ); - return SPI_I2S_ReceiveData( obj->Spi ); -} - diff --git a/src/boards/Bleeper-76/spi-board.h b/src/boards/Bleeper-76/spi-board.h deleted file mode 100644 index 0dfbc8408..000000000 --- a/src/boards/Bleeper-76/spi-board.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: Bleeper board SPI driver implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __SPI_MCU_H__ -#define __SPI_MCU_H__ - -/*! - * SPI driver structure definition - */ -struct Spi_s -{ - SPI_TypeDef *Spi; - Gpio_t Mosi; - Gpio_t Miso; - Gpio_t Sclk; - Gpio_t Nss; -}; - -#endif // __SPI_MCU_H__ diff --git a/src/boards/Bleeper-76/sx1276-board.c b/src/boards/Bleeper-76/sx1276-board.c deleted file mode 100644 index cb487ee6d..000000000 --- a/src/boards/Bleeper-76/sx1276-board.c +++ /dev/null @@ -1,159 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: SX1276 driver specific target board functions implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include "board.h" -#include "radio.h" -#include "sx1276/sx1276.h" -#include "sx1276-board.h" - -/*! - * Flag used to set the RF switch control pins in low power mode when the radio is not active. - */ -static bool RadioIsActive = false; - -/*! - * Radio driver structure initialization - */ -const struct Radio_s Radio = -{ - SX1276Init, - SX1276GetStatus, - SX1276SetModem, - SX1276SetChannel, - SX1276IsChannelFree, - SX1276Random, - SX1276SetRxConfig, - SX1276SetTxConfig, - SX1276CheckRfFrequency, - SX1276GetTimeOnAir, - SX1276Send, - SX1276SetSleep, - SX1276SetStby, - SX1276SetRx, - SX1276StartCad, - SX1276ReadRssi, - SX1276Write, - SX1276Read, - SX1276WriteBuffer, - SX1276ReadBuffer, - SX1276SetMaxPayloadLength -}; - -/*! - * Antenna switch GPIO pins objects - */ -Gpio_t AntSwitchLf; -Gpio_t AntSwitchHf; - -void SX1276IoInit( void ) -{ - GpioInit( &SX1276.Spi.Nss, RADIO_NSS, PIN_OUTPUT, PIN_PUSH_PULL, PIN_PULL_UP, 1 ); - - GpioInit( &SX1276.DIO0, RADIO_DIO_0, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); - GpioInit( &SX1276.DIO1, RADIO_DIO_1, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); - GpioInit( &SX1276.DIO2, RADIO_DIO_2, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); - GpioInit( &SX1276.DIO3, RADIO_DIO_3, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); - GpioInit( &SX1276.DIO4, RADIO_DIO_4, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); - GpioInit( &SX1276.DIO5, RADIO_DIO_5, PIN_INPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); -} - -void SX1276IoIrqInit( DioIrqHandler **irqHandlers ) -{ - GpioSetInterrupt( &SX1276.DIO0, IRQ_RISING_EDGE, IRQ_HIGH_PRIORITY, irqHandlers[0] ); - GpioSetInterrupt( &SX1276.DIO1, IRQ_RISING_EDGE, IRQ_HIGH_PRIORITY, irqHandlers[1] ); - GpioSetInterrupt( &SX1276.DIO2, IRQ_RISING_EDGE, IRQ_HIGH_PRIORITY, irqHandlers[2] ); - GpioSetInterrupt( &SX1276.DIO3, IRQ_RISING_EDGE, IRQ_HIGH_PRIORITY, irqHandlers[3] ); - GpioSetInterrupt( &SX1276.DIO4, IRQ_RISING_EDGE, IRQ_HIGH_PRIORITY, irqHandlers[4] ); - GpioSetInterrupt( &SX1276.DIO5, IRQ_RISING_EDGE, IRQ_HIGH_PRIORITY, irqHandlers[5] ); -} - -void SX1276IoDeInit( void ) -{ - GpioInit( &SX1276.Spi.Nss, RADIO_NSS, PIN_OUTPUT, PIN_PUSH_PULL, PIN_NO_PULL, 1 ); - - GpioInit( &SX1276.DIO0, RADIO_DIO_0, PIN_INPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &SX1276.DIO1, RADIO_DIO_1, PIN_INPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &SX1276.DIO2, RADIO_DIO_2, PIN_INPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &SX1276.DIO3, RADIO_DIO_3, PIN_INPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &SX1276.DIO4, RADIO_DIO_4, PIN_INPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); - GpioInit( &SX1276.DIO5, RADIO_DIO_5, PIN_INPUT, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); -} - -uint8_t SX1276GetPaSelect( uint32_t channel ) -{ - if( channel > RF_MID_BAND_THRESH ) - { - return RF_PACONFIG_PASELECT_PABOOST; - } - else - { - return RF_PACONFIG_PASELECT_RFO; - } -} - -void SX1276SetAntSwLowPower( bool status ) -{ - if( RadioIsActive != status ) - { - RadioIsActive = status; - - if( status == false ) - { - SX1276AntSwInit( ); - } - else - { - SX1276AntSwDeInit( ); - } - } -} - -void SX1276AntSwInit( void ) -{ - GpioInit( &AntSwitchLf, RADIO_ANT_SWITCH_LF, PIN_OUTPUT, PIN_PUSH_PULL, PIN_PULL_UP, 1 ); - GpioInit( &AntSwitchHf, RADIO_ANT_SWITCH_HF, PIN_OUTPUT, PIN_PUSH_PULL, PIN_PULL_UP, 0 ); -} - -void SX1276AntSwDeInit( void ) -{ - GpioInit( &AntSwitchLf, RADIO_ANT_SWITCH_LF, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); - GpioInit( &AntSwitchHf, RADIO_ANT_SWITCH_HF, PIN_OUTPUT, PIN_OPEN_DRAIN, PIN_NO_PULL, 0 ); -} - -void SX1276SetAntSw( uint8_t rxTx ) -{ - if( SX1276.RxTx == rxTx ) - { - return; - } - - SX1276.RxTx = rxTx; - - if( rxTx != 0 ) // 1: TX, 0: RX - { - GpioWrite( &AntSwitchLf, 0 ); - GpioWrite( &AntSwitchHf, 1 ); - } - else - { - GpioWrite( &AntSwitchLf, 1 ); - GpioWrite( &AntSwitchHf, 0 ); - } -} - -bool SX1276CheckRfFrequency( uint32_t frequency ) -{ - // Implement check. Currently all frequencies are supported - return true; -} diff --git a/src/boards/Bleeper-76/sx1276-board.h b/src/boards/Bleeper-76/sx1276-board.h deleted file mode 100644 index e9613336f..000000000 --- a/src/boards/Bleeper-76/sx1276-board.h +++ /dev/null @@ -1,112 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: SX1276 driver specific target board functions implementation - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __SX1276_ARCH_H__ -#define __SX1276_ARCH_H__ - -/*! - * \brief Radio hardware registers initialization definition - * - * \remark Can be automatically generated by the SX1276 GUI (not yet implemented) - */ -#define RADIO_INIT_REGISTERS_VALUE \ -{ \ - { MODEM_FSK , REG_LNA , 0x23 },\ - { MODEM_FSK , REG_RXCONFIG , 0x1E },\ - { MODEM_FSK , REG_RSSICONFIG , 0xD2 },\ - { MODEM_FSK , REG_PREAMBLEDETECT , 0xAA },\ - { MODEM_FSK , REG_OSC , 0x07 },\ - { MODEM_FSK , REG_SYNCCONFIG , 0x12 },\ - { MODEM_FSK , REG_SYNCVALUE1 , 0xC1 },\ - { MODEM_FSK , REG_SYNCVALUE2 , 0x94 },\ - { MODEM_FSK , REG_SYNCVALUE3 , 0xC1 },\ - { MODEM_FSK , REG_PACKETCONFIG1 , 0xD8 },\ - { MODEM_FSK , REG_FIFOTHRESH , 0x8F },\ - { MODEM_FSK , REG_IMAGECAL , 0x02 },\ - { MODEM_FSK , REG_DIOMAPPING1 , 0x00 },\ - { MODEM_FSK , REG_DIOMAPPING2 , 0x30 },\ - { MODEM_LORA, REG_LR_PAYLOADMAXLENGTH, 0x40 },\ -} \ - -#define RF_MID_BAND_THRESH 525000000 - -/*! - * \brief Initializes the radio I/Os pins interface - */ -void SX1276IoInit( void ); - -/*! - * \brief Initializes DIO IRQ handlers - * - * \param [IN] irqHandlers Array containing the IRQ callback functions - */ -void SX1276IoIrqInit( DioIrqHandler **irqHandlers ); - -/*! - * \brief De-initializes the radio I/Os pins interface. - * - * \remark Useful when going in MCU lowpower modes - */ -void SX1276IoDeInit( void ); - -/*! - * \brief Gets the board PA selection configuration - * - * \param [IN] channel Channel frequency in Hz - * \retval PaSelect RegPaConfig PaSelect value - */ -uint8_t SX1276GetPaSelect( uint32_t channel ); - -/*! - * \brief Set the RF Switch I/Os pins in Low Power mode - * - * \param [IN] status enable or disable - */ -void SX1276SetAntSwLowPower( bool status ); - -/*! - * \brief Initializes the RF Switch I/Os pins interface - */ -void SX1276AntSwInit( void ); - -/*! - * \brief De-initializes the RF Switch I/Os pins interface - * - * \remark Needed to decrease the power consumption in MCU lowpower modes - */ -void SX1276AntSwDeInit( void ); - -/*! - * \brief Controls the antena switch if necessary. - * - * \remark see errata note - * - * \param [IN] rxTx [1: Tx, 0: Rx] - */ -void SX1276SetAntSw( uint8_t rxTx ); - -/*! - * \brief Checks if the given RF frequency is supported by the hardware - * - * \param [IN] frequency RF frequency to be checked - * \retval isSupported [true: supported, false: unsupported] - */ -bool SX1276CheckRfFrequency( uint32_t frequency ); - -/*! - * Radio hardware and global parameters - */ -extern SX1276_t SX1276; - -#endif // __SX1276_ARCH_H__ diff --git a/src/boards/Bleeper-76/timer-board.c b/src/boards/Bleeper-76/timer-board.c deleted file mode 100644 index 84724e99c..000000000 --- a/src/boards/Bleeper-76/timer-board.c +++ /dev/null @@ -1,260 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: MCU RTC timer and low power modes management - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#include -#include "board.h" -#include "timer-board.h" - -/*! - * Hardware Time base in us - */ -#define HW_TIMER_TIME_BASE 100 //us - -/*! - * Hardware Timer tick counter - */ -volatile TimerTime_t TimerTickCounter = 1; - -/*! - * Saved value of the Tick counter at the start of the next event - */ -static TimerTime_t TimerTickCounterContext = 0; - -/*! - * Value trigging the IRQ - */ -volatile TimerTime_t TimeoutCntValue = 0; - -/*! - * Increment the Hardware Timer tick counter - */ -void TimerIncrementTickCounter( void ); - -/*! - * Counter used for the Delay operations - */ -volatile uint32_t TimerDelayCounter = 0; - -/*! - * Return the value of the counter used for a Delay - */ -uint32_t TimerHwGetDelayValue( void ); - -/*! - * Increment the value of TimerDelayCounter - */ -void TimerIncrementDelayCounter( void ); - - -void TimerHwInit( void ) -{ - NVIC_InitTypeDef NVIC_InitStructure; - TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; - - /* TIM2 clock enable */ - RCC_APB1PeriphClockCmd( RCC_APB1Periph_TIM2, ENABLE ); - - /* --------------------------NVIC Configuration -------------------------------*/ - /* Enable the TIM2 gloabal Interrupt */ - NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn; - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; - NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; - - NVIC_Init( &NVIC_InitStructure ); - - TimeoutCntValue = 0; - - /* Time base configuration */ - TIM_TimeBaseStructure.TIM_Period = 3199; - TIM_TimeBaseStructure.TIM_Prescaler = 0; - TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; - TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; - TIM_TimeBaseInit( TIM2, &TIM_TimeBaseStructure ); - - TIM_ITConfig( TIM2, TIM_IT_Update, ENABLE ); - - /* TIM2 disable counter */ - TIM_Cmd( TIM2, ENABLE ); - - /* TIM3 clock enable */ - RCC_APB1PeriphClockCmd( RCC_APB1Periph_TIM3, ENABLE ); - - /* --------------------------NVIC Configuration -------------------------------*/ - /* Enable the TIM3 gloabal Interrupt */ - NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQn; - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; - NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; - - NVIC_Init( &NVIC_InitStructure ); - - /* Time base configuration */ - TIM_TimeBaseStructure.TIM_Period = 3199; - TIM_TimeBaseStructure.TIM_Prescaler = 10; - TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; - TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; - TIM_TimeBaseInit( TIM3, &TIM_TimeBaseStructure ); - - TIM_ITConfig( TIM3, TIM_IT_Update, DISABLE ); - - /* TIM3 disable counter */ - TIM_Cmd( TIM3, DISABLE ); - - - TIM_ITConfig( TIM3, TIM_IT_Update, ENABLE ); - TIM_Cmd( TIM3, ENABLE ); - -} - -void TimerHwDeInit( void ) -{ - /* Deinitialize the timer */ - TIM_DeInit( TIM2 ); -} - -uint32_t TimerHwGetMinimumTimeout( void ) -{ - return( ceil( 2 * HW_TIMER_TIME_BASE ) ); -} - -void TimerHwStart( uint32_t val ) -{ - TimerTickCounterContext = TimerHwGetTimerValue( ); - - if( val <= HW_TIMER_TIME_BASE + 1 ) - { - TimeoutCntValue = TimerTickCounterContext + 1; - } - else - { - TimeoutCntValue = TimerTickCounterContext + ( ( val - 1 ) / HW_TIMER_TIME_BASE ); - } -} - -void TimerHwStop( void ) -{ - TIM_ITConfig( TIM2, TIM_IT_CC1, DISABLE ); - TIM_Cmd( TIM2, DISABLE ); -} - -void TimerHwDelayMs( uint32_t delay ) -{ - uint32_t delayValue = 0; - - delayValue = delay; - - TimerDelayCounter = 0; - - TIM_ITConfig( TIM3, TIM_IT_Update, ENABLE ); - TIM_Cmd( TIM3, ENABLE ); - - while( TimerHwGetDelayValue( ) < delayValue ) - { - } - - TIM_ITConfig( TIM3, TIM_IT_Update, DISABLE ); - TIM_Cmd( TIM3, DISABLE ); -} - -TimerTime_t TimerHwGetElapsedTime( void ) -{ - return( ( ( TimerHwGetTimerValue( ) - TimerTickCounterContext ) + 1 ) * HW_TIMER_TIME_BASE ); -} - -TimerTime_t TimerHwGetTimerValue( void ) -{ - TimerTime_t val = 0; - - __disable_irq( ); - - val = TimerTickCounter; - - __enable_irq( ); - - return( val ); -} - -TimerTime_t TimerHwGetTime( void ) -{ - - return TimerHwGetTimerValue( ) * HW_TIMER_TIME_BASE; -} - -uint32_t TimerHwGetDelayValue( void ) -{ - uint32_t val = 0; - - __disable_irq( ); - - val = TimerDelayCounter; - - __enable_irq( ); - - return( val ); -} - -void TimerIncrementTickCounter( void ) -{ - __disable_irq( ); - - TimerTickCounter++; - - __enable_irq( ); -} - -void TimerIncrementDelayCounter( void ) -{ - __disable_irq( ); - - TimerDelayCounter++; - - __enable_irq( ); -} - -/*! - * Timer IRQ handler - */ -void TIM2_IRQHandler( void ) -{ - if( TIM_GetITStatus( TIM2, TIM_IT_Update ) != RESET ) - { - TimerIncrementTickCounter( ); - TIM_ClearITPendingBit( TIM2, TIM_IT_Update ); - - if( TimerTickCounter == TimeoutCntValue ) - { - TimerIrqHandler( ); - } - } -} - -/*! - * Timer IRQ handler - */ -void TIM3_IRQHandler( void ) -{ - if( TIM_GetITStatus( TIM3, TIM_IT_Update ) != RESET ) - { - TimerIncrementDelayCounter( ); - TIM_ClearITPendingBit( TIM3, TIM_IT_Update ); - } -} - -void TimerHwEnterLowPowerStopMode( void ) -{ -#ifndef USE_DEBUGGER - __WFI( ); -#endif -} diff --git a/src/boards/Bleeper-76/timer-board.h b/src/boards/Bleeper-76/timer-board.h deleted file mode 100644 index a0734d70c..000000000 --- a/src/boards/Bleeper-76/timer-board.h +++ /dev/null @@ -1,83 +0,0 @@ -/* - / _____) _ | | -( (____ _____ ____ _| |_ _____ ____| |__ - \____ \| ___ | (_ _) ___ |/ ___) _ \ - _____) ) ____| | | || |_| ____( (___| | | | -(______/|_____)_|_|_| \__)_____)\____)_| |_| - (C)2013 Semtech - -Description: MCU timer - -License: Revised BSD License, see LICENSE.TXT file include in the project - -Maintainer: Miguel Luis and Gregory Cristian -*/ -#ifndef __TIMER_BOARD_H__ -#define __TIMER_BOARD_H__ - -/*! - * \brief Timer time variable definition - */ -#ifndef TimerTime_t -typedef uint64_t TimerTime_t; -#endif - -/*! - * \brief Initializes the timer - * - * \remark The timer is based on TIM2 with a 10uS time basis - */ -void TimerHwInit( void ); - -/*! - * \brief DeInitializes the timer - */ -void TimerHwDeInit( void ); - -/*! - * \brief Return the minimum timeout the Timer is able to handle - * - * \retval minimum value for a timeout - */ -uint32_t TimerHwGetMinimumTimeout( void ); - -/*! - * \brief Start the Standard Timer counter - * - * \param [IN] rtcCounter Timer duration - */ -void TimerHwStart( uint32_t rtcCounter ); - -/*! - * \brief Perfoms a standard blocking delay in the code execution - * - * \param [IN] delay Delay value in ms - */ -void TimerHwDelayMs( uint32_t delay ); - -/*! - * \brief Stop the the Standard Timer counter - */ -void TimerHwStop( void ); - -/*! - * \brief Return the value of the timer counter - */ -TimerTime_t TimerHwGetTimerValue( void ); - -/*! - * \brief Return the value of the current time in us - */ -TimerTime_t TimerHwGetTime( void ); - -/*! - * \brief Return the value on the timer Tick counter - */ -TimerTime_t TimerHwGetElapsedTime( void ); - -/*! - * \brief Set the ARM core in Wait For Interrupt mode (only working if Debug mode is not used) - */ -void TimerHwEnterLowPowerStopMode( void ); - -#endif // __TIMER_BOARD_H__ diff --git a/src/boards/LoRaMote/LoRaMac-board.h b/src/boards/LoRaMote/LoRaMac-board.h index 3b0c0e212..c145fef7e 100644 --- a/src/boards/LoRaMote/LoRaMac-board.h +++ b/src/boards/LoRaMote/LoRaMac-board.h @@ -129,12 +129,6 @@ typedef enum #define LC1 { 868100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 1 } #define LC2 { 868300000, { ( ( DR_6 << 4 ) | DR_0 ) }, 1 } #define LC3 { 868500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 1 } -#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } #elif defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) diff --git a/src/boards/LoRaMote/board.c b/src/boards/LoRaMote/board.c index a1cf168a8..3146dd253 100644 --- a/src/boards/LoRaMote/board.c +++ b/src/boards/LoRaMote/board.c @@ -284,3 +284,25 @@ static void BoardUnusedIoInit( void ) GpioInit( &ioPin, JTAG_NRST, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); #endif } + +#ifdef USE_FULL_ASSERT +/* + * Function Name : assert_failed + * Description : Reports the name of the source file and the source line number + * where the assert_param error has occurred. + * Input : - file: pointer to the source file name + * - line: assert_param error line source number + * Output : None + * Return : None + */ +void assert_failed( uint8_t* file, uint32_t line ) +{ + /* 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) */ + + /* Infinite loop */ + while( 1 ) + { + } +} +#endif diff --git a/src/boards/LoRaMote/spi-board.c b/src/boards/LoRaMote/spi-board.c index 167d77fae..ca8715f47 100644 --- a/src/boards/LoRaMote/spi-board.c +++ b/src/boards/LoRaMote/spi-board.c @@ -43,6 +43,8 @@ SPI_InitTypeDef SPI_InitStructure; void SpiInit( Spi_t *obj, PinNames mosi, PinNames miso, PinNames sclk, PinNames nss ) { + SPI_StructInit( &SPI_InitStructure ); + GpioInit( &obj->Mosi, mosi, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); GpioInit( &obj->Miso, miso, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); GpioInit( &obj->Sclk, sclk, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); diff --git a/src/boards/LoRaMote/timer-board.c b/src/boards/LoRaMote/timer-board.c index 84724e99c..049864599 100644 --- a/src/boards/LoRaMote/timer-board.c +++ b/src/boards/LoRaMote/timer-board.c @@ -59,6 +59,8 @@ void TimerIncrementDelayCounter( void ); void TimerHwInit( void ) { + TimerDelayCounter = 0; + NVIC_InitTypeDef NVIC_InitStructure; TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; @@ -115,7 +117,6 @@ void TimerHwInit( void ) TIM_ITConfig( TIM3, TIM_IT_Update, ENABLE ); TIM_Cmd( TIM3, ENABLE ); - } void TimerHwDeInit( void ) @@ -152,20 +153,15 @@ void TimerHwStop( void ) void TimerHwDelayMs( uint32_t delay ) { uint32_t delayValue = 0; + uint32_t timeout = 0; delayValue = delay; - - TimerDelayCounter = 0; - - TIM_ITConfig( TIM3, TIM_IT_Update, ENABLE ); - TIM_Cmd( TIM3, ENABLE ); - - while( TimerHwGetDelayValue( ) < delayValue ) + // Wait delay ms + timeout = TimerHwGetDelayValue( ); + while( ( TimerHwGetDelayValue( ) - timeout ) < delayValue ) { + __NOP( ); } - - TIM_ITConfig( TIM3, TIM_IT_Update, DISABLE ); - TIM_Cmd( TIM3, DISABLE ); } TimerTime_t TimerHwGetElapsedTime( void ) diff --git a/src/boards/SK-iM880A/LoRaMac-board.h b/src/boards/SK-iM880A/LoRaMac-board.h index 403f0baa5..4ffb3eef3 100644 --- a/src/boards/SK-iM880A/LoRaMac-board.h +++ b/src/boards/SK-iM880A/LoRaMac-board.h @@ -129,12 +129,6 @@ typedef enum #define LC1 { 868100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 1 } #define LC2 { 868300000, { ( ( DR_6 << 4 ) | DR_0 ) }, 1 } #define LC3 { 868500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 1 } -#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } #else #error "Please define a frequency band in the compiler options." diff --git a/src/boards/SK-iM880A/board.c b/src/boards/SK-iM880A/board.c index f74150daf..37e987139 100644 --- a/src/boards/SK-iM880A/board.c +++ b/src/boards/SK-iM880A/board.c @@ -242,3 +242,25 @@ static void BoardUnusedIoInit( void ) GpioInit( &ioPin, JTAG_NRST, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); #endif } + +#ifdef USE_FULL_ASSERT +/* + * Function Name : assert_failed + * Description : Reports the name of the source file and the source line number + * where the assert_param error has occurred. + * Input : - file: pointer to the source file name + * - line: assert_param error line source number + * Output : None + * Return : None + */ +void assert_failed( uint8_t* file, uint32_t line ) +{ + /* 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) */ + + /* Infinite loop */ + while( 1 ) + { + } +} +#endif diff --git a/src/boards/SK-iM880A/spi-board.c b/src/boards/SK-iM880A/spi-board.c index 167d77fae..ca8715f47 100644 --- a/src/boards/SK-iM880A/spi-board.c +++ b/src/boards/SK-iM880A/spi-board.c @@ -43,6 +43,8 @@ SPI_InitTypeDef SPI_InitStructure; void SpiInit( Spi_t *obj, PinNames mosi, PinNames miso, PinNames sclk, PinNames nss ) { + SPI_StructInit( &SPI_InitStructure ); + GpioInit( &obj->Mosi, mosi, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); GpioInit( &obj->Miso, miso, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); GpioInit( &obj->Sclk, sclk, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); diff --git a/src/boards/SK-iM880A/timer-board.c b/src/boards/SK-iM880A/timer-board.c index 84724e99c..049864599 100644 --- a/src/boards/SK-iM880A/timer-board.c +++ b/src/boards/SK-iM880A/timer-board.c @@ -59,6 +59,8 @@ void TimerIncrementDelayCounter( void ); void TimerHwInit( void ) { + TimerDelayCounter = 0; + NVIC_InitTypeDef NVIC_InitStructure; TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; @@ -115,7 +117,6 @@ void TimerHwInit( void ) TIM_ITConfig( TIM3, TIM_IT_Update, ENABLE ); TIM_Cmd( TIM3, ENABLE ); - } void TimerHwDeInit( void ) @@ -152,20 +153,15 @@ void TimerHwStop( void ) void TimerHwDelayMs( uint32_t delay ) { uint32_t delayValue = 0; + uint32_t timeout = 0; delayValue = delay; - - TimerDelayCounter = 0; - - TIM_ITConfig( TIM3, TIM_IT_Update, ENABLE ); - TIM_Cmd( TIM3, ENABLE ); - - while( TimerHwGetDelayValue( ) < delayValue ) + // Wait delay ms + timeout = TimerHwGetDelayValue( ); + while( ( TimerHwGetDelayValue( ) - timeout ) < delayValue ) { + __NOP( ); } - - TIM_ITConfig( TIM3, TIM_IT_Update, DISABLE ); - TIM_Cmd( TIM3, DISABLE ); } TimerTime_t TimerHwGetElapsedTime( void ) diff --git a/src/boards/SensorNode/LoRaMac-board.h b/src/boards/SensorNode/LoRaMac-board.h index 946d25e63..10c3c97be 100644 --- a/src/boards/SensorNode/LoRaMac-board.h +++ b/src/boards/SensorNode/LoRaMac-board.h @@ -311,12 +311,6 @@ typedef enum #define LC1 { 868100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 1 } #define LC2 { 868300000, { ( ( DR_6 << 4 ) | DR_0 ) }, 1 } #define LC3 { 868500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 1 } -#define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } -#define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } #elif defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) diff --git a/src/boards/SensorNode/board.c b/src/boards/SensorNode/board.c index 771ac5d74..30bb49087 100644 --- a/src/boards/SensorNode/board.c +++ b/src/boards/SensorNode/board.c @@ -336,3 +336,25 @@ static void BoardUnusedIoInit( void ) GpioInit( &ioPin, SWCLK, PIN_ANALOGIC, PIN_PUSH_PULL, PIN_NO_PULL, 0 ); #endif } + +#ifdef USE_FULL_ASSERT +/* + * Function Name : assert_failed + * Description : Reports the name of the source file and the source line number + * where the assert_param error has occurred. + * Input : - file: pointer to the source file name + * - line: assert_param error line source number + * Output : None + * Return : None + */ +void assert_failed( uint8_t* file, uint32_t line ) +{ + /* 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) */ + + /* Infinite loop */ + while( 1 ) + { + } +} +#endif diff --git a/src/boards/SensorNode/spi-board.c b/src/boards/SensorNode/spi-board.c index 43da23af8..51e27df44 100644 --- a/src/boards/SensorNode/spi-board.c +++ b/src/boards/SensorNode/spi-board.c @@ -43,6 +43,8 @@ SPI_InitTypeDef SPI_InitStructure; void SpiInit( Spi_t *obj, PinNames mosi, PinNames miso, PinNames sclk, PinNames nss ) { + SPI_StructInit( &SPI_InitStructure ); + GpioInit( &obj->Mosi, mosi, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); GpioInit( &obj->Miso, miso, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); GpioInit( &obj->Sclk, sclk, PIN_ALTERNATE_FCT, PIN_PUSH_PULL, PIN_PULL_DOWN, 0 ); diff --git a/src/boards/SensorNode/timer-board.c b/src/boards/SensorNode/timer-board.c index 84724e99c..049864599 100644 --- a/src/boards/SensorNode/timer-board.c +++ b/src/boards/SensorNode/timer-board.c @@ -59,6 +59,8 @@ void TimerIncrementDelayCounter( void ); void TimerHwInit( void ) { + TimerDelayCounter = 0; + NVIC_InitTypeDef NVIC_InitStructure; TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; @@ -115,7 +117,6 @@ void TimerHwInit( void ) TIM_ITConfig( TIM3, TIM_IT_Update, ENABLE ); TIM_Cmd( TIM3, ENABLE ); - } void TimerHwDeInit( void ) @@ -152,20 +153,15 @@ void TimerHwStop( void ) void TimerHwDelayMs( uint32_t delay ) { uint32_t delayValue = 0; + uint32_t timeout = 0; delayValue = delay; - - TimerDelayCounter = 0; - - TIM_ITConfig( TIM3, TIM_IT_Update, ENABLE ); - TIM_Cmd( TIM3, ENABLE ); - - while( TimerHwGetDelayValue( ) < delayValue ) + // Wait delay ms + timeout = TimerHwGetDelayValue( ); + while( ( TimerHwGetDelayValue( ) - timeout ) < delayValue ) { + __NOP( ); } - - TIM_ITConfig( TIM3, TIM_IT_Update, DISABLE ); - TIM_Cmd( TIM3, DISABLE ); } TimerTime_t TimerHwGetElapsedTime( void ) diff --git a/src/mac/LoRaMac-api-v3.c b/src/mac/LoRaMac-api-v3.c index a358dfab3..1e5fb4326 100644 --- a/src/mac/LoRaMac-api-v3.c +++ b/src/mac/LoRaMac-api-v3.c @@ -340,7 +340,7 @@ uint8_t LoRaMacSendConfirmedFrame( uint8_t fPort, void *fBuffer, uint16_t fBuffe mcpsRequest.Req.Confirmed.fBuffer = fBuffer; mcpsRequest.Req.Confirmed.fBufferSize = fBufferSize; mcpsRequest.Req.Confirmed.fPort = fPort; - mcpsRequest.Req.Confirmed.nbRetries = nbRetries; + mcpsRequest.Req.Confirmed.NbTrials = nbRetries; mcpsRequest.Req.Confirmed.Datarate = mibGet.Param.ChannelsDatarate; switch( LoRaMacMcpsRequest( &mcpsRequest ) ) diff --git a/src/mac/LoRaMac.c b/src/mac/LoRaMac.c index f23854b12..a7e25fb95 100644 --- a/src/mac/LoRaMac.c +++ b/src/mac/LoRaMac.c @@ -300,12 +300,6 @@ static ChannelParams_t Channels[LORA_MAX_NB_CHANNELS] = LC1, LC2, LC3, - LC4, - LC5, - LC6, - LC7, - LC8, - LC9, }; #elif defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) /*! @@ -447,6 +441,7 @@ enum eLoRaMacState MAC_ACK_REQ = 0x00000004, MAC_ACK_RETRY = 0x00000008, MAC_TX_DELAYED = 0x00000010, + MAC_TX_CONFIG = 0x00000020, }; /*! @@ -561,6 +556,12 @@ LoRaMacFlags_t LoRaMacFlags; */ static void OnRadioTxDone( void ); +/*! + * \brief This function prepares the MAC to abort the execution of function + * OnRadioRxDone in case of a reception error. + */ +static void PrepareRxDoneAbort( void ); + /*! * \brief Function to be executed on Radio Rx Done event */ @@ -609,9 +610,13 @@ static void OnAckTimeoutTimerEvent( void ); /*! * \brief Searches and set the next random available channel * - * \retval status Function status [0: OK, 1: Unable to find a free channel] + * \param [OUT] Time to wait for the next transmission according to the duty + * cycle. + * + * \retval status Function status [1: OK, 0: Unable to find a channel on the + * current datarate] */ -static TimerTime_t SetNextChannel( void ); +static bool SetNextChannel( TimerTime_t* time ); /*! * \brief Sets the network to public or private. Updates the sync byte. @@ -833,6 +838,28 @@ static void OnRadioTxDone( void ) } } +static void PrepareRxDoneAbort( void ) +{ + LoRaMacState &= ~MAC_TX_RUNNING; + + if( NodeAckRequested ) + { + OnAckTimeoutTimerEvent( ); + } + + if( ( RxSlot == 0 ) && ( LoRaMacDeviceClass == CLASS_C ) ) + { + OnRxWindow2TimerEvent( ); + } + + LoRaMacFlags.Bits.McpsInd = 1; + LoRaMacFlags.Bits.MacDone = 1; + + // Trig OnMacCheckTimerEvent call as soon as possible + TimerSetValue( &MacStateCheckTimer, 1000 ); + TimerStart( &MacStateCheckTimer ); +} + static void OnRadioRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr ) { LoRaMacHeader_t macHdr; @@ -941,11 +968,13 @@ static void OnRadioRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t ChannelParams_t param; param.DrRange.Value = ( DR_5 << 4 ) | DR_0; + LoRaMacState |= MAC_TX_CONFIG; for( uint8_t i = 3, j = 0; i < ( 5 + 3 ); i++, j += 3 ) { param.Frequency = ( ( uint32_t )LoRaMacRxPayload[13 + j] | ( ( uint32_t )LoRaMacRxPayload[14 + j] << 8 ) | ( ( uint32_t )LoRaMacRxPayload[15 + j] << 16 ) ) * 100; LoRaMacChannelAdd( i, param ); } + LoRaMacState &= ~MAC_TX_CONFIG; } #endif MlmeConfirm.Status = LORAMAC_EVENT_INFO_STATUS_OK; @@ -960,8 +989,6 @@ static void OnRadioRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t case FRAME_TYPE_DATA_CONFIRMED_DOWN: case FRAME_TYPE_DATA_UNCONFIRMED_DOWN: { - LoRaMacFlags.Bits.McpsInd = 1; - address = payload[pktHeaderLen++]; address |= ( (uint32_t)payload[pktHeaderLen++] << 8 ); address |= ( (uint32_t)payload[pktHeaderLen++] << 16 ); @@ -985,13 +1012,8 @@ static void OnRadioRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t if( multicast == 0 ) { // We are not the destination of this frame. - LoRaMacFlags.Bits.MacDone = 1; McpsIndication.Status = LORAMAC_EVENT_INFO_STATUS_ADDRESS_FAIL; - LoRaMacState &= ~MAC_TX_RUNNING; - if( NodeAckRequested ) - { - OnAckTimeoutTimerEvent( ); - } + PrepareRxDoneAbort( ); return; } } @@ -1003,12 +1025,6 @@ static void OnRadioRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t downLinkCounter = DownLinkCounter; } - if( LoRaMacDeviceClass != CLASS_A ) - { - LoRaMacState |= MAC_RX; - // Starts the MAC layer status check timer - TimerStart( &MacStateCheckTimer ); - } fCtrl.Value = payload[pktHeaderLen++]; sequenceCounter = ( uint16_t )payload[pktHeaderLen++]; @@ -1066,14 +1082,9 @@ static void OnRadioRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t if( ( curMulticastParams->DownLinkCounter == downLinkCounter ) && ( curMulticastParams->DownLinkCounter != 0 ) ) { - LoRaMacFlags.Bits.MacDone = 1; McpsIndication.Status = LORAMAC_EVENT_INFO_STATUS_DOWNLINK_REPEATED; McpsIndication.DownLinkCounter = downLinkCounter; - LoRaMacState &= ~MAC_TX_RUNNING; - if( NodeAckRequested == true ) - { - OnAckTimeoutTimerEvent( ); - } + PrepareRxDoneAbort( ); return; } curMulticastParams->DownLinkCounter = downLinkCounter; @@ -1082,36 +1093,25 @@ static void OnRadioRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t { if( macHdr.Bits.MType == FRAME_TYPE_DATA_CONFIRMED_DOWN ) { + SrvAckRequested = true; McpsIndication.McpsIndication = MCPS_CONFIRMED; } else { + SrvAckRequested = false; McpsIndication.McpsIndication = MCPS_UNCONFIRMED; } if( ( DownLinkCounter == downLinkCounter ) && ( DownLinkCounter != 0 ) ) { - LoRaMacFlags.Bits.MacDone = 1; McpsIndication.Status = LORAMAC_EVENT_INFO_STATUS_DOWNLINK_REPEATED; McpsIndication.DownLinkCounter = downLinkCounter; - LoRaMacState &= ~MAC_TX_RUNNING; - if( NodeAckRequested == true ) - { - OnAckTimeoutTimerEvent( ); - } + PrepareRxDoneAbort( ); return; } DownLinkCounter = downLinkCounter; } - if( macHdr.Bits.MType == FRAME_TYPE_DATA_CONFIRMED_DOWN ) - { - SrvAckRequested = true; - } - else - { - SrvAckRequested = false; - } // Check if the frame is an acknowledgement if( fCtrl.Bits.Ack == 1 ) { @@ -1174,34 +1174,32 @@ static void OnRadioRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t McpsIndication.RxData = true; } } + LoRaMacFlags.Bits.McpsInd = 1; } else { McpsIndication.Status = LORAMAC_EVENT_INFO_STATUS_MIC_FAIL; - LoRaMacState &= ~MAC_TX_RUNNING; - if( NodeAckRequested == true ) - { - OnAckTimeoutTimerEvent( ); - } + + PrepareRxDoneAbort( ); + return; } } break; case FRAME_TYPE_PROPRIETARY: { - LoRaMacFlags.Bits.McpsInd = 1; - memcpy1( LoRaMacRxPayload, &payload[pktHeaderLen], size ); McpsIndication.McpsIndication = MCPS_PROPRIETARY; McpsIndication.Status = LORAMAC_EVENT_INFO_STATUS_OK; McpsIndication.Buffer = LoRaMacRxPayload; McpsIndication.BufferSize = size - pktHeaderLen; + + LoRaMacFlags.Bits.McpsInd = 1; break; } default: - LoRaMacFlags.Bits.McpsInd = 1; McpsIndication.Status = LORAMAC_EVENT_INFO_STATUS_ERROR; - LoRaMacState &= ~MAC_TX_RUNNING; + PrepareRxDoneAbort( ); break; } @@ -1209,8 +1207,11 @@ static void OnRadioRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t { OnRxWindow2TimerEvent( ); } - LoRaMacFlags.Bits.MacDone = 1; + + // Trig OnMacCheckTimerEvent call as soon as possible + TimerSetValue( &MacStateCheckTimer, 1000 ); + TimerStart( &MacStateCheckTimer ); } static void OnRadioTxTimeout( void ) @@ -1336,6 +1337,7 @@ static void OnMacStateCheckTimerEvent( void ) if( ( McpsConfirm.AckReceived == true ) || ( AckTimeoutRetriesCounter > AckTimeoutRetries ) ) { AckTimeoutRetry = false; + NodeAckRequested = false; if( IsUpLinkCounterFixed == false ) { UpLinkCounter++; @@ -1387,6 +1389,7 @@ static void OnMacStateCheckTimerEvent( void ) #endif LoRaMacState &= ~MAC_TX_RUNNING; + NodeAckRequested = false; McpsConfirm.AckReceived = false; McpsConfirm.NbRetries = AckTimeoutRetriesCounter; if( IsUpLinkCounterFixed == false ) @@ -1420,6 +1423,7 @@ static void OnMacStateCheckTimerEvent( void ) else { // Operation not finished restart timer + TimerSetValue( &MacStateCheckTimer, MAC_STATE_CHECK_TIMEOUT ); TimerStart( &MacStateCheckTimer ); } @@ -1546,9 +1550,10 @@ static void OnAckTimeoutTimerEvent( void ) } } -static TimerTime_t SetNextChannel( void ) +static bool SetNextChannel( TimerTime_t* time ) { uint8_t nbEnabledChannels = 0; + uint8_t delayTx = 0; uint8_t enabledChannels[LORA_MAX_NB_CHANNELS]; TimerTime_t curTime = TimerGetCurrentTime( ); TimerTime_t nextTxDelay = ( TimerTime_t )( -1 ); @@ -1556,11 +1561,28 @@ static TimerTime_t SetNextChannel( void ) memset1( enabledChannels, 0, LORA_MAX_NB_CHANNELS ); #if defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) - if( ( CountNbEnabled125kHzChannels( ChannelsMaskRemaining ) + - ( ChannelsMaskRemaining[4] & 0x00FF ) ) == 0 ) + if( CountNbEnabled125kHzChannels( ChannelsMaskRemaining ) == 0 ) + { // Restore default channels + memcpy1( ( uint8_t* ) ChannelsMaskRemaining, ( uint8_t* ) ChannelsMask, 8 ); + } + if( ( ChannelsDatarate >= DR_4 ) && ( ( ChannelsMaskRemaining[4] & 0x00FF ) == 0 ) ) + { // Make sure, that the channels are activated + ChannelsMaskRemaining[4] = ChannelsMask[4]; + } +#else + uint8_t chanCnt = 0; + for( uint8_t i = 0, k = 0; i < LORA_MAX_NB_CHANNELS; i += 16, k++ ) + { + if( ChannelsMask[k] != 0 ) + { + chanCnt++; + break; + } + } + if( chanCnt == 0 ) { - memcpy1( ( uint8_t* ) ChannelsMaskRemaining, ( uint8_t* ) ChannelsMask, - sizeof( ChannelsMask ) ); + // Re-enable default channels, if no channel is enabled + ChannelsMask[0] = ChannelsMask[0] | ( LC( 1 ) + LC( 2 ) + LC( 3 ) ); } #endif @@ -1605,21 +1627,16 @@ static TimerTime_t SetNextChannel( void ) { if( Channels[i + j].Frequency == 0 ) { // Check if the channel is enabled -#if defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) - DisableChannelInMask( i + j, ChannelsMaskRemaining ); -#endif continue; } if( ( ( Channels[i + j].DrRange.Fields.Min <= ChannelsDatarate ) && ( ChannelsDatarate <= Channels[i + j].DrRange.Fields.Max ) ) == false ) { // Check if the current channel selection supports the given datarate -#if defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) - DisableChannelInMask( i + j, ChannelsMaskRemaining ); -#endif continue; } if( Bands[Channels[i + j].Band].TimeOff > 0 ) { // Check if the band is available for transmission + delayTx++; continue; } enabledChannels[nbEnabledChannels++] = i + j; @@ -1629,6 +1646,7 @@ static TimerTime_t SetNextChannel( void ) } else { + delayTx++; nextTxDelay = AggregatedTimeOff - ( curTime - AggregatedLastTxDoneTime ); } @@ -1636,14 +1654,25 @@ static TimerTime_t SetNextChannel( void ) { Channel = enabledChannels[randr( 0, nbEnabledChannels - 1 )]; #if defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) - DisableChannelInMask( Channel, ChannelsMaskRemaining ); + if( Channel < ( LORA_MAX_NB_CHANNELS - 8 ) ) + { + DisableChannelInMask( Channel, ChannelsMaskRemaining ); + } #endif - return 0; + *time = 0; + return true; } else { - // Protect the function of returning the initialization value of nextTxDelay - return ( nextTxDelay == ( TimerTime_t )( -1 ) ) ? 0 : nextTxDelay; + if( delayTx > 0 ) + { + // Delay transmission due to AggregatedTimeOff or to a band time off + *time = nextTxDelay; + return true; + } + // Datarate not supported by any channel + *time = 0; + return false; } } @@ -1813,38 +1842,10 @@ static bool AdrNextDr( bool adrEnabled, bool updateChannelMask, int8_t* datarate { AdrAckCounter = 0; adrAckReq = false; - - if( updateChannelMask == true ) - { -#if defined( USE_BAND_433 ) || defined( USE_BAND_780 ) || defined( USE_BAND_868 ) - // Re-enable default channels LC1, LC2, LC3 - ChannelsMask[0] = ChannelsMask[0] | ( LC( 1 ) + LC( 2 ) + LC( 3 ) ); -#elif defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) -#if defined( USE_BAND_915 ) - // Re-enable default channels - ChannelsMask[0] = 0xFFFF; - ChannelsMask[1] = 0xFFFF; - ChannelsMask[2] = 0xFFFF; - ChannelsMask[3] = 0xFFFF; - ChannelsMask[4] = 0x00FF; - ChannelsMask[5] = 0x0000; -#else // defined( USE_BAND_915_HYBRID ) - // Re-enable default channels - ChannelsMask[0] = 0x00FF; - ChannelsMask[1] = 0x0000; - ChannelsMask[2] = 0x0000; - ChannelsMask[3] = 0x0000; - ChannelsMask[4] = 0x0001; - ChannelsMask[5] = 0x0000; -#endif -#else -#error "Please define a frequency band in the compiler options." -#endif - } } else { - if( AdrAckCounter > ADR_ACK_LIMIT ) + if( AdrAckCounter >= ADR_ACK_LIMIT ) { adrAckReq = true; } @@ -1852,26 +1853,60 @@ static bool AdrNextDr( bool adrEnabled, bool updateChannelMask, int8_t* datarate { adrAckReq = false; } - if( AdrAckCounter > ( ADR_ACK_LIMIT + ADR_ACK_DELAY ) ) + if( AdrAckCounter >= ( ADR_ACK_LIMIT + ADR_ACK_DELAY ) ) { - AdrAckCounter = 0; -#if defined( USE_BAND_433 ) || defined( USE_BAND_780 ) || defined( USE_BAND_868 ) - if( datarate > LORAMAC_MIN_DATARATE ) + if( ( ( AdrAckCounter - ADR_ACK_DELAY ) % ADR_ACK_LIMIT ) == 0 ) { - datarate--; - } +#if defined( USE_BAND_433 ) || defined( USE_BAND_780 ) || defined( USE_BAND_868 ) + if( datarate > LORAMAC_MIN_DATARATE ) + { + datarate--; + } + if( datarate == LORAMAC_MIN_DATARATE ) + { + if( updateChannelMask == true ) + { + + // Re-enable default channels LC1, LC2, LC3 + ChannelsMask[0] = ChannelsMask[0] | ( LC( 1 ) + LC( 2 ) + LC( 3 ) ); + } + } #elif defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) - if( ( datarate > LORAMAC_MIN_DATARATE ) && ( datarate == DR_8 ) ) - { - datarate = DR_4; - } - else if( datarate > LORAMAC_MIN_DATARATE ) - { - datarate--; - } + if( ( datarate > LORAMAC_MIN_DATARATE ) && ( datarate == DR_8 ) ) + { + datarate = DR_4; + } + else if( datarate > LORAMAC_MIN_DATARATE ) + { + datarate--; + } + if( datarate == LORAMAC_MIN_DATARATE ) + { + if( updateChannelMask == true ) + { +#if defined( USE_BAND_915 ) + // Re-enable default channels + ChannelsMask[0] = 0xFFFF; + ChannelsMask[1] = 0xFFFF; + ChannelsMask[2] = 0xFFFF; + ChannelsMask[3] = 0xFFFF; + ChannelsMask[4] = 0x00FF; + ChannelsMask[5] = 0x0000; +#else // defined( USE_BAND_915_HYBRID ) + // Re-enable default channels + ChannelsMask[0] = 0x00FF; + ChannelsMask[1] = 0x0000; + ChannelsMask[2] = 0x0000; + ChannelsMask[3] = 0x0000; + ChannelsMask[4] = 0x0001; + ChannelsMask[5] = 0x0000; +#endif + } + } #else #error "Please define a frequency band in the compiler options." #endif + } } } } @@ -2193,8 +2228,10 @@ static void ProcessMacCommands( uint8_t *payload, uint8_t macIndex, uint8_t comm case SRV_MAC_NEW_CHANNEL_REQ: { uint8_t status = 0x03; + #if ( defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) ) - status &= 0xFE; // Channel frequency KO + status &= 0xFC; // Channel frequency and datarate KO + macIndex += 5; #else int8_t channelIndex = 0; ChannelParams_t chParam; @@ -2206,21 +2243,52 @@ static void ProcessMacCommands( uint8_t *payload, uint8_t macIndex, uint8_t comm chParam.Frequency *= 100; chParam.DrRange.Value = payload[macIndex++]; - if( ValueInRange( channelIndex, 3, LORA_MAX_NB_CHANNELS - 1 ) == false ) - - { - status &= 0xFE; // Channel frequency KO - } - - if( Radio.CheckRfFrequency( chParam.Frequency ) == false ) + LoRaMacState |= MAC_TX_CONFIG; + if( chParam.Frequency == 0 ) { - status &= 0xFE; // Channel frequency KO + if( channelIndex < 3 ) + { + status &= 0xFC; + } + else + { + if( LoRaMacChannelRemove( channelIndex ) != LORAMAC_STATUS_OK ) + { + status &= 0xFC; + } + } } - - if( LoRaMacChannelAdd( channelIndex, chParam ) != LORAMAC_STATUS_OK ) + else { - status &= 0xFD; // Datarate range KO + switch( LoRaMacChannelAdd( channelIndex, chParam ) ) + { + case LORAMAC_STATUS_OK: + { + break; + } + case LORAMAC_STATUS_FREQUENCY_INVALID: + { + status &= 0xFE; + break; + } + case LORAMAC_STATUS_DATARATE_INVALID: + { + status &= 0xFD; + break; + } + case LORAMAC_STATUS_FREQ_AND_DR_INVALID: + { + status &= 0xFC; + break; + } + default: + { + status &= 0xFC; + break; + } + } } + LoRaMacState &= ~MAC_TX_CONFIG; #endif AddMacCommand( MOTE_MAC_NEW_CHANNEL_ANS, status, 0 ); } @@ -2291,7 +2359,16 @@ static LoRaMacStatus_t ScheduleTx( ) } // Select channel - dutyCycleTimeOff = SetNextChannel( ); + while( SetNextChannel( &dutyCycleTimeOff ) == false ) + { + // Set the default datarate + ChannelsDatarate = ChannelsDefaultDatarate; + +#if defined( USE_BAND_433 ) || defined( USE_BAND_780 ) || defined( USE_BAND_868 ) + // Re-enable default channels LC1, LC2, LC3 + ChannelsMask[0] = ChannelsMask[0] | ( LC( 1 ) + LC( 2 ) + LC( 3 ) ); +#endif + } // Schedule transmission of frame if( dutyCycleTimeOff == 0 ) @@ -2365,6 +2442,8 @@ LoRaMacStatus_t PrepareFrame( LoRaMacHeader_t *macHdr, LoRaMacFrameCtrl_t *fCtrl return LORAMAC_STATUS_NO_NETWORK_JOINED; // No network has been joined yet } + fCtrl->Bits.AdrAckReq = AdrNextDr( fCtrl->Bits.Adr, true, &ChannelsDatarate ); + if( ValidatePayloadLength( fBufferSize, ChannelsDatarate, MacCommandsBufferIndex ) == false ) { return LORAMAC_STATUS_LENGTH_ERROR; @@ -2379,8 +2458,6 @@ LoRaMacStatus_t PrepareFrame( LoRaMacHeader_t *macHdr, LoRaMacFrameCtrl_t *fCtrl fCtrl->Bits.Ack = 1; } - fCtrl->Bits.AdrAckReq = AdrNextDr( fCtrl->Bits.Adr, true, &ChannelsDatarate ); - LoRaMacBuffer[pktHeaderLen++] = ( LoRaMacDevAddr ) & 0xFF; LoRaMacBuffer[pktHeaderLen++] = ( LoRaMacDevAddr >> 8 ) & 0xFF; LoRaMacBuffer[pktHeaderLen++] = ( LoRaMacDevAddr >> 16 ) & 0xFF; @@ -2513,6 +2590,7 @@ LoRaMacStatus_t SendFrameOnChannel( ChannelParams_t channel ) MlmeConfirm.TxTimeOnAir = TxTimeOnAir; // Starts the MAC layer status check timer + TimerSetValue( &MacStateCheckTimer, MAC_STATE_CHECK_TIMEOUT ); TimerStart( &MacStateCheckTimer ); // Send now @@ -3048,117 +3126,142 @@ LoRaMacStatus_t LoRaMacMibSetRequestConfirm( MibRequestConfirm_t *mibSet ) LoRaMacStatus_t LoRaMacChannelAdd( uint8_t id, ChannelParams_t params ) { +#if ( defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) ) + return LORAMAC_STATUS_PARAMETER_INVALID; +#else + bool datarateInvalid = false; + bool frequencyInvalid = false; + uint8_t band = 0; + + // The id must not exceed LORA_MAX_NB_CHANNELS if( id >= LORA_MAX_NB_CHANNELS ) { return LORAMAC_STATUS_PARAMETER_INVALID; } + // Validate if the MAC is in a correct state if( ( LoRaMacState & MAC_TX_RUNNING ) == MAC_TX_RUNNING ) { - return LORAMAC_STATUS_BUSY; + if( ( LoRaMacState & MAC_TX_CONFIG ) != MAC_TX_CONFIG ) + { + return LORAMAC_STATUS_BUSY; + } } + // Validate the datarate if( ( params.DrRange.Fields.Min > params.DrRange.Fields.Max ) || ( ValueInRange( params.DrRange.Fields.Min, LORAMAC_MIN_DATARATE, LORAMAC_MAX_DATARATE ) == false ) || ( ValueInRange( params.DrRange.Fields.Max, LORAMAC_MIN_DATARATE, LORAMAC_MAX_DATARATE ) == false ) ) { - return LORAMAC_STATUS_PARAMETER_INVALID; + datarateInvalid = true; } - params.Band = 0; - -#if ( defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) ) - return LORAMAC_STATUS_PARAMETER_INVALID; -#else -#if defined( USE_BAND_433 ) || defined( USE_BAND_780 ) - Channels[id] = params; - Channels[id].Band = 0; // No duty cycle on EU433 and CN470 bands -#elif defined( USE_BAND_868 ) - Channels[id] = params; - if( ( Channels[id].Frequency >= 865000000 ) && ( Channels[id].Frequency <= 868000000 ) ) +#if defined( USE_BAND_433 ) || defined( USE_BAND_780 ) || defined( USE_BAND_868 ) + if( id < 3 ) { - if( Channels[id].Band != BAND_G1_0 ) + if( params.Frequency != Channels[id].Frequency ) { - Channels[id].Band = BAND_G1_0; + frequencyInvalid = true; } - } - else if( ( Channels[id].Frequency > 868000000 ) && ( Channels[id].Frequency <= 868600000 ) ) - { - if( Channels[id].Band != BAND_G1_1 ) + + if( params.DrRange.Fields.Min > LORAMAC_DEFAULT_DATARATE ) { - Channels[id].Band = BAND_G1_1; + datarateInvalid = true; } - } - else if( ( Channels[id].Frequency >= 868700000 ) && ( Channels[id].Frequency <= 869200000 ) ) - { - if( Channels[id].Band != BAND_G1_2 ) + if( ValueInRange( params.DrRange.Fields.Max, DR_5, LORAMAC_MAX_DATARATE ) == false ) { - Channels[id].Band = BAND_G1_2; + datarateInvalid = true; } } - else if( ( Channels[id].Frequency >= 869400000 ) && ( Channels[id].Frequency <= 869650000 ) ) +#endif + + // Validate the frequency + if( ( Radio.CheckRfFrequency( params.Frequency ) == true ) && ( params.Frequency > 0 ) && ( frequencyInvalid == false ) ) { - if( Channels[id].Band != BAND_G1_3 ) +#if defined( USE_BAND_868 ) + if( ( params.Frequency >= 865000000 ) && ( params.Frequency <= 868000000 ) ) { - Channels[id].Band = BAND_G1_3; + band = BAND_G1_0; } - } - else if( ( Channels[id].Frequency >= 869700000 ) && ( Channels[id].Frequency <= 870000000 ) ) - { - if( Channels[id].Band != BAND_G1_4 ) + else if( ( params.Frequency > 868000000 ) && ( params.Frequency <= 868600000 ) ) + { + band = BAND_G1_1; + } + else if( ( params.Frequency >= 868700000 ) && ( params.Frequency <= 869200000 ) ) + { + band = BAND_G1_2; + } + else if( ( params.Frequency >= 869400000 ) && ( params.Frequency <= 869650000 ) ) + { + band = BAND_G1_3; + } + else if( ( params.Frequency >= 869700000 ) && ( params.Frequency <= 870000000 ) ) { - Channels[id].Band = BAND_G1_4; + band = BAND_G1_4; } + else + { + frequencyInvalid = true; + } +#endif } else { - Channels[id].Frequency = 0; - Channels[id].DrRange.Value = 0; + frequencyInvalid = true; } -#else - #error "Please define a frequency band in the compiler options." -#endif - // Check if it is a valid channel - if( Channels[id].Frequency > 0 ) + + if( ( datarateInvalid == true ) && ( frequencyInvalid == true ) ) { - // Activate the newly created channel - if( id < 16 ) - { - ChannelsMask[0] |= 1 << id; - } + return LORAMAC_STATUS_FREQ_AND_DR_INVALID; + } + if( datarateInvalid == true ) + { + return LORAMAC_STATUS_DATARATE_INVALID; + } + if( frequencyInvalid == true ) + { + return LORAMAC_STATUS_FREQUENCY_INVALID; } + // Every parameter is valid, activate the channel + Channels[id] = params; + Channels[id].Band = band; + ChannelsMask[0] |= ( 1 << id ); + return LORAMAC_STATUS_OK; #endif } LoRaMacStatus_t LoRaMacChannelRemove( uint8_t id ) { +#if defined( USE_BAND_433 ) || defined( USE_BAND_780 ) || defined( USE_BAND_868 ) if( ( LoRaMacState & MAC_TX_RUNNING ) == MAC_TX_RUNNING ) { - return LORAMAC_STATUS_BUSY; - } -#if ( defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) ) - if( id < 64 ) - { - if( CountNbEnabled125kHzChannels( ChannelsMask ) <= 6 ) + if( ( LoRaMacState & MAC_TX_CONFIG ) != MAC_TX_CONFIG ) { - return LORAMAC_STATUS_PARAMETER_INVALID; + return LORAMAC_STATUS_BUSY; } } -#else + if( id < 3 ) { return LORAMAC_STATUS_PARAMETER_INVALID; } -#endif - - if( DisableChannelInMask( id, ChannelsMask ) == false ) + else { - return LORAMAC_STATUS_PARAMETER_INVALID; + // Remove the channel from the list of channels + Channels[id] = ( ChannelParams_t ){ 0, { 0 }, 0 }; + + // Disable the channel as it doesn't exist anymore + if( DisableChannelInMask( id, ChannelsMask ) == false ) + { + return LORAMAC_STATUS_PARAMETER_INVALID; + } } - return LORAMAC_STATUS_OK; +#elif ( defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) ) + return LORAMAC_STATUS_PARAMETER_INVALID; +#endif } LoRaMacStatus_t LoRaMacMulticastChannelLink( MulticastParams_t *channelParam ) @@ -3283,6 +3386,14 @@ LoRaMacStatus_t LoRaMacMlmeRequest( MlmeReq_t *mlmeRequest ) IsLoRaMacNetworkJoined = false; #if defined( USE_BAND_915 ) || defined( USE_BAND_915_HYBRID ) +#if defined( USE_BAND_915 ) + // Re-enable 500 kHz default channels + ChannelsMask[4] = 0x00FF; +#else // defined( USE_BAND_915_HYBRID ) + // Re-enable 500 kHz default channels + ChannelsMask[4] = 0x0001; +#endif + static uint8_t drSwitch = 0; if( ( ++drSwitch & 0x01 ) == 0x01 ) @@ -3362,7 +3473,7 @@ LoRaMacStatus_t LoRaMacMcpsRequest( McpsReq_t *mcpsRequest ) { readyToSend = true; AckTimeoutRetriesCounter = 1; - AckTimeoutRetries = mcpsRequest->Req.Confirmed.nbRetries; + AckTimeoutRetries = mcpsRequest->Req.Confirmed.NbTrials; macHdr.Bits.MType = FRAME_TYPE_DATA_CONFIRMED_UP; fPort = mcpsRequest->Req.Confirmed.fPort; diff --git a/src/mac/LoRaMac.h b/src/mac/LoRaMac.h index 82ba8f9c3..312d5ebc0 100644 --- a/src/mac/LoRaMac.h +++ b/src/mac/LoRaMac.h @@ -674,10 +674,26 @@ typedef struct sMcpsReqConfirmed */ int8_t Datarate; /*! - * Number of attempts to transmit the frame, if frame could not be send, or - * if the LoRaMAC layer did not receive an acknowledgment - */ - uint8_t nbRetries; + * Number of trials to transmit the frame, if the LoRaMAC layer did not + * receive an acknowledgment. The MAC performs a datarate adaptation, + * according to the LoRaWAN Specification V1.0, chapter 18.4, according + * to the following table: + * + * Transmission nb | Data Rate + * ----------------|----------- + * 1 (first) | DR + * 2 | DR + * 3 | max(DR-1,0) + * 4 | max(DR-1,0) + * 5 | max(DR-2,0) + * 6 | max(DR-2,0) + * 7 | max(DR-3,0) + * 8 | max(DR-3,0) + * + * Note, that if NbTrials is set to 1 or 2, the MAC will not decrease + * the datarate, in case the LoRaMAC layer did not receive an acknowledgment + */ + uint8_t NbTrials; }McpsReqConfirmed_t; /*! @@ -958,6 +974,7 @@ typedef struct sMlmeConfirm * \ref MIB_NWK_SKEY | YES | YES * \ref MIB_APP_SKEY | YES | YES * \ref MIB_PUBLIC_NETWORK | YES | YES + * \ref MIB_REPEATER_SUPPORT | YES | YES * \ref MIB_CHANNELS | YES | NO * \ref MIB_RX2_CHANNEL | YES | YES * \ref MIB_CHANNELS_MASK | YES | YES @@ -1340,6 +1357,18 @@ typedef enum eLoRaMacStatus * Service not started - invalid parameter */ LORAMAC_STATUS_PARAMETER_INVALID, + /*! + * Service not started - invalid frequency + */ + LORAMAC_STATUS_FREQUENCY_INVALID, + /*! + * Service not started - invalid datarate + */ + LORAMAC_STATUS_DATARATE_INVALID, + /*! + * Service not started - invalid frequency and datarate + */ + LORAMAC_STATUS_FREQ_AND_DR_INVALID, /*! * Service not started - the device is not in a LoRaWAN */ diff --git a/src/radio/sx1272/sx1272.c b/src/radio/sx1272/sx1272.c index 50a730b76..6f78b0fb6 100644 --- a/src/radio/sx1272/sx1272.c +++ b/src/radio/sx1272/sx1272.c @@ -178,7 +178,7 @@ static RadioEvents_t *RadioEvents; /*! * Reception buffer */ -static uint8_t RxBuffer[RX_BUFFER_SIZE]; +static uint8_t RxTxBuffer[RX_BUFFER_SIZE]; /* * Public global variables @@ -367,6 +367,10 @@ void SX1272SetRxConfig( RadioModems_t modem, uint32_t bandwidth, { SX1272Write( REG_PAYLOADLENGTH, payloadLen ); } + else + { + SX1272Write( REG_PAYLOADLENGTH, 0xFF ); // Set payload length to the maximum + } SX1272Write( REG_PACKETCONFIG1, ( SX1272Read( REG_PACKETCONFIG1 ) & @@ -730,6 +734,7 @@ void SX1272Send( uint8_t *buffer, uint8_t size ) } else { + memcpy1( RxTxBuffer, buffer, size ); SX1272.Settings.FskPacketHandler.ChunkSize = 32; } @@ -812,8 +817,10 @@ void SX1272SetRx( uint32_t timeout ) // DIO4=Preamble // DIO5=ModeReady SX1272Write( REG_DIOMAPPING1, ( SX1272Read( REG_DIOMAPPING1 ) & RF_DIOMAPPING1_DIO0_MASK & + RF_DIOMAPPING1_DIO1_MASK & RF_DIOMAPPING1_DIO2_MASK ) | RF_DIOMAPPING1_DIO0_00 | + RF_DIOMAPPING1_DIO1_00 | RF_DIOMAPPING1_DIO2_11 ); SX1272Write( REG_DIOMAPPING2, ( SX1272Read( REG_DIOMAPPING2 ) & RF_DIOMAPPING2_DIO4_MASK & @@ -878,7 +885,7 @@ void SX1272SetRx( uint32_t timeout ) break; } - memset( RxBuffer, 0, ( size_t )RX_BUFFER_SIZE ); + memset( RxTxBuffer, 0, ( size_t )RX_BUFFER_SIZE ); SX1272.Settings.State = RF_RX_RUNNING; if( timeout != 0 ) @@ -923,13 +930,15 @@ void SX1272SetTx( uint32_t timeout ) case MODEM_FSK: { // DIO0=PacketSent - // DIO1=FifoLevel + // DIO1=FifoEmpty // DIO2=FifoFull // DIO3=FifoEmpty // DIO4=LowBat // DIO5=ModeReady SX1272Write( REG_DIOMAPPING1, ( SX1272Read( REG_DIOMAPPING1 ) & RF_DIOMAPPING1_DIO0_MASK & - RF_DIOMAPPING1_DIO2_MASK ) ); + RF_DIOMAPPING1_DIO1_MASK & + RF_DIOMAPPING1_DIO2_MASK ) | + RF_DIOMAPPING1_DIO1_01 ); SX1272Write( REG_DIOMAPPING2, ( SX1272Read( REG_DIOMAPPING2 ) & RF_DIOMAPPING2_DIO4_MASK & RF_DIOMAPPING2_MAP_MASK ) ); @@ -1280,12 +1289,12 @@ void SX1272OnDio0Irq( void ) { SX1272.Settings.FskPacketHandler.Size = SX1272Read( REG_PAYLOADLENGTH ); } - SX1272ReadFifo( RxBuffer + SX1272.Settings.FskPacketHandler.NbBytes, SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ); + SX1272ReadFifo( RxTxBuffer + SX1272.Settings.FskPacketHandler.NbBytes, SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ); SX1272.Settings.FskPacketHandler.NbBytes += ( SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ); } else { - SX1272ReadFifo( RxBuffer + SX1272.Settings.FskPacketHandler.NbBytes, SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ); + SX1272ReadFifo( RxTxBuffer + SX1272.Settings.FskPacketHandler.NbBytes, SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ); SX1272.Settings.FskPacketHandler.NbBytes += ( SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ); } @@ -1303,7 +1312,7 @@ void SX1272OnDio0Irq( void ) if( ( RadioEvents != NULL ) && ( RadioEvents->RxDone != NULL ) ) { - RadioEvents->RxDone( RxBuffer, SX1272.Settings.FskPacketHandler.Size, SX1272.Settings.FskPacketHandler.RssiValue, 0 ); + RadioEvents->RxDone( RxTxBuffer, SX1272.Settings.FskPacketHandler.Size, SX1272.Settings.FskPacketHandler.RssiValue, 0 ); } SX1272.Settings.FskPacketHandler.PreambleDetected = false; SX1272.Settings.FskPacketHandler.SyncWordDetected = false; @@ -1361,7 +1370,7 @@ void SX1272OnDio0Irq( void ) } SX1272.Settings.LoRaPacketHandler.Size = SX1272Read( REG_LR_RXNBBYTES ); - SX1272ReadFifo( RxBuffer, SX1272.Settings.LoRaPacketHandler.Size ); + SX1272ReadFifo( RxTxBuffer, SX1272.Settings.LoRaPacketHandler.Size ); if( SX1272.Settings.LoRa.RxContinuous == false ) { @@ -1371,7 +1380,7 @@ void SX1272OnDio0Irq( void ) if( ( RadioEvents != NULL ) && ( RadioEvents->RxDone != NULL ) ) { - RadioEvents->RxDone( RxBuffer, SX1272.Settings.LoRaPacketHandler.Size, SX1272.Settings.LoRaPacketHandler.RssiValue, SX1272.Settings.LoRaPacketHandler.SnrValue ); + RadioEvents->RxDone( RxTxBuffer, SX1272.Settings.LoRaPacketHandler.Size, SX1272.Settings.LoRaPacketHandler.RssiValue, SX1272.Settings.LoRaPacketHandler.SnrValue ); } } break; @@ -1427,12 +1436,12 @@ void SX1272OnDio1Irq( void ) if( ( SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ) > SX1272.Settings.FskPacketHandler.FifoThresh ) { - SX1272ReadFifo( ( RxBuffer + SX1272.Settings.FskPacketHandler.NbBytes ), SX1272.Settings.FskPacketHandler.FifoThresh ); + SX1272ReadFifo( ( RxTxBuffer + SX1272.Settings.FskPacketHandler.NbBytes ), SX1272.Settings.FskPacketHandler.FifoThresh ); SX1272.Settings.FskPacketHandler.NbBytes += SX1272.Settings.FskPacketHandler.FifoThresh; } else { - SX1272ReadFifo( ( RxBuffer + SX1272.Settings.FskPacketHandler.NbBytes ), SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ); + SX1272ReadFifo( ( RxTxBuffer + SX1272.Settings.FskPacketHandler.NbBytes ), SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ); SX1272.Settings.FskPacketHandler.NbBytes += ( SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ); } break; @@ -1453,16 +1462,16 @@ void SX1272OnDio1Irq( void ) switch( SX1272.Settings.Modem ) { case MODEM_FSK: - // FifoLevel interrupt + // FifoEmpty interrupt if( ( SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ) > SX1272.Settings.FskPacketHandler.ChunkSize ) { - SX1272WriteFifo( ( RxBuffer + SX1272.Settings.FskPacketHandler.NbBytes ), SX1272.Settings.FskPacketHandler.ChunkSize ); + SX1272WriteFifo( ( RxTxBuffer + SX1272.Settings.FskPacketHandler.NbBytes ), SX1272.Settings.FskPacketHandler.ChunkSize ); SX1272.Settings.FskPacketHandler.NbBytes += SX1272.Settings.FskPacketHandler.ChunkSize; } else { // Write the last chunk of data - SX1272WriteFifo( RxBuffer + SX1272.Settings.FskPacketHandler.NbBytes, SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ); + SX1272WriteFifo( RxTxBuffer + SX1272.Settings.FskPacketHandler.NbBytes, SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes ); SX1272.Settings.FskPacketHandler.NbBytes += SX1272.Settings.FskPacketHandler.Size - SX1272.Settings.FskPacketHandler.NbBytes; } break; diff --git a/src/radio/sx1276/sx1276.c b/src/radio/sx1276/sx1276.c index ac3544bfa..c87879529 100644 --- a/src/radio/sx1276/sx1276.c +++ b/src/radio/sx1276/sx1276.c @@ -185,7 +185,7 @@ static RadioEvents_t *RadioEvents; /*! * Reception buffer */ -static uint8_t RxBuffer[RX_BUFFER_SIZE]; +static uint8_t RxTxBuffer[RX_BUFFER_SIZE]; /* * Public global variables @@ -415,6 +415,10 @@ void SX1276SetRxConfig( RadioModems_t modem, uint32_t bandwidth, { SX1276Write( REG_PAYLOADLENGTH, payloadLen ); } + else + { + SX1276Write( REG_PAYLOADLENGTH, 0xFF ); // Set payload length to the maximum + } SX1276Write( REG_PACKETCONFIG1, ( SX1276Read( REG_PACKETCONFIG1 ) & @@ -918,8 +922,10 @@ void SX1276SetRx( uint32_t timeout ) // DIO4=Preamble // DIO5=ModeReady SX1276Write( REG_DIOMAPPING1, ( SX1276Read( REG_DIOMAPPING1 ) & RF_DIOMAPPING1_DIO0_MASK & + RF_DIOMAPPING1_DIO1_MASK & RF_DIOMAPPING1_DIO2_MASK ) | RF_DIOMAPPING1_DIO0_00 | + RF_DIOMAPPING1_DIO1_00 | RF_DIOMAPPING1_DIO2_11 ); SX1276Write( REG_DIOMAPPING2, ( SX1276Read( REG_DIOMAPPING2 ) & RF_DIOMAPPING2_DIO4_MASK & @@ -1031,7 +1037,7 @@ void SX1276SetRx( uint32_t timeout ) break; } - memset( RxBuffer, 0, ( size_t )RX_BUFFER_SIZE ); + memset( RxTxBuffer, 0, ( size_t )RX_BUFFER_SIZE ); SX1276.Settings.State = RF_RX_RUNNING; if( timeout != 0 ) @@ -1076,13 +1082,15 @@ void SX1276SetTx( uint32_t timeout ) case MODEM_FSK: { // DIO0=PacketSent - // DIO1=FifoLevel + // DIO1=FifoEmpty // DIO2=FifoFull // DIO3=FifoEmpty // DIO4=LowBat // DIO5=ModeReady SX1276Write( REG_DIOMAPPING1, ( SX1276Read( REG_DIOMAPPING1 ) & RF_DIOMAPPING1_DIO0_MASK & - RF_DIOMAPPING1_DIO2_MASK ) ); + RF_DIOMAPPING1_DIO1_MASK & + RF_DIOMAPPING1_DIO2_MASK ) | + RF_DIOMAPPING1_DIO1_01 ); SX1276Write( REG_DIOMAPPING2, ( SX1276Read( REG_DIOMAPPING2 ) & RF_DIOMAPPING2_DIO4_MASK & RF_DIOMAPPING2_MAP_MASK ) ); @@ -1440,12 +1448,12 @@ void SX1276OnDio0Irq( void ) { SX1276.Settings.FskPacketHandler.Size = SX1276Read( REG_PAYLOADLENGTH ); } - SX1276ReadFifo( RxBuffer + SX1276.Settings.FskPacketHandler.NbBytes, SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ); + SX1276ReadFifo( RxTxBuffer + SX1276.Settings.FskPacketHandler.NbBytes, SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ); SX1276.Settings.FskPacketHandler.NbBytes += ( SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ); } else { - SX1276ReadFifo( RxBuffer + SX1276.Settings.FskPacketHandler.NbBytes, SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ); + SX1276ReadFifo( RxTxBuffer + SX1276.Settings.FskPacketHandler.NbBytes, SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ); SX1276.Settings.FskPacketHandler.NbBytes += ( SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ); } @@ -1463,7 +1471,7 @@ void SX1276OnDio0Irq( void ) if( ( RadioEvents != NULL ) && ( RadioEvents->RxDone != NULL ) ) { - RadioEvents->RxDone( RxBuffer, SX1276.Settings.FskPacketHandler.Size, SX1276.Settings.FskPacketHandler.RssiValue, 0 ); + RadioEvents->RxDone( RxTxBuffer, SX1276.Settings.FskPacketHandler.Size, SX1276.Settings.FskPacketHandler.RssiValue, 0 ); } SX1276.Settings.FskPacketHandler.PreambleDetected = false; SX1276.Settings.FskPacketHandler.SyncWordDetected = false; @@ -1536,7 +1544,7 @@ void SX1276OnDio0Irq( void ) } SX1276.Settings.LoRaPacketHandler.Size = SX1276Read( REG_LR_RXNBBYTES ); - SX1276ReadFifo( RxBuffer, SX1276.Settings.LoRaPacketHandler.Size ); + SX1276ReadFifo( RxTxBuffer, SX1276.Settings.LoRaPacketHandler.Size ); if( SX1276.Settings.LoRa.RxContinuous == false ) { @@ -1546,7 +1554,7 @@ void SX1276OnDio0Irq( void ) if( ( RadioEvents != NULL ) && ( RadioEvents->RxDone != NULL ) ) { - RadioEvents->RxDone( RxBuffer, SX1276.Settings.LoRaPacketHandler.Size, SX1276.Settings.LoRaPacketHandler.RssiValue, SX1276.Settings.LoRaPacketHandler.SnrValue ); + RadioEvents->RxDone( RxTxBuffer, SX1276.Settings.LoRaPacketHandler.Size, SX1276.Settings.LoRaPacketHandler.RssiValue, SX1276.Settings.LoRaPacketHandler.SnrValue ); } } break; @@ -1602,12 +1610,12 @@ void SX1276OnDio1Irq( void ) if( ( SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ) > SX1276.Settings.FskPacketHandler.FifoThresh ) { - SX1276ReadFifo( ( RxBuffer + SX1276.Settings.FskPacketHandler.NbBytes ), SX1276.Settings.FskPacketHandler.FifoThresh ); + SX1276ReadFifo( ( RxTxBuffer + SX1276.Settings.FskPacketHandler.NbBytes ), SX1276.Settings.FskPacketHandler.FifoThresh ); SX1276.Settings.FskPacketHandler.NbBytes += SX1276.Settings.FskPacketHandler.FifoThresh; } else { - SX1276ReadFifo( ( RxBuffer + SX1276.Settings.FskPacketHandler.NbBytes ), SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ); + SX1276ReadFifo( ( RxTxBuffer + SX1276.Settings.FskPacketHandler.NbBytes ), SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ); SX1276.Settings.FskPacketHandler.NbBytes += ( SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ); } break; @@ -1628,16 +1636,16 @@ void SX1276OnDio1Irq( void ) switch( SX1276.Settings.Modem ) { case MODEM_FSK: - // FifoLevel interrupt + // FifoEmpty interrupt if( ( SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ) > SX1276.Settings.FskPacketHandler.ChunkSize ) { - SX1276WriteFifo( ( RxBuffer + SX1276.Settings.FskPacketHandler.NbBytes ), SX1276.Settings.FskPacketHandler.ChunkSize ); + SX1276WriteFifo( ( RxTxBuffer + SX1276.Settings.FskPacketHandler.NbBytes ), SX1276.Settings.FskPacketHandler.ChunkSize ); SX1276.Settings.FskPacketHandler.NbBytes += SX1276.Settings.FskPacketHandler.ChunkSize; } else { // Write the last chunk of data - SX1276WriteFifo( RxBuffer + SX1276.Settings.FskPacketHandler.NbBytes, SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ); + SX1276WriteFifo( RxTxBuffer + SX1276.Settings.FskPacketHandler.NbBytes, SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes ); SX1276.Settings.FskPacketHandler.NbBytes += SX1276.Settings.FskPacketHandler.Size - SX1276.Settings.FskPacketHandler.NbBytes; } break; diff --git a/src/system/timer.c b/src/system/timer.c index 83ef8fe45..984008409 100644 --- a/src/system/timer.c +++ b/src/system/timer.c @@ -223,8 +223,6 @@ void TimerIrqHandler( void ) elapsedTime = TimerGetValue( ); - TimerEvent_t* elapsedTimer = NULL; - if( elapsedTime > TimerListHead->Timestamp ) { TimerListHead->Timestamp = 0; @@ -233,32 +231,16 @@ void TimerIrqHandler( void ) { TimerListHead->Timestamp -= elapsedTime; } - - // save TimerListHead - elapsedTimer = TimerListHead; - // remove all the expired object from the list while( ( TimerListHead != NULL ) && ( TimerListHead->Timestamp == 0 ) ) - { - if( TimerListHead->Next != NULL ) - { - TimerListHead = TimerListHead->Next; - } - else - { - TimerListHead = NULL; - } - } - - // execute the callbacks of all the expired objects - // this is to avoid potential issues between the callback and the object list - while( ( elapsedTimer != NULL ) && ( elapsedTimer->Timestamp == 0 ) ) { + TimerEvent_t* elapsedTimer = TimerListHead; + TimerListHead = TimerListHead->Next; + if( elapsedTimer->Callback != NULL ) { elapsedTimer->Callback( ); } - elapsedTimer = elapsedTimer->Next; } // start the next TimerListHead if it exists