有没有大佬用 w801 这块板子外接过 ds18b10 温度模块, 可以分享一下 demo 吗, 或者其他的温度模块的 demo 可以分享一下的
粗略看了你的代码下, 有如下几个问题: 1, OutDQ0 和 OutDQ1 定义错误, 输出高低电平并不是通过设置上下拉来实现的, tls_gpio_cfg 设置为输出后, 还需要调用 tls_gpio_write 来设置输出高, 低电平, 另外我记得电路外部是需要加上拉电阻的, 所以这里应该配置为上拉输出; 2, 如果没有外部电阻的情况下, IpuDQ 配置为上拉, 组好还是有外部上拉电阻, 毕竟内部是个弱上拉; 3, 延时混乱, tls_os_time_delay () 接口实现的延时单位是系统的 1 个 tick, 如果 configTICK_RATE_HZ 设置的是 1000, 那就是最小延时时间只能到 1ms, 想要实现 us 级别的延时, 就需要用自习用 for 循环 + __NOP () ; 来实际测量实现了, 或者用楼上的方式试下行不行.
至于具体时序网上参考程序很多, 主要是 IO 的操作和延时弄对了就不会有大问题, 如果 IO 操作不清楚的, 可以参考 wm_gpio_demo. c 程序. 开一个帖子就行了.