/** * @brief Main program * @param None * @retval None */ int main(void) { /*System clock configuration*/ SystemInit(); /* NVIC configuration */ NVIC_Configuration(); /* CPIO configuration */ GPIO_Setting(); /* Time base configuration */ PrescalerValue = (SystemCoreClock / 1000000) / 10; // Prescale is 2 for 10MHz CaptureModeStruct.PWM_CHn_PR = PrescalerValue - 1; CaptureModeStruct.PWM_CHn_MR = 600000; CaptureModeStruct.PWM_CHn_LR = 1200000; CaptureModeStruct.PWM_CHn_UDMR = PWM_CHn_UDMR_UpCount; CaptureModeStruct.PWM_CHn_PDMR = PWM_CHn_PDMR_Periodic; CaptureModeStruct.PWM_CHn_CMR = PWM_CHn_CMR_RisingEdge; PWM_CaptureModeInit(PWM_CH0, &CaptureModeStruct); /* PWM interrupt configuration :*/ PWM_IntConfig(PWM_CH0, ENABLE); PWM_CHn_IntConfig(PWM_CH0, PWM_CHn_IER_CIE, ENABLE); /* PWM channel 0 start */ PWM_CHn_Start(PWM_CH0); while(1); }
/** * @brief Main program * @param None * @retval None */ int main(void) { /*System clock configuration*/ SystemInit(); // *(volatile uint32_t *)(0x41001014) = 0x0060100; //clock setting 48MHz /* CLK OUT Set */ // PAD_AFConfig(PAD_PA,GPIO_Pin_2, PAD_AF2); // PAD Config - CLKOUT used 3nd Function /* NVIC configuration */ NVIC_Configuration(); /* CPIO configuration */ GPIO_Setting(); /* Timer mode configuration */ PrescalerValue = ((SystemFrequency / 1000000) / 10); // Prescale is 2 for 10MHz TimerModeStructure.PWM_CHn_PR = PrescalerValue - 1; TimerModeStructure.PWM_CHn_MR = 600000; TimerModeStructure.PWM_CHn_LR = 1200000; TimerModeStructure.PWM_CHn_UDMR = PWM_CHn_UDMR_UpCount; TimerModeStructure.PWM_CHn_PDMR = PWM_CHn_PDMR_Periodic; PWM_TimerModeInit(PWM_CH0, &TimerModeStructure); /* PWM interrupt configuration */ PWM_IntConfig(PWM_CH0, ENABLE); PWM_CHn_IntConfig(PWM_CH0, PWM_CHn_IER_MIE | PWM_CHn_IER_OIE, ENABLE); /* PWM channel 0 start */ PWM_CHn_Start(PWM_CH0); while(1); }
/** * @brief Main program * @param None * @retval None */ int main(void) { /*System clock configuration*/ SystemInit(); // *(volatile uint32_t *)(0x41001014) = 0x0060100; //clock setting 48MHz /* CLK OUT Set */ // PAD_AFConfig(PAD_PA,GPIO_Pin_2, PAD_AF2); // PAD Config - CLKOUT used 3nd Function /* NVIC configuration */ NVIC_Configuration(); /* CPIO configuration */ GPIO_Setting(); /* Time base configuration */ CounterModeStruct.PWM_CHn_MR = 10; CounterModeStruct.PWM_CHn_LR = 20; CounterModeStruct.PWM_CHn_UDMR = PWM_CHn_UDMR_UpCount; CounterModeStruct.PWM_CHn_PDMR = PWM_CHn_PDMR_Periodic; CounterModeStruct.PWM_CHn_TCMR = PWM_CHn_TCMR_RisingCounterMode; PWM_CounterModeInit(PWM_CH0, &CounterModeStruct); /* PWM interrupt configuration */ PWM_IntConfig(PWM_CH0, ENABLE); PWM_CHn_IntConfig(PWM_CH0, PWM_CHn_IER_MIE | PWM_CHn_IER_OIE, ENABLE); /* PWM channel 0 start */ PWM_CHn_Start(PWM_CH0); while(1); }
/** * @brief Main program * @param None * @retval None */ int main(void) { /*System clock configuration*/ SystemInit(); /* NVIC configuration */ NVIC_Configuration(); /* CPIO configuration */ GPIO_Setting(); /* Time base configuration */ CounterModeStruct.PWM_CHn_MR = 10; CounterModeStruct.PWM_CHn_LR = 20; CounterModeStruct.PWM_CHn_UDMR = PWM_CHn_UDMR_UpCount; CounterModeStruct.PWM_CHn_PDMR = PWM_CHn_PDMR_Periodic; CounterModeStruct.PWM_CHn_TCMR = PWM_CHn_TCMR_RisingCounterMode; PWM_CounterModeInit(PWM_CH0, &CounterModeStruct); /* PWM interrupt configuration */ PWM_IntConfig(PWM_CH0, ENABLE); PWM_CHn_IntConfig(PWM_CH0, PWM_CHn_IER_MIE | PWM_CHn_IER_OIE, ENABLE); /* PWM channel 0 start */ PWM_CHn_Start(PWM_CH0); while(1); }
void rtc_init(void) { PWM_TimerModeInitTypeDef TimerModeStructure; *(volatile uint32_t *)(0x410010e0) = 0x03; /* Timer mode configuration */ TimerModeStructure.PWM_CHn_PR = 7; TimerModeStructure.PWM_CHn_MR = 1; TimerModeStructure.PWM_CHn_LR = 0xF4240; TimerModeStructure.PWM_CHn_UDMR = PWM_CHn_UDMR_UpCount; TimerModeStructure.PWM_CHn_PDMR = PWM_CHn_PDMR_Periodic; PWM_TimerModeInit(PWM_CH3, &TimerModeStructure); /* PWM interrupt configuration */ PWM_IntConfig(PWM_CH3, ENABLE); PWM_CHn_IntConfig(PWM_CH3, PWM_CHn_IER_OIE, ENABLE); /* PWM channel 0 start */ PWM_CHn_Start(PWM_CH3); NVIC_SetVector(PWM3_IRQn, (uint32_t)PWM3_Handler); NVIC_EnableIRQ(PWM3_IRQn); rtc_enabled = 1; }