例.利用Proteus仿真一塊16×16LED點陣,并在其上循環顯示漢字“鄭州大學”。 Proteus中只有5×7和8×8等LED點陣,并沒有16×16LED點陣,而在實際應用中,要良好地顯示一個漢字,則至少需要16×16點陣。下面我們就首先介紹使用8×8點陣構建16×16點陣的方法,并構建一塊16×16LED點陣,用于本例的顯示任務。 首先,從Proteus元件庫中找到“MATRIX-8X8-RED”元器件,并將四塊該元器件放入Proteus文檔區編輯窗口中。此時需要注意,如果該元器件保持初始的位置(沒有轉動方向),我們要首先將其左轉90°,使其水平放置,那么此時它的左面8個引腳是其行線,右邊8個引腳是其列線(當然,如果你是將右轉,則右邊8個引腳是行線)。然后我們將四個元器件對應的行線和列線分別進行連接,使每一條行線引腳接一行16個LED,列線也相同。并注意要將行線和列線引出一定長度的引腳,以便下面我們使用。 連接好的16×16點陣如下圖所示: 連接成如上圖的16×16點陣只是第一步,這樣分開的數塊并不能達到好的顯示效果,下面我們要將其進一步組合。組合實際上很簡單,首先選中如上圖中右側的兩塊8×8點陣,然后拖動并使其與左側的兩塊相并攏,如下圖所示: 我們可以看到原來的連線已經自動隱藏了,至于線上的交點,我們不要去動。然后,我們再來最后一步,選中下側的兩塊點陣,并拖動使其與上側的兩塊并攏,最后的效果如下圖所示: 可以看到,原來雜亂的連線現在已經幾乎全部隱藏了,一塊16×16的LED點陣做成了。需要注意,做成的LED點陣的行線為左側的16個引腳,下側的16個引腳為其列線,而且其行線為高電平有效,列線為低電平有效。然后,我們將其保存,以便以后使用。 制作好16×16LED點陣,我們接下來來進行本例的實驗。 由于本例的軟件程序需要首先注意硬件連接,所以,我們首先來看一下本例的電路圖。電路圖中用到了74159集成芯片,其功能是將4位輸入譯為16輸出(低電平有效),剛好滿足我們的要求。電路圖中的其他元器件我們在以前的仿真實例中都已介紹過,此處不再贅述。最終完成的電路圖如下所示: 繪制好電路圖,下面我們來編輯程序源文件,如下圖: 編輯好源文件,我們就可以編譯、鏈接并產生源代碼了,生成源代碼以后,打開我們剛才在Proteus中繪制好的電路圖,并將生成的源代碼裝入單片機進行仿真。 仿真中的一個畫面如上面的電路圖所示。也可能你的畫面和上圖中的不同,可能會有紅綠小點閃爍,事實上那是Proteus中實時顯示的電平信號。我們可以在 “System”菜單下點擊“Set Animation Options...”子菜單來打開“Animated Circuits Configuration”對話框,然后將“Animation Options”選項下面的“Show Logic State of Pins?”復選框去掉選中來改變設置。如下圖所示: 改變設置以后,重新仿真運行,是否就看到了和上圖中一致的效果了。 |