/**
* @brief tmr1 configuration.
* @param none
* @retval none
*/
static void tmr1_config(){
gpio_init_type gpio_initstructure;
tmr_output_config_type tmr_output_struct;
crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
gpio_init(GPIOB, &gpio_initstructure);
gpio_default_para_init(&gpio_initstructure);
gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
gpio_initstructure.gpio_pins = GPIO_PINS_1;
gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
gpio_initstructure.gpio_pull = GPIO_PULL_NONE;
gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
gpio_init(GPIOB, &gpio_initstructure);
gpio_default_para_init(&gpio_initstructure);
gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
gpio_initstructure.gpio_pins = GPIO_PINS_10;
gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
gpio_initstructure.gpio_pull = GPIO_PULL_NONE;
gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
gpio_init(GPIOA, &gpio_initstructure);
gpio_default_para_init(&gpio_initstructure);
gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
gpio_initstructure.gpio_pins = GPIO_PINS_0;
gpio_init(GPIOA, &gpio_initstructure);
gpio_pin_mux_config(GPIOB, GPIO_PINS_SOURCE1, GPIO_MUX_2);
gpio_pin_mux_config(GPIOA, GPIO_PINS_SOURCE10, GPIO_MUX_2);
gpio_pin_mux_config(GPIOA, GPIO_PINS_SOURCE0, GPIO_MUX_5);
crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
tmr_base_init(TMR1, 2-1, 0);
tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
TMR1->stctrl_bit.esdiv = 0;
TMR1->stctrl_bit.esp = 0;
TMR1->stctrl_bit.esf = 0;
TMR1->stctrl_bit.ecmben = 1;
TMR1->stctrl_bit.smsel = 0;
TMR1->stctrl_bit.stis = 0;
tmr_output_default_para_init(&tmr_output_struct);
tmr_output_struct.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_B;
tmr_output_struct.oc_output_state = TRUE;
tmr_output_struct.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
tmr_output_struct.oc_idle_state = TRUE;
tmr_output_struct.occ_output_state = TRUE;
tmr_output_struct.occ_polarity = TMR_OUTPUT_ACTIVE_HIGH;
tmr_output_struct.occ_idle_state = TRUE;
tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_3, &tmr_output_struct);
//tmr_output_channel_polarity_set(TMR1, TMR_SELECT_CHANNEL_1C,TMR_POLARITY_ACTIVE_HIGH);
tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_3, 1);
tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_1, 1);
tmr_counter_enable(TMR1, TRUE);
tmr_output_enable(TMR1, TRUE);
}
|