16乘16點陣的畢業設計 利用微控制器原理

2022-12-02 13:12:02 字數 4244 閱讀 7074

16*16點陣設計

摘要微控制器是為各類專用控制器而設計的通用或專用的微型計算機系統,高密度整合了普通計算機微處理系統,一定容量的ram和rom以及輸入/輸出介面,定時器等電路於一塊晶元上構成的。它的優點是體積小、重量輕、抗干擾能力強,對環境要求不高,**低廉,可靠性高,靈活性好,開發較為容易。在現代工業控制和一些智慧型化儀器儀表中,越來越多的場所需要用位圖形來顯示漢字,漢字顯示屏也廣泛應用到汽車報站器,廣告屏等。

led顯示屏分為**顯示屏和**顯示屏,均由led矩陣塊組成。用點陣方式構成圖形或文字,是非常靈活的,可以根據需要任意組成和變化,只要設計好合適的資料檔案,就可以得到滿意的顯示效果,因而採用點陣式**顯示屏顯示經常需要變化的資訊是非常有效的。本次課程設計實現led點陣屏核心功能即漢字的多樣化顯示。

加深對微控制器課程的全面認識和掌握,對微控制器課程的應用進一步的了解。

將微控制器軟硬體結合起來對程式進行編輯,校驗,鍛鍊實踐能力和理論聯絡實際的能力。

關鍵詞:微控制器,led顯示屏,點陣

目錄1 課題描述 1

2 晶元介紹 1

2.1 51系列微控制器簡介 2

2.2 74ls154晶元介紹 6

2.3 74ls373晶元介紹 7

3 硬體設計 8

4 軟體設計 10

4.1 微控制器延時子程式 10

4.2 程式流程圖 12

4.3 程式** 12

5 除錯或效能分析 15

總結 16

致謝 17

參考文獻 18

單片微型計算機簡稱微控制器,它是為各類專用控制器而設計的通用或專用的微型計算機系統。自20世紀70年代問世以來,以極其高的價效比受到人們的重視和關注,所以應用很廣,發展很快。在現代工業控制和一些智慧型化儀器儀表中,越來越多的場所需要用位圖形來顯示漢字,漢字顯示屏也廣泛應用到汽車報站器,廣告屏等。

所以研究led顯示有實用意義。現代led的發展很快,很多研究領域已經非常深刻,實際情況是:很多相關的知識已經遠遠超出我們在校學生的能力範圍,所以在本設計中只是簡單的研究一下用微控制器驅動的led顯示移動的漢字。

共有兩個目的:一是製作乙個簡單實用的顯示文字的led點陣;二是通過製作led點陣增強對led點陣的了解和應用,以及複習和鞏固微控制器知識。

本次設計的16x16點陣需要32個驅動,分別為16個列驅動及16個行驅動。每個行與每個列可以選中乙個發光管,共有256個發光管,採用動態驅動方式。每次顯示一行後再顯示下一行。

led點陣總體框圖如圖1所示,點陣電路大體上可以分成微機本身的硬體、顯示驅動電路、控制訊號電路三部分。控制電路部分包括乙個51cup和一些外圍電路。在整個電路當中此控制電路部分相當於乙個上位機,它負責控制整個

電路以及相應的程式的執行、與pc機的序列通訊、以及給屏體電路部分傳送命令。點陣顯示屏體以及它的行和列的各個驅動電路。由於兩部分的電路在製板時可以放在一起,所以可以將其字型檔放到控制電路部分使用序列通訊方式來與屏體電路部分進行資料和命令的傳送。

此顯示電路採用掃瞄方式進行顯示時,每行有乙個行驅動器,各行的同名列共用乙個列驅動器。由行解碼器給出的行選通訊號,從第一行開始,按順序依次對各行掃瞄(把該行與電源的一端接通)。另一方面,根據各列鎖存的資料,確定相應的列驅動器是否將該列與電源的另一端接通。

接通的列就在該行該列點燃相應的ledl未接通的列所對應的led熄滅。可通過掃瞄輸出口的控制實現顏色的轉換。

圖1 點陣的總體框圖

2.1 51系列微控制器簡介

微控制器(microcontroller,又稱微處理器)是在一塊矽片上整合了各種部件的微型機,這些部件包括**處理器cpu、資料儲存器ram、程式儲存器rom、定時器/計數器和多種i/o介面電路。

8051微控制器的基本結構見圖2。

圖2 8051微控制器的基本結構

8051系列的內部結構可以劃分為cpu、儲存器、並行口、序列口、定時器/計數器、中斷邏輯幾部分。

(1)**處理器

8051的**處理器由運算器和控制器構成,其中包括若干特殊功能暫存器(sfr)。算術邏輯單元alu能對資料進行加、減、乘、除等算術運算;「與」、「或」、「異或」等邏輯運算以及位操作運算。

alu只能進行運算,運算的運算元可以事先存放到累加器acc或暫存器tmp中,運算結果可以送回acc或通用暫存器或儲存單元中,累加器acc也可以寫成a。b暫存器在乘法指令中可以用來存放乙個乘數,在除法指令中用來存放除數,運算後b中為部分運算結果。alu主要用於完成二進位制資料的算術和邏輯運算,並通過對運算結果的判斷影響程式狀態字暫存器psw中有關位的狀態。

程式狀態字psw是個8位暫存器,用來寄存本次運算的特徵資訊,用到其中七位。psw的格式如下所示,其各位的含義如表1。

表1程式狀態字psw

cy:進製標誌。在進行加法或減法運算時,若運算結果的最高位有進製或借位,cy=1,否則cy=0,在執行位操作指令時,cy作為位累加器。

