我有一個3.5數字7段LED顯示屏,我試圖用Arduino驅動。 Arduino運行帶鎖存器的移位寄存器(M74HC595)。 移位寄存器的8個輸出端通過2000歐姆電阻器進入顯示器的8段引腳。 顯示器的三位控制引腳轉到Arduino上的三個引腳。 顯示屏有一個共陰極,因此當控制引腳爲低電平時,該數字打開,當該數字處於高電平時,該數字關閉。Arduino:複用7段顯示問題
這工作正常,只要我只點亮一個數字,或點亮多個數字具有相同的段,但一旦我嘗試切換兩個或三個數字之間的段,這一切都搞砸了。 不應該有光的部分,而是有一個弱光,這與讀取實際數字有關。
如果我在寫入每個數字之間添加延遲,那麼不需要的光線會變暗一些,但很快,整個事物就會因爲高延遲而閃爍並且無法使用。
我做錯了什麼?
爲了使一個特定的數字,我上設置的Arduino的控制引腳,例如這是我使第一位數:
digitalWrite(digit1, LOW);
digitalWrite(digit2, HIGH);
digitalWrite(digit3, HIGH);
然後推號碼到移位寄存器並將其移動到閂鎖(並且因此到顯示):
digitalWrite(latchPin, LOW);
shiftOut(dataPin, clockPin, MSBFIRST, number);
digitalWrite(latchPin, HIGH);
這是我的方案:
你是對的!它只需切換操作順序,以便在設置鎖存器後啓用該數字。謝謝 – user2503048
不客氣。如果解決了你的問題,不要忘記接受答案。 –