欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 9962|回復: 2
收起左側

基于51單片機16×16點陣設計與制作詳細說明

[復制鏈接]
ID:56662 發表于 2013-11-7 00:16 | 顯示全部樓層 |閱讀模式
吐血分享!!!這可是我了一個多月的研究成果。16×16LED顯示屏的制作,雖然這已不是所謂的“新鮮事物”,淘寶上也有在賣,但這是我自己的作品!另外我又在點陣顯示的基礎上加了一個蜂鳴器,用來輸出聲音,比較方便。。。

先說一下為什么會做這個,我是在網上看到一個視頻,是講一個老外制作了一個8×8×8的立體LED,也叫光立方。看的我是熱血沸騰,也想自己制作一個,但限于自己的知識有限,而且我所學習的51單片機根本達不到控制光立方的計算速度,所以,就想先做一個平面的練練手,等以后再向光立方發展!

先說一下此次制作的花費(此處為我自己在淘寶網上購買時的報價):
LED(5mm) 280×0.1=28元(一般會多買上十幾二十個的,萬一與壞的不就悲劇咯……);
74LS154(二手) 1×4.5=4.5元;
74HC595 2×0.65=1.3元;
萬能板 (18×30cm)1×8.3=8.3元;
再其他的像晶振、三極管、電容電阻的就都幾分或幾毛錢一個,很便宜的。所以總共是也就60元左右吧……
好了,廢話少說,下面就讓我們進行制作吧!

16×16點陣顧名思義就是16×16也就是256個LED,而用51單片機控制的話,并不是像我之前所想的簡單的用單片機上的32個I/O接口,16個控制行,16個控制列。因為單片機每個P口總的輸出電流是有一定限制的,而點亮一個LED的電流在3—10MA,要是一行或一列LED都點亮的話,初步估計是20MA×16=320MA,單片機是承受不了的。所以就得用到三極管的放大作用了,用8550就可以實現對LED進行驅動。

當然在對LED的操作并不是簡單的用I/O接口去控制亮、滅,因為我們想讓它可以顯示文字、符號甚至動畫,簡單的靜態顯示是遠遠達不到我們的要求的,這就得用動態顯示。動態掃描的意思簡單地說就是逐行輪流點亮,具體就16×16的點陣來說,我們把所有同一行的發光管的陽極連在一起,把所有同一列的發光管的陰極連在一起(共陽的接法),先送出對應第一行發光管亮滅的數據并鎖存,然后選通第一行使其燃亮一定的時間,然后熄滅;再送出第二行的數據并鎖存,然后選通第二行使其燃亮相同的時間,然后熄滅;…… 第十六行之后又重新燃亮第一行,這樣反復輪回。當這樣輪回的速度足夠快(每秒24次以上),由于人眼的視覺暫留現象,我們就能看到顯示屏上穩定的圖形了。

在采用掃描方式進行顯示時,每行有一個行驅動器,各行的同名列共用一個列驅動器。顯示數據通常存儲在單片機的存儲器中,按8位一個字節的形式順序排放。顯示時要把一行中各列的數據都傳送到相應的列驅動器上去,這就存在一個顯示數據傳輸的問題。采用串行傳輸的方法,控制電路可以只用一根信號線,將列數據一位一位傳往列驅動器,在硬件方面無疑是十分簡單、經濟的。但是,串行傳輸過程較長,數據按順序一位一位地輸出給列驅動器,只有當一行的各列數據都已傳輸到位之后,這一行的各列才能并行地進行顯示。這樣,對于一行的顯示過程就可以分解成列數據準備(傳輸)和列數據顯示兩個部分。這樣一來,時間就有點長了,會對LED的亮度產生影響。

解決串行傳輸中列數據準備和列數據顯示的時間矛盾問題,可以采用重疊處理的方法,即在顯示本行各列數據的同時,傳送下一行的列數據。為了達到重疊處理的目的,列數據的顯示就需要具有鎖存功能。經過上述分析,可以歸納出列驅動器電路應具備的主要功能。對于列數據準備來說,它應能實現串入并出的移位功能;對于列數據顯示來說,應具有并行鎖存的功能。這樣,本行已準備好的數據打入并行鎖存器進行顯示時,串并移位寄存器就可以準備下一行的列數據,而不會影響本行的顯示。所以在行控制上選用74LS154,在列控制上選用74HC595。下面我們來說一下這兩個芯片的功能與用法。關于這兩個芯片的具體資料由于受篇幅的影響就不在此細說了,可以上網搜索,有中文資料。這里只是大體說一下。

74LS154是4/16線譯碼器,由74LS154譯碼后生成16條行選通信號線,再經過驅動器驅動對應的行線,一條行線要帶動16列的LED進行顯示,這樣就可以實現對行的控制了,當然還要考慮電流的問題啦,也就是加三極管8550。

74HC595是比較復雜的,詳細說一下吧。的輸入側有8個串行移位寄存器,每個移位寄存器的輸出都連接一個輸出鎖存器。引腳14是串行數據的輸入端。引腳11是移位寄存器的移位時鐘脈沖,在其上升沿發生移位,并將14引腳的下一個數據打入最低位。移位后的各位信號出現在各移位寄存器的輸出端,也就是輸出鎖存器的輸入端。12引腳是輸出鎖存器的打入信號,其上升沿將移位寄存器的輸出打入到輸出鎖存器。引腳13是輸出三態門的開放信號,只有當其為低時鎖存器的輸出才開放,否則為高阻態。10引腳是移位寄存器的清零輸入端,當其為低時移位寄存器的輸出全部為零。由于11引腳和12引腳兩個信號是互相獨立的,所以能夠做到輸入串行移位與輸出鎖存互不干擾。芯片的輸出端為Q0~Q7,最高位Q7可作為多片74HC595級聯應用時,向上一級的級聯輸出。但因QH受輸出鎖存器打入控制,所以還從輸出鎖存器前引出了Q7',這里作為與移位寄存器完全同步的級聯輸出,已完成2塊595的串聯使用。

下面說一下硬件連接圖。因為實物我還沒做出來,等實物完成后再后續上傳程序吧、、、
總電路圖:


因為DXP篇幅太大,不清楚,下面是各個部分的硬件連接圖。
單片機最小系統:


晶振采用24MHZ的,以此來獲得更高的刷新頻率,使顯示更加穩定。
74LS154連接圖:


這里74LS154對LED進行行控制。
74HC595連接圖:


這里74HC595對LED進行列控制。
好了,整個的理論制作過程就是這些了,等原件到了我把實物焊接好以后,還會有后續的程序上傳。會有驚喜喲!

未完待續…………

回復

使用道具 舉報

ID:304731 發表于 2018-4-11 15:21 | 顯示全部樓層
你的后續呢,我也用的595和154做畢設,程序寫不出來,能給我發一下你的資料嗎
回復

使用道具 舉報

ID:309277 發表于 2018-4-17 09:41 | 顯示全部樓層
上傳的圖呢?
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表