Skip to content

Commit 6cc7c02

Browse files
authored
Merge pull request #2749 from whj4674672/master
[bsp][stm32h743-atk-apollo]add rtc
2 parents d576c93 + 0ef1823 commit 6cc7c02

File tree

9 files changed

+371
-189
lines changed

9 files changed

+371
-189
lines changed

bsp/stm32/libraries/HAL_Drivers/drv_rtc.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,9 @@ static rt_err_t set_rtc_time_stamp(time_t time_stamp)
8484

8585
static void rt_rtc_init(void)
8686
{
87+
#ifndef SOC_SERIES_STM32H7
8788
__HAL_RCC_PWR_CLK_ENABLE();
89+
#endif
8890

8991
RCC_OscInitTypeDef RCC_OscInitStruct = {0};
9092
#ifdef BSP_RTC_USING_LSI
@@ -137,7 +139,7 @@ static rt_err_t rt_rtc_config(struct rt_device *dev)
137139
RTC_Handler.Init.OutPut = RTC_OUTPUT_DISABLE;
138140
RTC_Handler.Init.OutPutPolarity = RTC_OUTPUT_POLARITY_HIGH;
139141
RTC_Handler.Init.OutPutType = RTC_OUTPUT_TYPE_OPENDRAIN;
140-
#elif defined(SOC_SERIES_STM32F4) || defined(SOC_SERIES_STM32F7) || defined(SOC_SERIES_STM32L4)
142+
#elif defined(SOC_SERIES_STM32F4) || defined(SOC_SERIES_STM32F7) || defined(SOC_SERIES_STM32L4) || defined(SOC_SERIES_STM32H7)
141143

142144
/* set the frequency division */
143145
#ifdef BSP_RTC_USING_LSI

bsp/stm32/stm32h743-atk-apollo/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@
5454
| SPI | 暂不支持 | |
5555
| I2C | 暂不支持 | |
5656
| SDIO | 暂不支持 | |
57-
| RTC | 暂不支持 | |
57+
| RTC | 支持 | |
5858
| PWM | 暂不支持 | |
5959
| USB Device | 暂不支持 | |
6060
| USB Host | 暂不支持 | |

bsp/stm32/stm32h743-atk-apollo/board/CubeMX_Config/.mxproject

Lines changed: 3 additions & 2 deletions
Large diffs are not rendered by default.

bsp/stm32/stm32h743-atk-apollo/board/CubeMX_Config/CubeMX_Config.ioc

Lines changed: 105 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
#MicroXplorer Configuration settings - do not modify
2+
CORTEX_M7.CPU_DCache=Enabled
3+
CORTEX_M7.CPU_ICache=Enabled
4+
CORTEX_M7.IPParameters=CPU_ICache,CPU_DCache
25
DMA2D.ColorMode=DMA2D_OUTPUT_RGB565
36
DMA2D.IPParameters=Mode,ColorMode
47
DMA2D.Mode=DMA2D_R2M
@@ -19,87 +22,95 @@ File.Version=6
1922
KeepUserPlacement=false
2023
Mcu.Family=STM32H7
2124
Mcu.IP0=CORTEX_M7
22-
Mcu.IP1=DMA2D
23-
Mcu.IP2=FMC
24-
Mcu.IP3=LTDC
25-
Mcu.IP4=NVIC
26-
Mcu.IP5=RCC
27-
Mcu.IP6=SYS
28-
Mcu.IP7=USART1
29-
Mcu.IPNb=8
25+
Mcu.IP1=DEBUG
26+
Mcu.IP2=DMA2D
27+
Mcu.IP3=FMC
28+
Mcu.IP4=LTDC
29+
Mcu.IP5=NVIC
30+
Mcu.IP6=RCC
31+
Mcu.IP7=RTC
32+
Mcu.IP8=SYS
33+
Mcu.IP9=USART1
34+
Mcu.IPNb=10
3035
Mcu.Name=STM32H743IITx
3136
Mcu.Package=LQFP176
32-
Mcu.Pin0=PI9
33-
Mcu.Pin1=PI10
34-
Mcu.Pin10=PH1-OSC_OUT (PH1)
35-
Mcu.Pin11=PC0
36-
Mcu.Pin12=PC2_C
37-
Mcu.Pin13=PC3_C
38-
Mcu.Pin14=PF11
39-
Mcu.Pin15=PF12
40-
Mcu.Pin16=PF13
41-
Mcu.Pin17=PF14
42-
Mcu.Pin18=PF15
43-
Mcu.Pin19=PG0
44-
Mcu.Pin2=PF0
45-
Mcu.Pin20=PG1
46-
Mcu.Pin21=PE7
47-
Mcu.Pin22=PE8
48-
Mcu.Pin23=PE9
49-
Mcu.Pin24=PE10
50-
Mcu.Pin25=PE11
51-
Mcu.Pin26=PE12
52-
Mcu.Pin27=PE13
53-
Mcu.Pin28=PE14
54-
Mcu.Pin29=PE15
55-
Mcu.Pin3=PF1
56-
Mcu.Pin30=PH9
57-
Mcu.Pin31=PH10
58-
Mcu.Pin32=PH11
59-
Mcu.Pin33=PH12
60-
Mcu.Pin34=PD8
61-
Mcu.Pin35=PD9
62-
Mcu.Pin36=PD10
63-
Mcu.Pin37=PD14
64-
Mcu.Pin38=PD15
65-
Mcu.Pin39=PG2
66-
Mcu.Pin4=PF2
67-
Mcu.Pin40=PG4
68-
Mcu.Pin41=PG5
69-
Mcu.Pin42=PG6
70-
Mcu.Pin43=PG7
71-
Mcu.Pin44=PG8
72-
Mcu.Pin45=PA9
73-
Mcu.Pin46=PA10
74-
Mcu.Pin47=PH13
75-
Mcu.Pin48=PH14
76-
Mcu.Pin49=PH15
77-
Mcu.Pin5=PF3
78-
Mcu.Pin50=PI0
79-
Mcu.Pin51=PI1
80-
Mcu.Pin52=PI2
81-
Mcu.Pin53=PD0
82-
Mcu.Pin54=PD1
83-
Mcu.Pin55=PG11
84-
Mcu.Pin56=PG15
85-
Mcu.Pin57=PE0
86-
Mcu.Pin58=PE1
87-
Mcu.Pin59=PI4
88-
Mcu.Pin6=PF4
89-
Mcu.Pin60=PI5
90-
Mcu.Pin61=PI6
91-
Mcu.Pin62=PI7
92-
Mcu.Pin63=VP_DMA2D_VS_DMA2D
93-
Mcu.Pin64=VP_SYS_VS_Systick
94-
Mcu.Pin7=PF5
95-
Mcu.Pin8=PF10
96-
Mcu.Pin9=PH0-OSC_IN (PH0)
97-
Mcu.PinsNb=65
37+
Mcu.Pin0=PC13
38+
Mcu.Pin1=PC14-OSC32_IN (OSC32_IN)
39+
Mcu.Pin10=PF5
40+
Mcu.Pin11=PF10
41+
Mcu.Pin12=PH0-OSC_IN (PH0)
42+
Mcu.Pin13=PH1-OSC_OUT (PH1)
43+
Mcu.Pin14=PC0
44+
Mcu.Pin15=PC2_C
45+
Mcu.Pin16=PC3_C
46+
Mcu.Pin17=PF11
47+
Mcu.Pin18=PF12
48+
Mcu.Pin19=PF13
49+
Mcu.Pin2=PC15-OSC32_OUT (OSC32_OUT)
50+
Mcu.Pin20=PF14
51+
Mcu.Pin21=PF15
52+
Mcu.Pin22=PG0
53+
Mcu.Pin23=PG1
54+
Mcu.Pin24=PE7
55+
Mcu.Pin25=PE8
56+
Mcu.Pin26=PE9
57+
Mcu.Pin27=PE10
58+
Mcu.Pin28=PE11
59+
Mcu.Pin29=PE12
60+
Mcu.Pin3=PI9
61+
Mcu.Pin30=PE13
62+
Mcu.Pin31=PE14
63+
Mcu.Pin32=PE15
64+
Mcu.Pin33=PH9
65+
Mcu.Pin34=PH10
66+
Mcu.Pin35=PH11
67+
Mcu.Pin36=PH12
68+
Mcu.Pin37=PD8
69+
Mcu.Pin38=PD9
70+
Mcu.Pin39=PD10
71+
Mcu.Pin4=PI10
72+
Mcu.Pin40=PD14
73+
Mcu.Pin41=PD15
74+
Mcu.Pin42=PG2
75+
Mcu.Pin43=PG4
76+
Mcu.Pin44=PG5
77+
Mcu.Pin45=PG6
78+
Mcu.Pin46=PG7
79+
Mcu.Pin47=PG8
80+
Mcu.Pin48=PA9
81+
Mcu.Pin49=PA10
82+
Mcu.Pin5=PF0
83+
Mcu.Pin50=PA13 (JTMS/SWDIO)
84+
Mcu.Pin51=PH13
85+
Mcu.Pin52=PH14
86+
Mcu.Pin53=PH15
87+
Mcu.Pin54=PI0
88+
Mcu.Pin55=PI1
89+
Mcu.Pin56=PI2
90+
Mcu.Pin57=PA14 (JTCK/SWCLK)
91+
Mcu.Pin58=PD0
92+
Mcu.Pin59=PD1
93+
Mcu.Pin6=PF1
94+
Mcu.Pin60=PG11
95+
Mcu.Pin61=PG15
96+
Mcu.Pin62=PE0
97+
Mcu.Pin63=PE1
98+
Mcu.Pin64=PI4
99+
Mcu.Pin65=PI5
100+
Mcu.Pin66=PI6
101+
Mcu.Pin67=PI7
102+
Mcu.Pin68=VP_DMA2D_VS_DMA2D
103+
Mcu.Pin69=VP_RTC_VS_RTC_Activate
104+
Mcu.Pin7=PF2
105+
Mcu.Pin70=VP_SYS_VS_Systick
106+
Mcu.Pin8=PF3
107+
Mcu.Pin9=PF4
108+
Mcu.PinsNb=71
98109
Mcu.ThirdPartyNb=0
99110
Mcu.UserConstants=
100111
Mcu.UserName=STM32H743IITx
101-
MxCube.Version=5.2.0
102-
MxDb.Version=DB.5.0.20
112+
MxCube.Version=5.2.1
113+
MxDb.Version=DB.5.0.21
103114
NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false
104115
NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:false
105116
NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false
@@ -114,10 +125,20 @@ NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false
114125
PA10.Locked=true
115126
PA10.Mode=Asynchronous
116127
PA10.Signal=USART1_RX
128+
PA13\ (JTMS/SWDIO).Mode=Serial_Wire
129+
PA13\ (JTMS/SWDIO).Signal=DEBUG_JTMS-SWDIO
130+
PA14\ (JTCK/SWCLK).Mode=Serial_Wire
131+
PA14\ (JTCK/SWCLK).Signal=DEBUG_JTCK-SWCLK
117132
PA9.Locked=true
118133
PA9.Mode=Asynchronous
119134
PA9.Signal=USART1_TX
120135
PC0.Signal=FMC_SDNWE
136+
PC13.Mode=Calibration_1Hz
137+
PC13.Signal=RTC_OUT_CALIB
138+
PC14-OSC32_IN\ (OSC32_IN).Mode=LSE-External-Oscillator
139+
PC14-OSC32_IN\ (OSC32_IN).Signal=RCC_OSC32_IN
140+
PC15-OSC32_OUT\ (OSC32_OUT).Mode=LSE-External-Oscillator
141+
PC15-OSC32_OUT\ (OSC32_OUT).Signal=RCC_OSC32_OUT
121142
PC2_C.Mode=SdramChipSelect1_1
122143
PC2_C.Signal=FMC_SDNE0
123144
PC3_C.Mode=SdramChipSelect1_1
@@ -232,7 +253,7 @@ ProjectManager.CompilerOptimize=6
232253
ProjectManager.ComputerToolchain=false
233254
ProjectManager.CoupleFile=false
234255
ProjectManager.CustomerFirmwarePackage=
235-
ProjectManager.DefaultFWLocation=true
256+
ProjectManager.DefaultFWLocation=false
236257
ProjectManager.DeletePrevious=true
237258
ProjectManager.DeviceId=STM32H743IITx
238259
ProjectManager.FirmwarePackage=STM32Cube FW_H7 V1.4.0
@@ -252,7 +273,7 @@ ProjectManager.StackSize=0x400
252273
ProjectManager.TargetToolchain=MDK-ARM V5
253274
ProjectManager.ToolChainLocation=
254275
ProjectManager.UnderRoot=false
255-
ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_CORTEX_M7_Init-CORTEX_M7-false-HAL-true,4-MX_USART1_UART_Init-USART1-false-HAL-true,5-MX_FMC_Init-FMC-false-HAL-true,6-MX_DMA2D_Init-DMA2D-false-HAL-true,7-MX_LTDC_Init-LTDC-false-HAL-true
276+
ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_CORTEX_M7_Init-CORTEX_M7-false-HAL-true,4-MX_USART1_UART_Init-USART1-false-HAL-true,5-MX_FMC_Init-FMC-false-HAL-true,6-MX_DMA2D_Init-DMA2D-false-HAL-true,7-MX_LTDC_Init-LTDC-false-HAL-true,8-MX_RTC_Init-RTC-false-HAL-true
256277
RCC.ADCFreq_Value=50390625
257278
RCC.AHB12Freq_Value=200000000
258279
RCC.AHB4Freq_Value=200000000
@@ -298,7 +319,7 @@ RCC.HRTIMFreq_Value=200000000
298319
RCC.HSE_VALUE=25000000
299320
RCC.I2C123Freq_Value=100000000
300321
RCC.I2C4Freq_Value=100000000
301-
RCC.IPParameters=ADCFreq_Value,AHB12Freq_Value,AHB4Freq_Value,APB1Freq_Value,APB2Freq_Value,APB3Freq_Value,APB4Freq_Value,AXIClockFreq_Value,CECFreq_Value,CKPERFreq_Value,CPU2Freq_Value,CPU2SystikFreq_Value,CortexFreq_Value,CpuClockFreq_Value,D1CPREFreq_Value,D1PPRE,D2PPRE1,D2PPRE2,D3PPRE,DFSDMACLkFreq_Value,DFSDMFreq_Value,DIVM1,DIVM3,DIVN1,DIVN3,DIVP1Freq_Value,DIVP2Freq_Value,DIVP3Freq_Value,DIVQ1Freq_Value,DIVQ2Freq_Value,DIVQ3Freq_Value,DIVR1Freq_Value,DIVR2Freq_Value,DIVR3,DIVR3Freq_Value,FDCANFreq_Value,FMCFreq_Value,FamilyName,HCLK3ClockFreq_Value,HCLKFreq_Value,HPRE,HRTIMFreq_Value,HSE_VALUE,I2C123Freq_Value,I2C4Freq_Value,LPTIM1Freq_Value,LPTIM2Freq_Value,LPTIM345Freq_Value,LPUART1Freq_Value,LTDCFreq_Value,MCO1PinFreq_Value,MCO2PinFreq_Value,PLLSourceVirtual,PWR_Regulator_Voltage_Scale,QSPIFreq_Value,RNGFreq_Value,RTCFreq_Value,SAI1Freq_Value,SAI23Freq_Value,SAI4AFreq_Value,SAI4BFreq_Value,SDMMCFreq_Value,SPDIFRXFreq_Value,SPI123Freq_Value,SPI45Freq_Value,SPI6Freq_Value,SWPMI1Freq_Value,SYSCLKFreq_VALUE,SYSCLKSource,Tim1OutputFreq_Value,Tim2OutputFreq_Value,TraceFreq_Value,USART16Freq_Value,USART234578Freq_Value,USBFreq_Value,VCO1OutputFreq_Value,VCO2OutputFreq_Value,VCO3OutputFreq_Value,VCOInput1Freq_Value,VCOInput2Freq_Value,VCOInput3Freq_Value
322+
RCC.IPParameters=ADCFreq_Value,AHB12Freq_Value,AHB4Freq_Value,APB1Freq_Value,APB2Freq_Value,APB3Freq_Value,APB4Freq_Value,AXIClockFreq_Value,CECFreq_Value,CKPERFreq_Value,CPU2Freq_Value,CPU2SystikFreq_Value,CortexFreq_Value,CpuClockFreq_Value,D1CPREFreq_Value,D1PPRE,D2PPRE1,D2PPRE2,D3PPRE,DFSDMACLkFreq_Value,DFSDMFreq_Value,DIVM1,DIVM3,DIVN1,DIVN3,DIVP1Freq_Value,DIVP2Freq_Value,DIVP3Freq_Value,DIVQ1Freq_Value,DIVQ2Freq_Value,DIVQ3Freq_Value,DIVR1Freq_Value,DIVR2Freq_Value,DIVR3,DIVR3Freq_Value,FDCANFreq_Value,FMCFreq_Value,FamilyName,HCLK3ClockFreq_Value,HCLKFreq_Value,HPRE,HRTIMFreq_Value,HSE_VALUE,I2C123Freq_Value,I2C4Freq_Value,LPTIM1Freq_Value,LPTIM2Freq_Value,LPTIM345Freq_Value,LPUART1Freq_Value,LTDCFreq_Value,MCO1PinFreq_Value,MCO2PinFreq_Value,PLLSourceVirtual,PWR_Regulator_Voltage_Scale,QSPIFreq_Value,RNGFreq_Value,RTCClockSelection,RTCFreq_Value,SAI1Freq_Value,SAI23Freq_Value,SAI4AFreq_Value,SAI4BFreq_Value,SDMMCFreq_Value,SPDIFRXFreq_Value,SPI123Freq_Value,SPI45Freq_Value,SPI6Freq_Value,SWPMI1Freq_Value,SYSCLKFreq_VALUE,SYSCLKSource,Tim1OutputFreq_Value,Tim2OutputFreq_Value,TraceFreq_Value,USART16Freq_Value,USART234578Freq_Value,USBFreq_Value,VCO1OutputFreq_Value,VCO2OutputFreq_Value,VCO3OutputFreq_Value,VCOInput1Freq_Value,VCOInput2Freq_Value,VCOInput3Freq_Value
302323
RCC.LPTIM1Freq_Value=100000000
303324
RCC.LPTIM2Freq_Value=100000000
304325
RCC.LPTIM345Freq_Value=100000000
@@ -310,7 +331,8 @@ RCC.PLLSourceVirtual=RCC_PLLSOURCE_HSE
310331
RCC.PWR_Regulator_Voltage_Scale=PWR_REGULATOR_VOLTAGE_SCALE1
311332
RCC.QSPIFreq_Value=200000000
312333
RCC.RNGFreq_Value=48000000
313-
RCC.RTCFreq_Value=32000
334+
RCC.RTCClockSelection=RCC_RTCCLKSOURCE_LSE
335+
RCC.RTCFreq_Value=32768
314336
RCC.SAI1Freq_Value=400000000
315337
RCC.SAI23Freq_Value=400000000
316338
RCC.SAI4AFreq_Value=400000000
@@ -325,7 +347,7 @@ RCC.SYSCLKFreq_VALUE=400000000
325347
RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK
326348
RCC.Tim1OutputFreq_Value=200000000
327349
RCC.Tim2OutputFreq_Value=200000000
328-
RCC.TraceFreq_Value=64000000
350+
RCC.TraceFreq_Value=400000000
329351
RCC.USART16Freq_Value=100000000
330352
RCC.USART234578Freq_Value=100000000
331353
RCC.USBFreq_Value=400000000
@@ -413,6 +435,8 @@ USART1.IPParameters=VirtualMode-Asynchronous
413435
USART1.VirtualMode-Asynchronous=VM_ASYNC
414436
VP_DMA2D_VS_DMA2D.Mode=DMA2D_Activate
415437
VP_DMA2D_VS_DMA2D.Signal=DMA2D_VS_DMA2D
438+
VP_RTC_VS_RTC_Activate.Mode=RTC_Enabled
439+
VP_RTC_VS_RTC_Activate.Signal=RTC_VS_RTC_Activate
416440
VP_SYS_VS_Systick.Mode=SysTick
417441
VP_SYS_VS_Systick.Signal=SYS_VS_Systick
418442
board=custom

0 commit comments

Comments
 (0)