yzwzfyz 发表于 2021-10-25 16:23 嗯,您说的很对。最后发现是精确延时函数有问题,导致延时的时间并不是理想的定义的uint x的时间,超过了DataSheet要求的最大值120us,导致最后输出数据紊乱。确实是时序没对好导致的。 |
这个不难解决,去研读DS18B20手册,特别是它的读写时序部分。再对比一下,你的程序对它的操作时序,能满足手册上的要求吗? |
感谢大佬,验证后发现原来的精确延时方法确实有问题
之前做的实验对时序的要求没那么严格,导致没发现这种精确延时方法有问题。 将10us的精确延时改成
就好了 |
|