zoukankan      html  css  js  c++  java
  • HAL库_流水灯

    对比标准库的流程使用HAL库编写流水灯

    标准库:

    1.开时钟

    2.初始化GPIOInit结构体

    3.调用GPIO_Init(GPIOB, &GPIO_InitStructure) 初始化函数

     1 typedef struct
     2 {
     3   uint16_t GPIO_Pin;             /*!< Specifies the GPIO pins to be configured.
     4                                       This parameter can be any value of @ref GPIO_pins_define */
     5 
     6   GPIOSpeed_TypeDef GPIO_Speed;  /*!< Specifies the speed for the selected pins.
     7                                      This parameter can be a value of @ref GPIOSpeed_TypeDef */
     8 
     9   GPIOMode_TypeDef GPIO_Mode;    /*!< Specifies the operating mode for the selected pins.
    10                                       This parameter can be a value of @ref GPIOMode_TypeDef */
    11 }GPIO_InitTypeDef;

    HAL流程:

    1.开时钟

    2.从PinOut界面点击引脚,设置GPIO为输出

    3.再标准库中要手动初始化一个GPIO的结构体,现在CubeMx可以让我们使用图形配置的方式设置这些通用的、繁琐的固定的初始化代码。

    从PinOut界面选择了对应的GPIO后按照下面图片上面的方法设置GPIO的模式、速度、上拉和下拉。

     

    千万别忘了打开sys下的debug,不然会导致无法第二次下载程序。

     代码:自己写的代码一定要放在每一个 user code begin 和user code end之间,不然放在cubemx中修改了配置再生成工程时后自动删除我们写的代码。

      /* Infinite loop */
      /* USER CODE BEGIN WHILE */
      while (1)   
      {
             HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_5);
            HAL_GPIO_TogglePin(GPIOE,GPIO_PIN_5);
            HAL_Delay(600);
        /* USER CODE END WHILE */
    
        /* USER CODE BEGIN 3 */
      }
      /* USER CODE END 3 */
  • 相关阅读:
    mysql 安装失败 start service执行不下去
    C# 打开钱箱支持北洋、佳博、爱普生
    CF1093E Intersection of Permutations [分块 +bitset]
    CF895C Square Subsets [线性基]
    线性基学习笔记
    长链剖分学习笔记
    GSS 系列题解
    P3206 [HNOI2010]城市建设 [线段树分治+LCT维护动态MST]
    线段树分治学习笔记
    [CF662C Binary Table][状压+FWT]
  • 原文地址:https://www.cnblogs.com/1024E/p/13347718.html
Copyright © 2011-2022 走看看