关于读取CH584单片机的IO电平出现到的乌龙

本来是调用的库里的

cpp 复制代码
uint8_t get_wake_up_sta (void) {

    return GPIOB_ReadPortPin(GPIO_Pin_10);

    //return cc_gpio_get_in_io (WAKUP_CH);

}

然后读出来是0,我都配置上拉了。

搞不到原因。

最后是CH584单片机只有0和非零两种状态,读出来1024被转换成无符号8位就变成0了,

后面判断成0就以为是低电平,万用表一量是3.2V。这真难平,解决方法就是把8位换成16位。

cpp 复制代码
uint16_t get_wake_up_sta (void) {
    return GPIOB_ReadPortPin(GPIO_Pin_10);
    //return cc_gpio_get_in_io (WAKUP_CH);
}
相关推荐
傻乐u兔2 小时前
C语言进阶————指针4
c语言·开发语言
大模型玩家七七2 小时前
基于语义切分 vs 基于结构切分的实际差异
java·开发语言·数据库·安全·batch
历程里程碑2 小时前
Linux22 文件系统
linux·运维·c语言·开发语言·数据结构·c++·算法
牛奔3 小时前
Go 如何避免频繁抢占?
开发语言·后端·golang
寻星探路7 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
lly2024069 小时前
Bootstrap 警告框
开发语言
2601_949146539 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
曹牧10 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX10 小时前
服务异步通信
开发语言·后端·微服务·ruby
zmzb010310 小时前
C++课后习题训练记录Day98
开发语言·c++