南京郵電大學通達學院
課程設計實驗報告
實驗名稱基於8255的lcd顯示的動態顯示器設計
班級080061
學號08006129
姓名卓曉寒
指導老師林建中
開課時間 2011/2012學年, 第一學期 _
基於8255的lcd動態顯示器設計
一、 設計要求
能夠學會利用proteus軟體的mcs51微控制器**學習,根據提供的參考工程,在proteus平台自己重新設計實驗電路所需要的電氣原理圖,並在此基礎上編寫相對應的程式,實現其功能,學習proteus軟體的使用,其中包括原理圖器件的選取、原理圖的電氣連線、程式的編寫編譯以及執行,並能查出其錯誤等。
二、 實驗內容
設計一基於8255的lcd動態顯示器
三、 實驗要求
1. 用數碼管或lcd正常顯示數字「12345678」。
2. 通過按鍵可改變顯示方式。
3. 設計顯示屏的動態效果,用10個按鍵,每鍵對應一種滾動技術。
另註,實驗發揮部分:
1. 設計所有動作的聯合效果。
2. 設計二個變速按鍵,可多級改變滾動速度。
3. 設計一台魔術電子種,採用自動變換,隨機組合,資料每10秒變換一次。
動態顯示格式:
1. 靜止
2. 整體閃爍
3. 單字閃爍
4. 整體向前、向後滾動
5. 單字移動
6. 兩邊向中間壓縮
7. 中間向兩邊擴張
8. 上下壓縮
9. 文字上下滾動
10. 組合動作(每一字元執行上述乙個動作,並同時運動)
四、 實驗儀器及實驗環境
(1)586微型計算機系統
(2)proteus**軟體
(3)medwin軟體
(4)微控制器開發系統
五、 設計思路
根據實驗給出的要求,我們選擇了lm016llcd進行動態顯示。並通過按鍵切換不同的功能,來達到分別顯示各種要求的動態效果。
實驗要求進行檢控式lcd動態顯示。定時器t0作為每0.01秒加一的定時器;題目中的要求是用十種動態效果,由於本人對微控制器研究膚淺加之有直接可以輸入的p1埠。
故將監控調為八種功能,對應的分別為:
1. 靜止
2. 整體閃爍
3. 單字閃爍
4. 整體向前、向後滾動
5. 單字移動
6. 兩邊向中間壓縮
7. 中間向兩邊擴張
8. 上下壓縮
9. 文字上下滾動
10. 組合動作(每一字元執行上述乙個動作,並同時運動)
六、 實驗過程
本次課程設計是在理論課程的基礎上,目的在於培養我們的動手能力,通過電路設計、理論計算、實際程式設計、除錯、測試、分析查詢故障,解決在實際設計中的問題,使設計好的電路能正常工作,並可能結合實際的實驗板進行**測試。在此次課題設計的過程中,我們人員分配為兩人一組,並由指導老師分發課題。我們的課題為「基於8255的lcd動態顯示器設計」。
在考慮本次設計過程中,依據設計基本要求,並且基於8255通用可程式設計器件等條件,我們把8255器件用來擴充套件i/o口,以備外接一4x4鍵盤,以滿足通過10個按鍵來控制10種動態顯示,以及通過該i/o口外接一lcd顯示器(當然,實驗中我們發現不用8255擴充套件i/o口,微控制器at89c51的四個i/o埠已能滿足該實驗需要)。為了能讓各器件間聯絡起來我們又新增了一些邏輯器件,如:與非門等以及74hc573位址鎖存器等。
最終設計的電路圖如圖(1):
圖(1)
圖中主要器件如表(a):
表(a)
其中主要部分器件使用說明如下:
i .4x4矩陣式鍵盤識別技術
a) 鍵盤鍵號圖
用at89c51的並行口p1接4×4矩陣鍵盤,以p1.0-p1.3作輸入線,以p1.4-p1.7作輸出線;對應的按鍵的序號排列如圖(2)。
圖(2)
b) 4×4矩陣鍵盤識別處理
每個按鍵有它的行值和列值,行值和列值的組合就是識別這個按鍵的編碼。矩陣的行線和列線分別通過兩並行介面和cpu通訊。每個按鍵的狀態同樣需變成數字量「0」和「1」,開關的一端(行線)通過電阻接vcc,而接地是通過程式輸出數字「0」實現的。
鍵盤處理程式的任務是:確定有無鍵按下,判斷哪乙個鍵按下,鍵的功能是什麼;還要消除按鍵在閉合或斷開時的抖動。兩個並行口中,乙個輸出掃瞄碼,使按鍵逐行動態接地,另乙個並行口輸入按鍵狀態,由行掃瞄值和回饋訊號共同形成鍵編碼而識別按鍵。
c) 鍵盤掃瞄程式框圖
wait
沒有沒有
有有沒有沒有
有有沒有沒有
有有沒有沒有
有有wait
注:在上圖中呼叫相應按鍵識別子程式轉入顯示子程式
ii . 8255通用可程式設計器件
8255是一種通用的可程式設計並行i/o介面電路,在微控制器應用系統中被廣泛用作可程式設計外部i/o並行介面。
8255的結構及其引腳:
8255有3個8位的並行口pa、pb、pc。8255的引腳如左圖所示。圖中有關引腳含義如下:
① d0-d7:雙向三態資料匯流排;
② cs:選片訊號輸入線,低電平有效;
③ reset:復位訊號輸入線,高電平時有效,復位後,pa口、pb口、pc口均為輸入方式;
④ pa、pb、pc:3個8位i/o口;
⑤ rd:讀選通訊號輸入線,低電平時有效;
⑥ wr:寫選通訊號輸入線,低電平時有效;
⑦ a1,a0:埠位址輸入線,用於選擇內部埠暫存器;
⑧ vcc:電源+5v;
gnd:地線。
下表列出了cpu對8255埠的定址和操作狀態:
由總圖可以看出,a、b、c口的埠位址取決於a15(p2.7),和低位a1、a0,本次設計採用資料匯流排到a口,因此則a的埠位址為(0100)b,本次在設計中採取7ffch。
七、 部分實驗效果圖
1) 靜止
2) 兩邊向中間壓縮
3) 整體向前、向後滾動
八、 實驗程式
c語言:
庫檔案#include<>
#include<>
巨集定義#define uint unsigned int
#define uchar unsigned char
晶元埠位址定義
#define com8255 xbyte[0x7fff8255的命令口
#define pa8255 xbyte[0x1fff8255的pa
#define pb8255 xbyte[0x3fff8255的pb
#define pc8255 xbyte[0x5fff8255的pc
#define dac0832 xbyte[0xefffdac0832口
#define adc0804 xbyte[0xf7ffadc0804口
系統控制引腳定義
sbit rs=p3^01602的資料/命令控制口口
sbit rw=p3^11602的讀寫控制端
sbit en=p3^21602的使能控制端
sbit con=p3^374hc573的鎖存端
鍵盤引腳定義
//鍵盤引腳定義
sbit key1=p1^0;
sbit key2=p1^1;
sbit key3=p1^2;
sbit key4=p1^3;
sbit key5=p1^4;
sbit key6=p1^5;
sbit key7=p1^6;
定義系統變數
LCD常識lcd入門
lcd常識 內容提要 一 液晶顯示器基本常識 二 液晶顯示器件的結構 三 液晶顯示器件的基本效能 四 液晶顯示器件的基本引數 五 ic與lcd的常見連線方式 六 lcd專業術語解釋 七 液晶顯示原理 一 液晶顯示器基本常識 液晶顯示是一種被動的顯示,它不能發光,只能使用周圍環境的光。它顯示圖案或字元...
8255A晶元介紹
8255a是一種可程式設計的i o介面晶元,可以與mcs 51系統微控制器以及外設直接相連,廣泛用作外部並行i o擴充套件介面。1 8255a的內部結構 8255a內部由pa pb pc三個8位可程式設計雙向i o口,a組控制器和b組控制器,資料緩衝器及讀寫控制邏輯四部分電路組成。8255a結構框圖...
LCD螢幕知識
it世界 acer 文 2004 10 16 16 37 42 閱讀 2471次 佔筆記本40 價值 lcd螢幕知識你知道多少?acer 許多朋友在選購筆記本的時候往往太過於注意產品的配置,諸如處理器頻率多少?硬碟轉速多快以及記憶體有多大容量。其實大家都忘記了乙個最重要的方面,那就是筆記本的螢幕。對...