????????昨天我突發奇想,修改了一下MCU和INA226以及DAC8551的通訊速率。之前的INA226用的是I2C通訊,之前設置的速率是100Kbps,DAC8551是SPI通訊,速率是10Mbps,昨天修改之前輸出位置的測試結果如圖:
????????可以看到,整體的噪音大約是5.5-6mVpp。
? ? ? ? 然后我昨天反復試驗INA226的速率上限,然后最終設定在2.5Mbps,高于這個值,就會通訊失敗。DAC8551我直接用了手冊上給的最大值:30Mbps。
? ? ? ? 然后做了同樣的測試,結果如下圖:
? ? ? ? 仔細對比兩個圖,可以發現,噪音幅度大約是3-3.5mVpp,(那個間歇性波紋我稍后解釋),最直觀的就是FFT得到的2Mhz以內的噪音密度明顯下降。之前的測試是13.5uV/div,今天測試是10uV/div,也能明顯看出今天的測試結果明顯比昨天低。但相對的,1Mhz那個尖峰就非常高了,昨天大約是40uV,今天看已經超過了80uV。
? ? ? ? 至于那個間歇性的波紋,可以參考我關閉機器后,示波器的顯示。可以確定這個干擾不是來自于我的板子,而是來自于空間的干擾,頻率和持續時間非常穩定,10ms一次,每次持續3.5ms。幅度會有微小的變化。
????????因此,如何抑制數字電路的噪音,就有了非常明顯的指向,盡量將頻率推高,頻率越高,越容易根治。所以任何芯片間的通訊,盡可能用最高的頻率進行。