zoukankan      html  css  js  c++  java
  • STM32L0 HAL库 IO读写功能

    开发环境使用 MDK5.16a + CUBEMX生成代码

    开发板使用:NUCLEO-L053R8

    核心芯片:STM32L053R8

    今天主要学习了下最基础的IO的读写,IO使用 PA5   LED输出, PC13按键输入

    使用CUBEMX生成LED和按键的设置输入输出的代码(此步略去),比较简单戳戳点点就行了

    注意事项:

    1.NUCLEO板子没外置晶振,所以晶振选择HSI

    2.按键最好设置使用内部上拉,个人习惯。没仔细看电路上的按键是否是有上拉。

    3.MDK使用GB2312编码格式,其它的编码写过的中文注释,重新用CUBEMX生成有时候会乱码。

    4.自己写的代码一定要写在系统提示的user code begin 和end之间,这样重新生成CUBEMX时候不会覆盖这部分代码,其它的地方写的程序在生成代码时候会被软件覆盖掉。

    5.MDK5有自动的代码补全功能,还是挺好使的,记得开启下。

    IO的读写学习:

        if(HAL_GPIO_ReadPin(GPIOC,GPIO_PIN_13) == 0){        //是否有按键按下
            HAL_Delay(10);                //延迟去抖动
            if(HAL_GPIO_ReadPin(GPIOC,GPIO_PIN_13) == 0){        //重新检测是否有按键按下
                HAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,GPIO_PIN_SET);    //按键按下了,点亮LED
            }else{
                HAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,GPIO_PIN_RESET);    //松开按键,熄灭LED
            }
        }

     IO状态翻转

    HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_5);
    HAL_Delay(1000);
  • 相关阅读:
    StreamWrite写ASCII文本文件时,中文变成问号的处理
    asp.net错误处理封装
    C#减少图片文件大小和尺寸
    关于《代码大全2》
    关于重载
    Oracle移机
    用delphi模仿.net的string.split
    Oracle817搞怪
    oracle取得系统时钟
    15 个新鲜精彩的jQuery教程
  • 原文地址:https://www.cnblogs.com/Mysterious/p/4804144.html
Copyright © 2011-2022 走看看