Changeset 110 for ctrl/firmware/Main/CubeMX
- Timestamp:
- Mar 13, 2025, 2:08:13 PM (2 months ago)
- Location:
- ctrl/firmware/Main/CubeMX
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
ctrl/firmware/Main/CubeMX/Core/Inc/stm32h7xx_it.h
r108 r110 23 23 24 24 #ifdef __cplusplus 25 25 extern "C" { 26 26 #endif 27 27 -
ctrl/firmware/Main/CubeMX/Core/Src/adc.c
r109 r110 54 54 */ 55 55 hadc2.Instance = ADC2; 56 hadc2.Init.ClockPrescaler = ADC_CLOCK_ASYNC_DIV 2;56 hadc2.Init.ClockPrescaler = ADC_CLOCK_ASYNC_DIV1; 57 57 hadc2.Init.Resolution = ADC_RESOLUTION_16B; 58 58 hadc2.Init.ScanConvMode = ADC_SCAN_ENABLE; … … 68 68 hadc2.Init.LeftBitShift = ADC_LEFTBITSHIFT_NONE; 69 69 hadc2.Init.OversamplingMode = ENABLE; 70 hadc2.Init.Oversampling.Ratio = 64;71 hadc2.Init.Oversampling.RightBitShift = ADC_RIGHTBITSHIFT_ 6;70 hadc2.Init.Oversampling.Ratio = 256; 71 hadc2.Init.Oversampling.RightBitShift = ADC_RIGHTBITSHIFT_8; 72 72 hadc2.Init.Oversampling.TriggeredMode = ADC_TRIGGEREDMODE_SINGLE_TRIGGER; 73 73 hadc2.Init.Oversampling.OversamplingStopReset = ADC_REGOVERSAMPLING_CONTINUED_MODE; … … 81 81 sConfig.Channel = ADC_CHANNEL_3; 82 82 sConfig.Rank = ADC_REGULAR_RANK_1; 83 sConfig.SamplingTime = ADC_SAMPLETIME_ 810CYCLES_5;83 sConfig.SamplingTime = ADC_SAMPLETIME_16CYCLES_5; 84 84 sConfig.SingleDiff = ADC_DIFFERENTIAL_ENDED; 85 85 sConfig.OffsetNumber = ADC_OFFSET_NONE; … … 108 108 109 109 uint32_t offset[2] = { 0U }; 110 const uint32_t max_samples = 16U;110 const uint32_t max_samples = 8192U / ((hadc2.Init.OversamplingMode == ENABLE)? hadc2.Init.Oversampling.Ratio: 1); 111 111 // Starting DMA converstion 112 112 if (HAL_OK != HAL_ADC_Start_DMA(&hadc2, (uint32_t*)&ADC2Data, ADC2_CHANNELS_NUM)) Error_Handler(); … … 126 126 if (HAL_OK == HAL_ADC_Stop_DMA(&hadc2)) 127 127 { 128 LL_ADC_SetOffset(hadc2.Instance, LL_ADC_OFFSET_1, LL_ADC_CHANNEL_3, (offset[0]/max_samples) << 6U);129 LL_ADC_SetOffset(hadc2.Instance, LL_ADC_OFFSET_2, LL_ADC_CHANNEL_4, (offset[1]/max_samples) << 6U);128 LL_ADC_SetOffset(hadc2.Instance, LL_ADC_OFFSET_1, LL_ADC_CHANNEL_3, (offset[0]/max_samples) * ((hadc2.Init.OversamplingMode == ENABLE)? hadc2.Init.Oversampling.Ratio: 1)); 129 LL_ADC_SetOffset(hadc2.Instance, LL_ADC_OFFSET_2, LL_ADC_CHANNEL_4, (offset[1]/max_samples) * ((hadc2.Init.OversamplingMode == ENABLE)? hadc2.Init.Oversampling.Ratio: 1)); 130 130 } 131 131 … … 184 184 sConfig.Channel = ADC_CHANNEL_10; 185 185 sConfig.Rank = ADC_REGULAR_RANK_1; 186 sConfig.SamplingTime = ADC 3_SAMPLETIME_640CYCLES_5;186 sConfig.SamplingTime = ADC_SAMPLETIME_810CYCLES_5; 187 187 sConfig.SingleDiff = ADC_SINGLE_ENDED; 188 188 sConfig.OffsetNumber = ADC_OFFSET_NONE; -
ctrl/firmware/Main/CubeMX/Core/Src/main.c
r109 r110 192 192 /** Configure the main internal regulator output voltage 193 193 */ 194 __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE 2);194 __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE0); 195 195 196 196 while(!__HAL_PWR_GET_FLAG(PWR_FLAG_VOSRDY)) {} … … 266 266 PeriphClkInitStruct.PLL2.PLL2FRACN = 0; 267 267 PeriphClkInitStruct.PLL3.PLL3M = 25; 268 PeriphClkInitStruct.PLL3.PLL3N = 1 80;268 PeriphClkInitStruct.PLL3.PLL3N = 150; 269 269 PeriphClkInitStruct.PLL3.PLL3P = 2; 270 PeriphClkInitStruct.PLL3.PLL3Q = 8;270 PeriphClkInitStruct.PLL3.PLL3Q = 6; 271 271 PeriphClkInitStruct.PLL3.PLL3R = 3; 272 272 PeriphClkInitStruct.PLL3.PLL3RGE = RCC_PLL3VCIRANGE_0; … … 350 350 351 351 /* USER CODE END Callback 0 */ 352 if (htim->Instance == TIM7) { 352 if (htim->Instance == TIM7) 353 { 353 354 HAL_IncTick(); 354 355 } -
ctrl/firmware/Main/CubeMX/Core/Src/stm32h7xx_hal_timebase_tim.c
r54 r110 63 63 __HAL_RCC_TIM7_CLK_ENABLE(); 64 64 65 /* Get clock configuration */65 /* Get clock configuration */ 66 66 HAL_RCC_GetClockConfig(&clkconfig, &pFLatency); 67 67 … … 85 85 86 86 /* Initialize TIMx peripheral as follow: 87 88 + Period = [(TIM7CLK/1000) - 1]. to have a (1/1000) s time base. 89 + Prescaler = (uwTimclock/1000000 - 1) to have a 1MHz counter clock. 90 + ClockDivision = 0 91 + Counter direction = Up 92 */ 87 * Period = [(TIM7CLK/1000) - 1]. to have a (1/1000) s time base. 88 * Prescaler = (uwTimclock/1000000 - 1) to have a 1MHz counter clock. 89 * ClockDivision = 0 90 * Counter direction = Up 91 */ 93 92 htim7.Init.Period = (1000000U / 1000U) - 1U; 94 93 htim7.Init.Prescaler = uwPrescalerValue; -
ctrl/firmware/Main/CubeMX/Core/Src/stm32h7xx_it.c
r109 r110 483 483 { 484 484 HAL_GPIO_WritePin(RX1_LED_GPIO_Port, RX1_LED_Pin, GPIO_PIN_SET); 485 charge_tmp = (((int64_t)ADC2Data.Name.charge_strom * ((int64_t)VREF) * 1000LL) / ((int64_t)0xFFFF)) / 50LL;486 load_tmp = (((int64_t)ADC2Data.Name.eload_strom * ((int64_t)VREF) * 1000LL) / ((int64_t)0xFFFF)) / 50LL;487 charge_i = (float)charge_tmp / 500LL;488 load_i = (float)load_tmp / 500LL;485 //charge_tmp = (((int64_t)ADC2Data.Name.charge_strom * ((int64_t)VREF) * 1000LL) / ((int64_t)0xFFFF)) / 50LL; 486 //load_tmp = (((int64_t)ADC2Data.Name.eload_strom * ((int64_t)VREF) * 1000LL) / ((int64_t)0xFFFF)) / 50LL; 487 //charge_i = (float)charge_tmp / 500LL; 488 //load_i = (float)load_tmp / 500LL; 489 489 //printf("\t\t\t%5.2fA, %5.2fA\n", charge_i, load_i); 490 printf("%d, %d\n", ADC2Data.Name.charge_strom, ADC2Data.Name.eload_strom); 490 491 HAL_GPIO_WritePin(RX1_LED_GPIO_Port, RX1_LED_Pin, GPIO_PIN_RESET); 491 492 } -
ctrl/firmware/Main/CubeMX/charger.ioc
r109 r110 217 217 Dma.USART3_TX.2.SyncSignalID=NONE 218 218 FATFS.BSP.number=1 219 FATFS.IPParameters=_USE_FIND,_USE_EXPAND,_USE_LABEL,_USE_LFN,_LFN_UNICODE,_MULTI_PARTITION,_FS_EXFAT,_USE_MUTEX,_FS_REENTRANT,_FS_NORTC,_NORTC_YEAR,_NORTC_MDAY,_NORTC_MON,_STRF_ENCODE,_USE_STRFUNC,_MAX_SS,_VOLUMES 220 FATFS._FS_EXFAT=0 219 FATFS.IPParameters=_USE_FIND,_USE_LABEL,_USE_LFN,_LFN_UNICODE,_MULTI_PARTITION,_USE_MUTEX,_FS_REENTRANT,_FS_NORTC,_NORTC_YEAR,_NORTC_MDAY,_NORTC_MON,_STRF_ENCODE,_USE_STRFUNC,_MAX_SS,_VOLUMES 221 220 FATFS._FS_NORTC=0 222 221 FATFS._FS_REENTRANT=1 … … 228 227 FATFS._NORTC_YEAR=2025 229 228 FATFS._STRF_ENCODE=0 230 FATFS._USE_EXPAND=1231 229 FATFS._USE_FIND=1 232 230 FATFS._USE_LABEL=1 … … 752 750 ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-MX_DMA_Init-DMA-false-HAL-true,3-MX_BDMA_Init-BDMA-false-HAL-true,4-MX_RTC_Init-RTC-false-HAL-true,5-MX_SPI4_Init-SPI4-false-HAL-true,6-MX_SDMMC1_SD_Init-SDMMC1-false-HAL-true,7-SystemClock_Config-RCC-false-HAL-false,8-MX_FATFS_Init-FATFS-false-HAL-false,9-MX_TIM8_Init-TIM8-false-HAL-true,10-MX_SPI2_Init-SPI2-false-HAL-true,11-MX_USART2_UART_Init-USART2-false-HAL-true,12-MX_USART10_UART_Init-USART10-false-HAL-true,13-MX_TIM6_Init-TIM6-false-HAL-true,14-MX_I2C2_Init-I2C2-false-HAL-true,15-MX_ADC3_Init-ADC3-false-HAL-true,16-MX_TIM3_Init-TIM3-false-HAL-true,17-MX_I2C1_Init-I2C1-false-HAL-true,18-MX_USART3_UART_Init-USART3-false-HAL-true,19-MX_DTS_Init-DTS-false-HAL-true,20-MX_DAC1_Init-DAC1-false-HAL-true,21-MX_TIM1_Init-TIM1-false-HAL-true,22-MX_ADC2_Init-ADC2-false-HAL-true,0-MX_CORTEX_M7_Init-CORTEX_M7-false-HAL-true,0-MX_VREFBUF_Init-VREFBUF-false-HAL-true 753 751 RCC.ADCCLockSelection=RCC_ADCCLKSOURCE_PLL3 754 RCC.ADCFreq_Value= 60000000752 RCC.ADCFreq_Value=50000000 755 753 RCC.AHB12Freq_Value=100000000 756 754 RCC.AHB4Freq_Value=100000000 … … 772 770 RCC.DIVN1=40 773 771 RCC.DIVN2=20 774 RCC.DIVN3=1 80772 RCC.DIVN3=150 775 773 RCC.DIVP1Freq_Value=100000000 776 774 RCC.DIVP2Freq_Value=125000000 777 RCC.DIVP3Freq_Value= 90000000775 RCC.DIVP3Freq_Value=75000000 778 776 RCC.DIVQ1Freq_Value=100000000 779 777 RCC.DIVQ2=11 780 778 RCC.DIVQ2Freq_Value=22727272.727272727 781 RCC.DIVQ3= 8782 RCC.DIVQ3Freq_Value=2 2500000779 RCC.DIVQ3=6 780 RCC.DIVQ3Freq_Value=25000000 783 781 RCC.DIVR1Freq_Value=100000000 784 782 RCC.DIVR2=5 785 783 RCC.DIVR2Freq_Value=50000000 786 784 RCC.DIVR3=3 787 RCC.DIVR3Freq_Value=60000000 785 RCC.DIVR3Freq_Value=50000000 786 RCC.EnbaleCSS=false 788 787 RCC.FDCANFreq_Value=100000000 789 788 RCC.FMCFreq_Value=100000000 … … 794 793 RCC.I2C123Freq_Value=64000000 795 794 RCC.I2C4Freq_Value=100000000 796 RCC.IPParameters=ADCCLockSelection,ADCFreq_Value,AHB12Freq_Value,AHB4Freq_Value,APB1Freq_Value,APB2Freq_Value,APB3Freq_Value,APB4Freq_Value,AXIClockFreq_Value,CECFreq_Value,CKPERFreq_Value,CortexFreq_Value,CpuClockFreq_Value,D1CPREFreq_Value,DFSDMACLkFreq_Value,DFSDMFreq_Value,DIVM1,DIVM2,DIVM3,DIVN1,DIVN2,DIVN3,DIVP1Freq_Value,DIVP2Freq_Value,DIVP3Freq_Value,DIVQ1Freq_Value,DIVQ2,DIVQ2Freq_Value,DIVQ3,DIVQ3Freq_Value,DIVR1Freq_Value,DIVR2,DIVR2Freq_Value,DIVR3,DIVR3Freq_Value, FDCANFreq_Value,FMCFreq_Value,FamilyName,HCLK3ClockFreq_Value,HCLKFreq_Value,I2C123CLockSelection,I2C123Freq_Value,I2C4Freq_Value,LPTIM1Freq_Value,LPTIM2Freq_Value,LPTIM345Freq_Value,LPUART1Freq_Value,LTDCFreq_Value,MCO1PinFreq_Value,MCO2PinFreq_Value,PLL2FRACN,PLL2_VCI_Range-AdvancedSettings,PLLFRACN,PLLSourceVirtual,PWR_Regulator_Voltage_Scale,QSPIFreq_Value,RNGFreq_Value,RTCClockSelection,RTCFreq_Value,SAI1Freq_Value,SAI4AFreq_Value,SAI4BFreq_Value,SDMMC1CLockSelection,SDMMCFreq_Value,SPDIFRXFreq_Value,SPI123CLockSelection,SPI123Freq_Value,SPI45Freq_Value,SPI6Freq_Value,SWPMI1Freq_Value,SYSCLKFreq_VALUE,SYSCLKSource,Spi45ClockSelection,Tim1OutputFreq_Value,Tim2OutputFreq_Value,TraceFreq_Value,USART16CLockSelection,USART16Freq_Value,USART234578CLockSelection,USART234578Freq_Value,USBFreq_Value,VCO1OutputFreq_Value,VCO2OutputFreq_Value,VCO3OutputFreq_Value,VCOInput1Freq_Value,VCOInput2Freq_Value,VCOInput3Freq_Value795 RCC.IPParameters=ADCCLockSelection,ADCFreq_Value,AHB12Freq_Value,AHB4Freq_Value,APB1Freq_Value,APB2Freq_Value,APB3Freq_Value,APB4Freq_Value,AXIClockFreq_Value,CECFreq_Value,CKPERFreq_Value,CortexFreq_Value,CpuClockFreq_Value,D1CPREFreq_Value,DFSDMACLkFreq_Value,DFSDMFreq_Value,DIVM1,DIVM2,DIVM3,DIVN1,DIVN2,DIVN3,DIVP1Freq_Value,DIVP2Freq_Value,DIVP3Freq_Value,DIVQ1Freq_Value,DIVQ2,DIVQ2Freq_Value,DIVQ3,DIVQ3Freq_Value,DIVR1Freq_Value,DIVR2,DIVR2Freq_Value,DIVR3,DIVR3Freq_Value,EnbaleCSS,FDCANFreq_Value,FMCFreq_Value,FamilyName,HCLK3ClockFreq_Value,HCLKFreq_Value,I2C123CLockSelection,I2C123Freq_Value,I2C4Freq_Value,LPTIM1Freq_Value,LPTIM2Freq_Value,LPTIM345Freq_Value,LPUART1Freq_Value,LTDCFreq_Value,MCO1PinFreq_Value,MCO2PinFreq_Value,PLL2FRACN,PLL2_VCI_Range-AdvancedSettings,PLL2_VCO_SEL-AdvancedSettings,PLLFRACN,PLLSourceVirtual,PWR_Regulator_Voltage_Scale,QSPIFreq_Value,RNGFreq_Value,RTCClockSelection,RTCFreq_Value,SAI1Freq_Value,SAI4AFreq_Value,SAI4BFreq_Value,SDMMC1CLockSelection,SDMMCFreq_Value,SPDIFRXFreq_Value,SPI123CLockSelection,SPI123Freq_Value,SPI45Freq_Value,SPI6Freq_Value,SWPMI1Freq_Value,SYSCLKFreq_VALUE,SYSCLKSource,Spi45ClockSelection,Tim1OutputFreq_Value,Tim2OutputFreq_Value,TraceFreq_Value,USART16CLockSelection,USART16Freq_Value,USART234578CLockSelection,USART234578Freq_Value,USBFreq_Value,VCO1OutputFreq_Value,VCO2OutputFreq_Value,VCO3OutputFreq_Value,VCOInput1Freq_Value,VCOInput2Freq_Value,VCOInput3Freq_Value 797 796 RCC.LPTIM1Freq_Value=100000000 798 797 RCC.LPTIM2Freq_Value=100000000 799 798 RCC.LPTIM345Freq_Value=100000000 800 799 RCC.LPUART1Freq_Value=100000000 801 RCC.LTDCFreq_Value= 60000000800 RCC.LTDCFreq_Value=50000000 802 801 RCC.MCO1PinFreq_Value=64000000 803 802 RCC.MCO2PinFreq_Value=100000000 804 803 RCC.PLL2FRACN=0 805 804 RCC.PLL2_VCI_Range-AdvancedSettings=RCC_PLL2VCIRANGE_3 805 RCC.PLL2_VCO_SEL-AdvancedSettings=RCC_PLL2VCOMEDIUM 806 806 RCC.PLLFRACN=0 807 807 RCC.PLLSourceVirtual=RCC_PLLSOURCE_HSE … … 829 829 RCC.TraceFreq_Value=100000000 830 830 RCC.USART16CLockSelection=RCC_USART16910CLKSOURCE_PLL3 831 RCC.USART16Freq_Value=2 2500000831 RCC.USART16Freq_Value=25000000 832 832 RCC.USART234578CLockSelection=RCC_USART234578CLKSOURCE_PLL3 833 RCC.USART234578Freq_Value=2 2500000833 RCC.USART234578Freq_Value=25000000 834 834 RCC.USBFreq_Value=100000000 835 835 RCC.VCO1OutputFreq_Value=200000000 836 836 RCC.VCO2OutputFreq_Value=250000000 837 RCC.VCO3OutputFreq_Value=1 80000000837 RCC.VCO3OutputFreq_Value=150000000 838 838 RCC.VCOInput1Freq_Value=5000000 839 839 RCC.VCOInput2Freq_Value=12500000
Note: See TracChangeset
for help on using the changeset viewer.