課程設計報告
課程名稱數字系統與邏輯設計
課題名稱 16*16點陣顯示
專業通訊工程
班級學號
姓名指導教師喬匯東胡瑛
2023年 7月 2日
湖南工程學院
課程設計任務書
課程名稱數字系統與邏輯設計
課題 16*16點陣顯示
專業班級通訊工程1001班
學生姓名
學號指導老師喬匯東胡瑛
審批喬匯東
任務書下達日期 2012 年 6月 23日
任務完成日期 2012 年 7月 2日
《數字系統與邏輯設計》課程設計任務書
一 、設計目的
全面熟悉、掌握vhdl語言基本知識,掌握利用vhdl語言對常用的的組合邏輯電路和時序邏輯電路程式設計,把程式設計和實際結合起來,熟悉編制和除錯程式的技巧,掌握分析結果的若干有效方法,進一步提高上機動手能力,培養使用設計綜合電路的能力,養成提供文件資料的習慣和規範程式設計的思想。
二、設計要求
1、設計正確,方案合理。
2、程式精煉,結構清晰。
3、設計報告以上,含程式設計說明,使用者使用說明,源程式清單及程式框圖。
4、上機演示。
5、有詳細的文件。文件中包括設計思路、設計**程式、**結果及相應的分析與結論。
三、進度安排
第二十周星期一: 課題講解,查閱資料
星期二: 總體設計,詳細設計
星期三: 程式設計,上機除錯、修改程式
星期四: 上機除錯、完善程式
星期五: 答辯
星期六-星期天:撰寫課程設計報告
附:課程設計報告裝訂順序:封面、任務書、目錄、正文、評分、附件(a4大小的圖紙及程式清單)。
正文的格式:一級標題用3號黑體,二級標題用四號宋體加粗,正文用小四號宋體;行距為22。
正文的內容:一、課題的主要功能;二、課題的功能模組的劃分(要求畫出模組圖);三、主要功能的實現;四、系統除錯與**;五、總結與體會;六、附件(所有程式的原**,要求對程式寫出必要的注釋);七、評分表。
目錄一. 16*16點陣顯示的總體設計 1
1.1 16*16點陣顯示 1
1.2 基本設計思想 1
二. 16*16點陣顯示的功能實現 3
2.1 系統的總體框圖 3
2.2 系統的流程圖 3
2.3 系統各功能模組實現 4
三.系統的除錯與** 8
四.總體與體會 9
五附件 10
六評分表 16
本實驗主要完成漢字字元在led 上的顯示,16*16 掃瞄led 點陣的工作原理與8 位掃瞄數碼管類似,只是顯示的方式與結果不一樣而已。下面就本實驗系統的16*16 點陣的工件原理做一些簡單的說明。16*16 點陣由此256 個led 通過排列組合而形成16 行*16 列的乙個矩陣式的led 陣列,俗稱16*16 點陣。
本實驗的示例程式依次顯示的是「湖南工程學院」,要求每隔一秒換下乙個字顯示。
單個的led 的電路如下圖11-1 所示:
圖11-1 單個led 電路圖
由上圖可知,點陣內的二極體間的連線都是行共陽,列共陰。本實驗採用共陰,當二極體的共陽極為高電平,共陰極為低電平時,所接點發光;反之處於截止狀態,不放光。本實驗採取行掃瞄方式,用列給文字資訊,利用週期為1s的脈衝來控制所顯示的字。
即對於單個led 的電路圖當rn 輸入乙個高電平,同時cn 輸入乙個低電平時,電路形成乙個迴路,led 發光。也就是led 點陣對應的這個點被點亮。16*16 點陣也就是由16 行和16 列的led 組成,其中每一行的所有16 個led的rn 端併聯在一起,每一列的所有16 個led 的cn 端併聯在一起。
通過給rn 輸入乙個高電平,也就相當於給這一列所有led 輸入了乙個高電平,這時只要某個led 的cn 端輸入乙個低電平時,對應的led 就會被點亮。具體的電路如下圖11-2所示:
圖11-2 16*16 點陣電路原理圖
在點陣上顯示一字元是根據其字元在點陣上的顯示的點的亮滅來表示的,如下圖11-3 所示:
圖11-3 字元在點陣上的顯示
在上圖中,顯示的是乙個「漢」字,只要將被「漢」字所覆蓋的區域的點點亮,則在點陣中就會顯示乙個「漢」字。根據前面我們所介紹的點陣顯示的原理,當我們選中第一列後,根據要顯示漢字的第一列中所需要被點亮的點對應的rn置為高電平,則在第一列中需要被點亮的點就會被點亮。依此類推,顯示第二列、第三列……第n 列中需要被點亮的點。
然後根據人眼的視覺原理,將每一列顯示的點的間隔時間設為一定的值,那麼我們就會感覺顯示乙個完整的不閃爍的漢字。同時也可以按照這個原理來顯示其它的漢字。下圖11-4 是乙個漢字顯示所需要的時序圖:
圖11-4 顯示時序圖
否是是 否
是否是否
1.六進製制計數器當每乙個時鐘上公升沿到來時,計數器就記一次數。其程式如下:
library ieee;
useuseentity jy is
port(clk,rst:in std_logic;
din:buffer std_logic_vector(3 downto 0));
end jy;
architecture b of jy is
begin
process(clk,rst)
begin
if rst='1' then din<="0000";
elsif clk'event and clk='1' then
if din=7 then din<="0000" ;
else din<=din+1;
end if;
end if;
end process;
end b;
其**波形:
為列驅動控制器,該模組控制所亮的行,當輸出為***時,給點陣的第一行高電平,輸出為***時,給點陣的第二行高電平,依次類推,逐次給每行高電平。
其程式:
a:process(hl)
begin
case hl is
when "0000"=> row<="1000000000000000";
when "0001"=> row<="0100000000000000";
when "0010"=> row<="0010000000000000";
when "0011"=> row<="0001000000000000";
when "0100"=> row<="0000100000000000";
when "0101"=> row<="0000010000000000";
when "0110"=> row<="0000001000000000";
when "0111"=> row<="0000000100000000";
when "1000"=> row<="0000000010000000";
when "1001"=> row<="0000000001000000";
when "1010"=> row<="0000000000100000";
when "1011"=> row<="0000000000010000";
when "1100"=> row<="0000000000001000";
when "1101"=> row<="0000000000000100";
when "1110"=> row<="0000000000000010";
when "1111"=> row<="0000000000000001";
when others=> row<="0000000000000000";
end case;
EDA實驗報告 16
和老師一起在eda技術知識的海洋中航行,不知不覺就乙個學期了,這段時間中,在老師的引導下,明白了現代電子設計的核心就是eda技術。它是依賴功能強大的計算機,在eda工具軟體平台上,對以硬體描述語言hdl為系統邏輯描述手段完成的設計檔案,自動地完成邏輯編譯 邏輯化簡 邏輯分割 邏輯綜合 結構綜合 布局...
16乘16點陣設計
摘要本設計使用簡單微控制器at89c51作為主控制模組,利用簡單的外圍電路來驅動16 16的點陣led顯示屏。在本設計中主要用兩個74hc595來驅動16 16點陣顯示屏的列,用at89c51來驅動16 16點陣顯示屏的行,可以最終實現 十六乘十六點陣可調速顯示屏設計 十五個漢字的自動左移,而且它們...
PCI E 16X顯示卡維修流程
pci e顯示卡由北橋控制,插16x顯示卡 供電 a2 a3腳12v,a9腳3.3v 由atx電源提供 時鐘訊號 a13 a14腳,頻率100m電壓0.2 0.5v 主復位訊號 a11腳,電壓3v 5v 由南橋或io提供 不正常時,io易壞 系統管理匯流排 b5 b6腳,電壓3.3v左右 由io或南...