解释 typedef enum{ GPIO_PIN_RESET = 0, GPIO_PIN_SET}GPIO_PinState;
2023-12-19 06:40:04
- `typedef enum` 定义了一个名为 `GPIO_PinState` 的枚举类型,它具有两个枚举值:`GPIO_PIN_RESET` 和 `GPIO_PIN_SET`。
- 枚举类型能够定义一组命名的整数常量,这些常量可以在代码中使用,并提供了更好的可读性和可维护性。
- 在这个枚举类型中,`GPIO_PIN_RESET` 的值被设为 0,`GPIO_PIN_SET` 的值被设为 1。这是为了表示引脚的状态,其中 `GPIO_PIN_RESET` 表示引脚复位或低电平状态,`GPIO_PIN_SET` 表示引脚设置或高电平状态。
例如,在软件I2C中,SCL和SDA引脚的配置时可以使用,进行I2C引脚的配置,如下:
/*引脚配置*/
#define OLED_W_SCL(x) HAL_GPIO_WritePin(GPIOH, GPIO_PIN_4, (GPIO_PinState)(x))
#define OLED_W_SDA(x) HAL_GPIO_WritePin(GPIOH, GPIO_PIN_5, (GPIO_PinState)(x))
通过使用 `GPIO_PinState` 枚举类型,可以更清晰地表达所产生的操作意图,提高了代码的可读性和可维护性。
文章来源:https://blog.csdn.net/m0_61712829/article/details/135073893
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!