我得到了 Eclipse Neon GNU ARM Eclipse Plugin Vers。3.2.1 和 STM32F411RE Nucleo 板。我遵循了本指南: http: //gnuarmeclipse.github.io/
我成功安装了工具链,用可以工作的模板制作了一个 Blinky 程序,我也可以改变所说的 Blinky prog,即HAL_Delay(ms)
功能。
但是,一旦我创建了一个空项目,每次代码到达HAL_Delay
函数时,都会导致无限循环。
此代码适用于在线编译器:
int main(){
__HAL_RCC_GPIOA_CLK_ENABLE();
GPIO_InitTypeDef GPIO_InitStruct;
GPIO_InitStruct.Pin =GPIO_PIN_5;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_PULLDOWN;
GPIO_InitStruct.Speed = GPIO_SPEED_FAST;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET);
// Infinite loop
while (1)
{
HAL_Delay(2000);
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_RESET);
HAL_Delay(2000);
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET);
}
}
但是在 Eclipse 中,当它到达HAL_Delay
. 但是该功能在 Blinky 模板中有效,但两者的 init @ SysCLK 是相同的。
有人可以告诉我我在这里缺少什么吗?