![]() |
發布時間: 2021-5-6 15:02
正文摘要:本帖最后由 javastory 于 2021-5-7 11:05 編輯 設計一個8*16的led共陽點陣,行用74ls164,列用74hc154,設計思想是行一次輸出8位數據,列導通,然后這一列就亮,但是現在顯示的效果是全亮,然后一列一列從左向右 ... |
glinfei 發表于 2021-5-7 10:56 圖剛才剛發了,不知道為什么看不到,不過行是陽用164,列是陰用154. 至于說P2=0--15,這個我也是看了很多網上的例子,我考慮是0--15轉成2進制后,用的是4位的編碼,是0000--1111,影響的是P2^0--P2^3的值,后面的164接的P2^4--P2^7不影響,不知道這樣理解是否對? |
沒看到圖,估計列為陽極。我覺得你選的芯片跟你想法不同啊,按你的操作:一是,74ls164初始是全LOW,74hc154初始全H,自然全亮了;二是,你每次操縱154一個腳L,所以逐列關,當然你沒用BCD碼,所以后來有點亂;三是, P2=colcount[col]; 會影響164的clk啊。 |
本帖最后由 javastory 于 2021-5-7 10:05 編輯 birdzhyli 發表于 2021-5-6 22:44 這段代碼我試過P2=0x01,;P2++;和P2=col;故障現象一樣,至于數據類型,你說的是對的,用uchar沒有問題,我是在網上找了很多文章例子去看,這段代碼也是別人用過的,直接復制過來了。 |
雖然沒看出樓主的問題,但我想知道樓主為什么用 P2=colcount[col]; 而不是直接P2=col; col也只用到了16,定義個uchar也夠了,沒必要uint呀 |