Files
@ d98fd1240e20
Branch filter:
Location: protofuse-firmware/src/system.c - annotation
d98fd1240e20
1.6 KiB
text/plain
fixed bug that caused all analogs to read same ADC value.
ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d 47fdd16b7231 47fdd16b7231 ad3725832a9d 47fdd16b7231 47fdd16b7231 47fdd16b7231 47fdd16b7231 47fdd16b7231 47fdd16b7231 47fdd16b7231 ad3725832a9d 47fdd16b7231 47fdd16b7231 47fdd16b7231 47fdd16b7231 47fdd16b7231 47fdd16b7231 47fdd16b7231 ad3725832a9d 47fdd16b7231 47fdd16b7231 47fdd16b7231 47fdd16b7231 ad3725832a9d 47fdd16b7231 ad3725832a9d 47fdd16b7231 47fdd16b7231 47fdd16b7231 47fdd16b7231 ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d ad3725832a9d | //
// System: initialize core system peripherals
//
#include "stm32f3xx_hal.h"
// Configure and start system clocks
void sysclock_init(void)
{
__SYSCFG_CLK_ENABLE();
HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4);
HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0);
RCC_OscInitTypeDef RCC_OscInitStruct;
RCC_ClkInitTypeDef RCC_ClkInitStruct;
RCC_PeriphCLKInitTypeDef PeriphClkInit;
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
RCC_OscInitStruct.HSEPredivValue = RCC_HSE_PREDIV_DIV1;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL3;
HAL_RCC_OscConfig(&RCC_OscInitStruct);
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|RCC_CLOCKTYPE_PCLK1;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV2;
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_0);
PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_USB|RCC_PERIPHCLK_ADC1;
PeriphClkInit.USBClockSelection = RCC_USBPLLCLK_DIV1;
PeriphClkInit.Adc1ClockSelection = RCC_ADC1PLLCLK_DIV1;
HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit);
HAL_SYSTICK_Config(HAL_RCC_GetHCLKFreq()/1000);
HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK);
/* SysTick_IRQn interrupt configuration */
HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0);
__DMA1_CLK_ENABLE();
}
|