-
首先,您需要了解點陣顯示的原理。
8*8點陣應顯示圖片,通常以掃瞄的形式顯示。 晶格內部發光陣列每一排的陰極連線在一起,形成一條共同的陰極線; 每個縱向陽極連線在一起,形成一條共同的正極線。 這樣,8*8點陣共有8條共陰線和8條共陽線。
詳情請參考格仔內部結構示意圖!
掃瞄過程:例如,採用普通陽線作為掃瞄線,即每次其中一根正極線通電,其他公線斷電。 這樣,LED在白線上是否亮起取決於8根黑線的水平。
快速掃瞄正線,每次掃瞄都會改變負線的相應水平,實現**影象的顯示。
在您給出的程式中,很明顯 tabp2 用於形成掃瞄輸出。 自己分析是否每次只有值 0 發生了變化。 這是利用查表方法獲取掃瞄功能,每次讓io口(一組)在表中輸出乙個值,最後形成掃瞄動作。
至於tabp0,它是與每條掃瞄線的輸出相對應的心形資料表。 每次掃瞄輸出乙個 TabP2 值,該值對應於資料 Io 輸出的 Tabp0 值。
至於你說的,“8x8點陣圖裡有P23、P25、LP04、LP06介面,其中LP04和LP06指的是微控制器的P04和P06介面? “就我個人而言,我認為你應該有能力自己分析這些電路,而不僅僅是複製它們。 只有試著自己去理解它,才能在未來做出更與眾不同的東西,而不僅僅是停留在心形的展示上。
-
5月1日單機微控制器。 我沒用過,幫不了你,對不起。
-
您可以在不先通過電晶體的情況下嘗試一下......
-
將點陣圖儲存在**中,一次取乙個數字,並重複顯示。
-
你好! 點陣需要多大?
-
i 等於 7 後,您不能讓 i++ 再次使 i=0 從 0 掃瞄,否則,我將停在 8。
-
好像在滾動中間的8**,看看陰碼和陽碼是不是錯了,排欄是不是錯了。
delay(1000);不知道你有多少延遲,如果是1000ms,就有點大了,不到100ms也差不多。
掃瞄一次只需要16ms,你敢在中間停1000ms嗎?
我個人認為,如果這個延遲太小,就不會有滾動效果,如果太大,會導致其他行很暗,只有最後一行很亮。
因此,只需消除此延遲並重複每次掃瞄 5 7 次,即 80 110 毫秒,然後 I++ 並將影象向上推。
在 for(z=0; z<8;z++) 替換為另一層 for 迴圈。
for(m=0;m<10;m++)m 值是通過實驗確定的。
另外,8點陣的顯示效果會不是很好,尤其是點之間的間隙太大,有時候不仔細看,真的看不清在顯示什麼。
-
很少有人會幫忙直接看**。
-
<>是這種螢幕? 只有資訊,可以參考,值得稱讚的我,。 名字。 目標。 踮起腳尖。 鵝。 數。。
AT89C52 C 系列是早期產品。 沒有了程式設計和看門狗,為了區別於早期產品,將新產品改為具有看門狗和ISP功能的AT89S52,ISP就是程式設計的意思。早期是晶格的專利技術,現在被大量使用。 >>>More
定義 uint unsigned int 等效於在程式集中定義乙個 16 位整數變數 n,該變數分為上層 8 位 nh 和下層 8 位 nl >>>More
這並不難,我就是這樣學會的。 只要找到正確的路,還是可以避免那麼多彎路的,我上學的時候走了很多彎路,靠自己一步一步想出來。您可以新增我了解詳細資訊,我會幫助您!
51個絕對不夠! 學ARM沒關係,買開發板學,學ARM學作業系統也沒關係! Arm 和作業系統可以這樣比較: >>>More