天天看點

[51單片機] 以從0開始做4位8段共陰數位管3461AS驅動談細節決定高品質DIY

目錄

<a href="http://www.cnblogs.com/zjutlitao/p/4453570.html#a">1)問題産生</a>

<a href="http://www.cnblogs.com/zjutlitao/p/4453570.html#b">2)失敗嘗試</a>

<a href="http://www.cnblogs.com/zjutlitao/p/4453570.html#c">3)最終方案</a>

<a href="http://www.cnblogs.com/zjutlitao/p/4453570.html#d">4)使用方法</a>

<a href="http://www.cnblogs.com/zjutlitao/p/4453570.html#e">5)知識共享</a>

[51單片機] 以從0開始做4位8段共陰數位管3461AS驅動談細節決定高品質DIY

但是該驅動電路是要有一定的硬體基礎的(如下圖):如2片74HC573。而我這裡隻有幾個4位8段共陰數位管又沒有74HC573,是以就得尋求用51直接驅動的方案了!

[51單片機] 以從0開始做4位8段共陰數位管3461AS驅動談細節決定高品質DIY

失敗操作:直接在相應的引腳間加5伏電壓來測試該數位管是否正常

結果:燒壞了2個3461AS

分析:被第二張圖騙了,以為3461AS可以承受01電平産生的壓差,而真實情況如下圖:在P0口有10K的排阻,然後測量一下電壓終于恍然大悟!

[51單片機] 以從0開始做4位8段共陰數位管3461AS驅動談細節決定高品質DIY

在第二步到第三步之間還找到一個例子:他采用3-8譯碼器然後串聯電阻進行保護。

[51單片機] 以從0開始做4位8段共陰數位管3461AS驅動談細節決定高品質DIY

因為有3-8譯碼器的例子我的直驅的想法得到進一步的驗證,于是綜合上面的分析給出了下面的方案:

[51單片機] 以從0開始做4位8段共陰數位管3461AS驅動談細節決定高品質DIY

同樣的我把關于3461AS封裝起來(如下)

[51單片機] 以從0開始做4位8段共陰數位管3461AS驅動談細節決定高品質DIY

在要使用該功能的檔案中首先包含頭檔案,然後引用DuanMa數組、TempData數組以及用于顯示的Display函數。

[51單片機] 以從0開始做4位8段共陰數位管3461AS驅動談細節決定高品質DIY

然後在想要顯示資料前把資料存儲在TempData中(TempData[0]表示要顯示的第一個數字,這裡把共陰8段數位管顯示從0~F的值存儲在DuanMa數組中。是以要讓第一個數字顯示2則隻要TempData[0]=DuanMa[2])。當在TempData中設定好要顯示的資訊後就可以調用Display函數進行重新整理數位管顯示(Display的第一個參數表示從第幾個數位管開始顯示,例如FirstBit=0表示從第一個數位管開始顯示num位資料)

[51單片機] 以從0開始做4位8段共陰數位管3461AS驅動談細節決定高品質DIY

注:要保證Display有比較快的重新整理頻率

<a href="https://github.com/beautifulzzzz/stc89c51-or-stc89c52" target="_blank">https://github.com/beautifulzzzz/stc89c51-or-stc89c52 </a>

[51單片機] 以從0開始做4位8段共陰數位管3461AS驅動談細節決定高品質DIY

本文轉自beautifulzzzz部落格園部落格,原文連結:http://www.cnblogs.com/zjutlitao/p/4453570.html,如需轉載請自行聯系原作者