Arm STM32F4(核仁-F446RE-CooCOX)基本GPIO
我刚刚开始编程核仁-F446RE(基于STM32F446RE单片机) 我似乎无法使pin激活,我正在尝试使用以下代码切换GPIO:Arm STM32F4(核仁-F446RE-CooCOX)基本GPIO,arm,stm32f4,Arm,Stm32f4,我刚刚开始编程核仁-F446RE(基于STM32F446RE单片机) 我似乎无法使pin激活,我正在尝试使用以下代码切换GPIO: //***************************************************************************** #include "stm32f446xx.h" #include "stm32f4xx_hal.h" //! \file main.c //! \brief main application //! \ve
//*****************************************************************************
#include "stm32f446xx.h"
#include "stm32f4xx_hal.h"
//! \file main.c
//! \brief main application
//! \version 1.0.0.0
//! \date $Creat_time$
//! \author $Creat_author$
//! \copy
//!
//! Copyright (c) 2014 CooCox. All rights reserved.
//
//! \addtogroup project
//! @{
//! \addtogroup main
//! @{
//*****************************************************************************
int main(void)
__HAL_RCC_GPIOA_CLK_ENABLE();
GPIO_InitTypeDef GPIO_InitTypeDefStruct;
GPIO_InitTypeDefStruct.Pin = GPIO_PIN_1;
GPIO_InitTypeDefStruct.Speed = GPIO_SPEED_LOW;
GPIO_InitTypeDefStruct.Pull = GPIO_PULLUP;
GPIO_InitTypeDefStruct.Mode = GPIO_MODE_OUTPUT_PP;
HAL_GPIO_Init(GPIOA, &GPIO_InitTypeDefStruct);
while(1)
{
HAL_GPIO_TogglePin(&GPIO_InitTypeDefStruct,GPIO_PIN_1);
}
但是它似乎不起作用..我已经浏览了GPIO的头文件和c文件,其中解释了如何设置pin,尽管即使是在骨骼上,它仍然保持较低。我哪里做错了
提前感谢您提供的任何帮助
HAL_GPIO_-TogglePin(&GPIO_-InitTypeDefStruct,GPIO_-PIN_-1)代码>
应该是
HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_1);
HAL_GPIO_-TogglePin(&GPIO_-InitTypeDefStruct,GPIO_-PIN_-1)代码>
应该是
HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_1);
切换之间需要一个延迟,这比眼睛能看到的要快得多,甚至可能太快,led无法“发光”。如果你想知道你的初始化代码是否工作,把while循环取出来,不要假设一个引脚高会打开led,这取决于电路板的设计。用一个开关尝试一次,如果led没有亮起并保持亮起,用两个开关尝试运行,如果它仍然没有亮起并保持亮起,则您的初始化不工作,如果亮起并保持亮起,则您需要delay@old_timer我刚把它连接到示波器上,用while,不用while,用一个和两个开关试了试。它根本不输出任何东西,在切换之间需要一个延迟,这比眼睛能看到的要快得多,甚至可能太快,led无法“发光”。如果你想知道你的初始化代码是否工作,把while循环取出来,不要假设一个引脚高会打开led,这取决于电路板的设计。用一个开关尝试一次,如果led没有亮起并保持亮起,用两个开关尝试运行,如果它仍然没有亮起并保持亮起,则您的初始化不工作,如果亮起并保持亮起,则您需要delay@old_timer我刚把它连接到示波器上,用while,不用while,用一个和两个开关试了试。它根本不输出任何东西