如何表示低电平有效变量?
How to represent active low variables?
我在某些数据表的引脚描述部分发现尾随“#”字符,这表明特定引脚具有 active-low 功能。
是否有任何变量名称约定,例如上拉 GPIO 输入引脚值?
将原理图转换为包含引脚编号常量的头文件时,将常量命名为尽可能接近原理图上的网络名称非常有帮助。
剩下三个我经常遇到的问题:
带破折号的网名:我只是用下划线代替了它。 BAT-LEVEL
变为 BAT_LEVEL
.
以数字开头的网名:我以相同的前缀开头所有密码:3V3_ENABLE
变为 PIN_3V3_ENABLE
.
带有斜杠或哈希字符或上划线的网络名称(所有这些都表示低电平有效)。我将其替换为 lower-case n
中的 all-capitals 常量。 SPI_CS#
变为 SPI_nCS
.
数据表和示意图中的常见信号命名约定是 \
前缀或文本上方的一行。两者都不能在 C 中使用。
所以我在 C 语言中看到的最常见的命名约定可能是反向信号的后缀 _inv
。或者可能不太常用 inv_
作为前缀。
在某些情况下,您可能希望添加一些抽象层,以便在软件中可变地将 GPIO 引脚从高电平有效切换到低电平有效。
我在某些数据表的引脚描述部分发现尾随“#”字符,这表明特定引脚具有 active-low 功能。
是否有任何变量名称约定,例如上拉 GPIO 输入引脚值?
将原理图转换为包含引脚编号常量的头文件时,将常量命名为尽可能接近原理图上的网络名称非常有帮助。
剩下三个我经常遇到的问题:
带破折号的网名:我只是用下划线代替了它。
BAT-LEVEL
变为BAT_LEVEL
.以数字开头的网名:我以相同的前缀开头所有密码:
3V3_ENABLE
变为PIN_3V3_ENABLE
.带有斜杠或哈希字符或上划线的网络名称(所有这些都表示低电平有效)。我将其替换为 lower-case
n
中的 all-capitals 常量。SPI_CS#
变为SPI_nCS
.
数据表和示意图中的常见信号命名约定是 \
前缀或文本上方的一行。两者都不能在 C 中使用。
所以我在 C 语言中看到的最常见的命名约定可能是反向信号的后缀 _inv
。或者可能不太常用 inv_
作为前缀。
在某些情况下,您可能希望添加一些抽象层,以便在软件中可变地将 GPIO 引脚从高电平有效切换到低电平有效。