ac:輔助進製標誌。在進行加法或減法運算時,若低半位元組向高半位元組有進製或借位, ac=1,否則ac=0,ac還作為bcd碼運算調整時的判別位。

f0:使用者可設定的標誌位,可置位/復位,也可供測試。

rs1和rs0:工作暫存器組選擇,如表2所示。

表2 rs1和rs0工作暫存器組選擇

ov:溢位標誌。當兩個帶符號的單位元組數進行運算,結果超出-128~+127的範圍時,ov=1,表示有溢位,否則ov=0表示無溢位。

p:奇偶校驗標誌。每條指令指行完畢後,都按照累加器a中「1」的個數來決定p值,當「1」的個數為奇數時,p=1,否則p=0。

psw中的d1位為保留位,對於8051來說沒有意義,對於8052來說為使用者標誌,與f0相同。

控制器包括程式計數器pc、指令暫存器、指令解碼器、資料指標dptr、堆疊指標sp、緩衝器以及定時與控制電路等。控制電路完成指揮控制工作,協調微控制器各部分正常工作。

程式計數器pc:當一條指令按pc所指向的位址從程式儲存器中取出之後,pc的值會自動增量,即指向下一條指令。

堆疊指標sp:用來指示堆疊的起始位址。80c51微控制器的堆疊位於片內ram中,而且屬於「上長型」堆疊,復位後sp被初始化為07h,使得堆疊實際上由08h單元開始。

指令解碼器:當指令送入指令解碼器後,由解碼器對該指令進行解碼,cpu根據解碼器輸出的電平訊號使定時控制電路產生執行該指令所需要的各種控制訊號。

資料指標暫存器drtr:它是乙個16位暫存器,由高位位元組dph和低位位元組dpl組成,用來存放16位資料儲存器的位址,以便對片外64kb的資料ram區進行讀寫操作。片內ram有256個位元組,其中00h~7fh位址空間是直接定址區,該區域內從00h~1fh位址為工作暫存器區,安排了4組工作暫存器,每組都為r0~r7,在某一時刻,cpu只能使用其中任意一組工作暫存器,由程式狀態字psw中rs0和rs1的狀態決定。

(2)儲存器組織

8051微控制器在物理上有三個儲存空間:片內資料儲存器ram 、片外資料儲存器ram 、程式儲存器rom 。

程式儲存器rom位址空間為64kb,片外資料儲存器ram也有64kb的定址區,在位址上是與rom重迭的。8051微控制器通過不同訊號來選通rom或ram。當從外部rom中取指令時,採用選通訊號psen,而從外部ram中讀寫資料時則採用讀rd和寫wr訊號或來選通,因此不會因位址重迭而發生混亂。

片內ram的20h~2fh位址單元為位定址區,其中每個位元組的每一位都規定了位位址。每個位址單元除了可進行位元組操作之外,還可進行位操作。

片內ram的80h~ffh位址空間是特殊功能暫存器sfr區,對於51子系列在該區域內安排了21個特殊功能暫存器,對於52子系列則在該區域內安排了26個特殊功能寄器,同時擴充套件了128個位元組的間接定址片內ram,位址也為80~ffh,與sfr區位址重迭。

8051的儲存器組成結構如圖3所示。

圖3 8051的儲存器組成結構

(3)管腳說明

vcc:供電電壓。

gnd:接地。

p0口(p0.0~p0.7):該埠為漏極開路的8位準雙向口,它為外部低8位位址線和8位資料線復用埠驅動能力為8個lsttl負載。

p1口(p1.0~p1.7):它是乙個內部帶上拉電阻的8位準雙向i/o口,p1口的驅動能力為4個lsttl負載。

p2口(p2.0~p2.7):它為乙個內部帶上拉電阻的8位準雙向i/o口,p2口的驅動能力也為4個lsttl負載。在訪問外部程式儲存器時,作為高8位位址線。

p3口(p3.0~p3.7):為內部帶上拉電阻的8位準雙向i/o口,p3口除了作為一般的i/o口使用之外,每個引腳都具有第二功能。

p3口也可作為at89c51的一些特殊功能口,如下所示:

p3.0 rxd(序列輸入口)

p3.1 txd(序列輸出口)

p3.2 /int0(外部中斷0)

p3.3 /int1(外部中斷1)

16乘16點陣設計

摘要本設計使用簡單微控制器at89c51作為主控制模組,利用簡單的外圍電路來驅動16 16的點陣led顯示屏。在本設計中主要用兩個74hc595來驅動16 16點陣顯示屏的列,用at89c51來驅動16 16點陣顯示屏的行,可以最終實現 十六乘十六點陣可調速顯示屏設計 十五個漢字的自動左移,而且它們...

EDA 16x16點陣顯示要點

課程設計報告 課程名稱數字系統與邏輯設計 課題名稱 16 16點陣顯示 專業通訊工程 班級學號 姓名指導教師喬匯東胡瑛 2012年 7月 2日 湖南工程學院 課程設計任務書 課程名稱數字系統與邏輯設計 課題 16 16點陣顯示 專業班級通訊工程1001班 學生姓名 學號指導老師喬匯東胡瑛 審批喬匯東...

給經常修理電腦的朋友16點忠告

給經常修理電腦的朋友16點忠告.txt你媽生你的時候是不是把人給扔了把胎盤養大?別把蝦公尺不當海鮮。別把蝦公尺不當海鮮。給經常修理電腦的朋友16點忠告 1 首先記住這句話 永遠不要承認自己是高手,因為這個稱號是要付出代價的。2 接到陌生 後,一定要問清楚對方有什麼事情,然後再告訴他 她 當前你目前所...