Normal PIN initialization
/*****************************************************************************
Stm32f0
******************************************************************************/
void Bell_init (void)
{
Gpio_inittypedef gpio_initstruct;
Rcc_ahbperiphclockcmd (Rcc_ahbperiph_gpioa, ENABLE);
Gpio_initstruct.gpio_pin = gpio_pin_2;
Gpio_initstruct.gpio_mode = Gpio_mode_out;
Gpio_initstruct.gpio_speed = gpio_speed_level_2;
GPIO_INITSTRUCT.GPIO_PUPD = gpio_pupd_up;
Gpio_init (Gpioa, &gpio_initstruct);
Gpio_resetbits (Gpioa, gpio_pin_2);
}
/*stm32f4*/
void Beep_init (void)
{
Gpio_inittypedef gpio_initstructure;
Rcc_ahb1periphclockcmd (Rcc_ahb1periph_gpiof, ENABLE);//ê¹äügpiofê±öó
Gpio_initstructure.gpio_pin = Gpio_pin_8;
Gpio_initstructure.gpio_mode = Gpio_mode_out;//æõí¨êä³öä£ê½
Gpio_initstructure.gpio_otype = Gpio_otype_pp;//íæíìêä³ö
Gpio_initstructure.gpio_speed = Gpio_speed_100mhz;//100mhz
GPIO_INITSTRUCTURE.GPIO_PUPD = Gpio_pupd_down;//ïâà
Gpio_init (Gpiof, &gpio_initstructure);//³õê¼»¯gpio
Gpio_resetbits (Gpiof,gpio_pin_8); äãùæ÷¶ôó¦òý½ågpiof8àµí£¬
}
Interrupt pin Initialization
F0
NVIC_INITSTRUCTURE.NVIC_IRQCHANNEL=TIM3_IRQN;
nvic_initstructure.nvic_irqchannelpriority=0x00;
nvic_initstructure.nvic_irqchannelcmd=enable;
Nvic_init (&nvic_initstructure);
F4
NVIC_INITSTRUCTURE.NVIC_IRQCHANNEL=TIM3_IRQN;
nvic_initstructure.nvic_irqchannelpreemptionpriority=0x01;
nvic_initstructure.nvic_irqchannelsubpriority=0x03;
nvic_initstructure.nvic_irqchannelcmd=enable;
Nvic_init (&nvic_initstructure);
STM32F4XX and STM32F0XX Programming differences