首页 > 电脑专区 > 电脑教程 >

STM32F411实现端口1秒钟电平翻转一次

来源:互联网 2023-02-20 18:24:48 464

下面是一个用HAL库实现的端口电平周期性翻转的操作,使用的是STM32F411RE芯片。U24办公区 - 实用经验教程分享!

工具/原料

  • STM32CubeMX

方法/步骤

  • 1

    使用STM32CubeMX生成一个是能了TIM1的工程,然后打开,将TIM1的初始化代码做如下更改,即增加:HAL_TIM_Base_Start_IT(&htim1);使能定时器更新中断。U24办公区 - 实用经验教程分享!

    STM32F411实现端口1秒钟电平翻转一次U24办公区 - 实用经验教程分享!

  • 2

    在主函数的初始化代码中添加TIM1的初始化函数。U24办公区 - 实用经验教程分享!

    STM32F411实现端口1秒钟电平翻转一次U24办公区 - 实用经验教程分享!

  • 3

    定义一个GPIO_PinState变量,用于保存需要操作的端口状态,最好放到/* USER CODE BEGIN PV */和/* USER CODE PV */之间。U24办公区 - 实用经验教程分享!

    STM32F411实现端口1秒钟电平翻转一次U24办公区 - 实用经验教程分享!

  • 4

    定义一个GPIO_Init函数,用于初始化端口,注意使能端口的时钟。U24办公区 - 实用经验教程分享!

    STM32F411实现端口1秒钟电平翻转一次U24办公区 - 实用经验教程分享!

  • 4该信息未经授权抓取自百度经验
  • 5

    在main函数的while(1)循环当中的/* USER CODE WHILE */和/* USER CODE BEGIN 3 */之间添加端口赋值函数:U24办公区 - 实用经验教程分享!

    HAL_GPIO_WritePin(GPIOC, GPIO_PIN_8, pc8_flag);U24办公区 - 实用经验教程分享!

    STM32F411实现端口1秒钟电平翻转一次U24办公区 - 实用经验教程分享!

  • 6

    在TIM1的中断函数中对pc8_flag进行状态切换。U24办公区 - 实用经验教程分享!

    STM32F411实现端口1秒钟电平翻转一次U24办公区 - 实用经验教程分享!

  • 7

    编译并调试代码。U24办公区 - 实用经验教程分享!

    STM32F411实现端口1秒钟电平翻转一次U24办公区 - 实用经验教程分享!

  • 注意事项

    • 1、记得开启对应端口的时钟。
    • 2、最好使用GPIO_PinState类型保存端口状态,因为这个类型只有两个状态,而且它与HAL_GPIO_WritePin()函数的参数相配。

    以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!U24办公区 - 实用经验教程分享!


    标签: 硬件实现

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码