【STM32F0开发日志/评测/笔记】+互补PWM波的产生
STM32F030 PB14和PB15无法输出PWM求助
【STM32F030探索套件】序列之五 外部中断
【STM32F0开发日志---二】+ucosii.2.92移植在STM32F030
上传个STM32F0+5110+内部温度传感器的菜鸟实例
【STM32F030探索套件使用问题】STM32F030 SPI方式驱动ST7565LCD失败
求一份STM32F051 I2C驱动LCD 12864的例程
STM32F0 M0 向结构体赋值进入HardFault异常
STM32F0 ADC-DMA方式采集2路数据时出现问题
STM32F030C8T6,TIM16定时慢很多问题?
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE); //ÉèÖÃGPIO ʱÖÓ
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE); //ÉèÖÃGPIO ʱÖÓ
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOF, ENABLE); //ÉèÖÃGPIO ʱÖÓ
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 |GPIO_Pin_1 |GPIO_Pin_2 |GPIO_Pin_3
|GPIO_Pin_4 |GPIO_Pin_5 |GPIO_Pin_6 |GPIO_Pin_7
|GPIO_Pin_8 |GPIO_Pin_9 |GPIO_Pin_10 |GPIO_Pin_11
|GPIO_Pin_12|GPIO_Pin_15;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 |GPIO_Pin_1 |GPIO_Pin_3 |GPIO_Pin_4 |GPIO_Pin_5 |GPIO_Pin_6 |GPIO_Pin_7;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_Init(GPIOB, &GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 |GPIO_Pin_1;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_Init(GPIOF, &GPIO_InitStructure);
// GPIO_PinAFConfig(GPIOF,GPIO_PinSource0,GPIO_AF_1);
// GPIO_PinAFConfig(GPIOF,GPIO_PinSource1,GPIO_AF_1);
}
/****************************************************
º¯Êý¹¦ÄÜ£ºLED¿ª
ÊäÈë²ÎÊý£ºÎÞ
Êä³ö²ÎÊý£ºÎÞ
±¸ ×¢£ºµ÷Óô˺¯ÊýÇ°£¬ÐèÒªÔÚLED.hÐ޸ĺ궨ÒåLEDÒý½Å
****************************************************/
void LED0_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_8);
}
void LED1_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_9);
}
void LED2_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_10);
}
void LED3_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_11);
}
void LED4_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_12);
}
void LED5_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_15);
}
void LED6_OFF(void)
{
GPIO_ResetBits(GPIOB, GPIO_Pin_3);
}
void LED7_OFF(void)
{
GPIO_ResetBits(GPIOB, GPIO_Pin_4);
}
void LED8_OFF(void)
{
GPIO_ResetBits(GPIOB, GPIO_Pin_5);
}
void LED9_OFF(void)
{
GPIO_ResetBits(GPIOB, GPIO_Pin_6);
}
void LED10_OFF(void)
{
GPIO_ResetBits(GPIOB, GPIO_Pin_7);
}
void LED11_OFF(void)
{
GPIO_ResetBits(GPIOF, GPIO_Pin_0);
}
void LED12_OFF(void)
{
GPIO_ResetBits(GPIOF, GPIO_Pin_1);
}
void LED13_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_0);
}
void LED14_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_1);
}
void LED15_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_2);
}
void LED16_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_3);
}
void LED17_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_4);
}
void LED18_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_5);
}
void LED19_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_6);
}
void LED20_OFF(void)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_7);
}
void LED21_OFF(void)
{
GPIO_ResetBits(GPIOB, GPIO_Pin_0);
}
/****************************************************
º¯Êý¹¦ÄÜ£ºLED¹Ø
ÊäÈë²ÎÊý£ºÎÞ
Êä³ö²ÎÊý£ºÎÞ
±¸ ×¢£ºµ÷Óô˺¯ÊýÇ°£¬ÐèÒªÔÚLED.hÐ޸ĺ궨ÒåLEDÒý½Å
****************************************************/
void LED0_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_8);
}
void LED1_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_9);
}
void LED2_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_10);
}
void LED3_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_11);
}
void LED4_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_12);
}
void LED5_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_15);
}
void LED6_ON(void)
{
GPIO_SetBits(GPIOB, GPIO_Pin_3);
}
void LED7_ON(void)
{
GPIO_SetBits(GPIOB, GPIO_Pin_4);
}
void LED8_ON(void)
{
GPIO_SetBits(GPIOB, GPIO_Pin_5);
}
void LED9_ON(void)
{
GPIO_SetBits(GPIOB, GPIO_Pin_6);
}
void LED10_ON(void)
{
GPIO_SetBits(GPIOB, GPIO_Pin_7);
}
void LED11_ON(void)
{
GPIO_SetBits(GPIOF, GPIO_Pin_0);
}
void LED12_ON(void)
{
GPIO_SetBits(GPIOF, GPIO_Pin_1);
}
void LED13_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_0);
}
void LED14_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_1);
}
void LED15_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_2);
}
void LED16_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_3);
}
void LED17_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_4);
}
void LED18_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_5);
}
void LED19_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_6);
}
void LED20_ON(void)
{
GPIO_SetBits(GPIOA, GPIO_Pin_7);
}
void LED21_ON(void)
{
GPIO_SetBits(GPIOB, GPIO_Pin_0);
}
æå¼STM32F0xx_Clock_Configuration_V1.0.1ï¼ç¹å»RUN
ç¹å»PLL(HSI)...
ç¹å»KO
å¤å¶system_stm32f0xx.c
å°é¡¹ç®æ¿æ¢system_stm32f0xx.c
sing the HSE or LSE oscillator pins as GPIOs
When the HSE or LSE oscillator is switched OFF (default state after reset), the related
oscillator pins can be used as normal GPIOs.
When the HSE or LSE oscillator is switched ON (by setting the HSEON or LSEON bit in the
RCC_CSR register) the oscillator takes control of its associated pins and the GPIO
configuration of these pins has no effect.
When the oscillator is configured in a user external clock mode, only the pin is reserved for
clock input and the OSC_OUT or OSC32_OUT pin can still be used as normal GPIO.