大家好、我已实现适用于 TM4C123BH6PGE 的单线协议、该协议具有非常快速的输出至输入转换。 当我尝试读取温度时、一切都正常、但我注意到设备上的电流显著下降。 后来、我断开了单线连接、再次测试了代码、结果发现仍然出现电流损失。 我已经将该电流损耗的来源缩小到该特定操作。
unsigned int OneWireReset(void) { OneWireSetOutput(); GPIOPinWrite(ONE_WIRE_PORT, ONE_WIRE_PIN, 0); // Drive the line low delayMicroseconds(480); // Reset pulse time OneWireSetInput(); // Release the line delayMicroseconds(70); // Wait for presence pulse unsigned int OW = OneWireRead(); // Read presence pulse delayMicroseconds(410); // Wait for end of timeslot return OW; // Return presence pulse status }
我认为我的电流会由于切换到输入模式过快而出现损失。 是否有人以前遇到过类似问题?