• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STM32怎么读取到一组IO的电平高低状态

丁飞人人 2020-03-24 浏览量:5193
比如说直接读取到GPIOA的全部IO状态
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 可以直接用uint16_t GPIO_ReadInputData(GPIO_TypeDef* GPIOx)这个函数来读取某一组IO的状态,比如要读取GPIOA的IO电平,那么就直接用GPIO_ReadInputData(GPIOA)​,读取到的十六位数据,就是GPIOA的16个IO的电平状态
    • 发布于 2020-03-30
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:4
  • 可以用库函数读取一组io数据 uint16_t GPIO_ReadOutputData(GPIO_TypeDef* GPIOx);使用时制药把gpiox换成自己要读取的那组gpio,比如GPIOA,返回就是当前GPIO组的值

    • 发布于2020-03-24
    • 举报
    • 评论 0
    • 0
    • 0

  • 你可以读取GPIO寄存器GPIOx_BSRR的值,这里就是IO的电平状态
    • 发布于2020-03-24
    • 举报
    • 评论 0
    • 0
    • 0

  • 库函数版

    GPIO_ReadInputDataBit(GPIOCGPIO_Pin_13);//读取输入口PC13值

    寄存器版

    if(GPIOC->IDR& GPIO_IDR_IDR13)

     { 函数体; }

    • 发布于2020-03-24
    • 举报
    • 评论 0
    • 0
    • 0

  • 通过HAL_GPIO_ReadPin这个API可以读取IO的电平
    • 发布于2020-03-25
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM32怎么读取到一组IO的电平高低状态