我写了一个自己写了一个点灯代码,如下:
void LED_Init(void)
{
RCC->AHB1ENR |= 1 << 5; //使能GPIOF
GPIOF->MODER &= ~(0X3 << 18); //清理处理
GPIOF->MODER &= ~(0X3 << 20);
GPIOF->MODER |= (0X1 << 18); //配置为输出模式
GPIOF->MODER |= (0X1 << 20);
GPIOF->OTYPER &= ~(0X1 << 9); //推挽输出
GPIOF->OTYPER &= ~(0X1 << 10);
GPIOF->PUPDR &= ~(0X3 << 18); //清理处理
GPIOF->PUPDR &= ~(0X3 << 20);
GPIOF->PUPDR |= (0X1 << 18); //上拉
GPIOF->PUPDR |= (0X1 << 20);
GPIOF->ODR |= 1 << 9; //灯灭
GPIOF->ODR |= 1 << 10;
}
现在的问题是: (灯在mian函数里面被我点亮)
①KEIL里面默认是12M外部晶振,没有使用浮点运算,灯是可以亮的
②KEIL里面设置为8M外部晶振(按照原子哥的说明),不使用浮点运算,灯不亮
③8M,使用浮点原酸,不亮
④12M,使用浮点运算,灯不亮
以上情况只有第一种会亮,我想知道为什么!!!
谢谢,祝各位在新的一年万事顺利,身体健康,开开心心!!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
想学习MM32的call群 676021505
一周热门 更多>