【问题标题】:How to write a value to a port in DIO module AUTOSAR?如何将值写入 DIO 模块 AUTOSAR 中的端口?
【发布时间】:2020-05-05 18:31:57
【问题描述】:

我在 STM32 NUCLEO-F767ZI 板上的 AUTOSAR 项目中工作,我必须在 DIO 模块中写入端口的值。我知道有一个名为 HAL_GPIO_WritePin() 的函数,但是我怎样才能写出整个端口的值呢?

【问题讨论】:

  • HAL_GPIO_WritePin 不是标准的 AUTOSAR 接口,尤其不是 Dio。或者您是否尝试在 ST 提供的非 AUTOSAR 库之上实现 Dio 模块本身?这样您就不会获得符合 AUTOSAR 的代码。

标签: c++ c embedded autosar


【解决方案1】:

您可以通过在该端口中写入每个通道的值来做到这一点。

端口通常有 16 个通道,因此您要写入的值是一个 16 位数字,其中包含 01LOWHIGH)。因此,对于该数字中的每个位,您调用函数 HAL_GPIO_WritePin() 并使用参数 RESET0SET1 将值写入相应的通道。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-05
    • 2014-06-28
    • 1970-01-01
    相关资源
    最近更新 更多