微機(jī)原理與接口實(shí)驗(yàn)4.6液晶屏顯示-LCD1602賴曉錚_第1頁
微機(jī)原理與接口實(shí)驗(yàn)4.6液晶屏顯示-LCD1602賴曉錚_第2頁
微機(jī)原理與接口實(shí)驗(yàn)4.6液晶屏顯示-LCD1602賴曉錚_第3頁
微機(jī)原理與接口實(shí)驗(yàn)4.6液晶屏顯示-LCD1602賴曉錚_第4頁
微機(jī)原理與接口實(shí)驗(yàn)4.6液晶屏顯示-LCD1602賴曉錚_第5頁
已閱讀5頁,還剩16頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

(六)

液晶屏顯示(LCD1602)實(shí)驗(yàn)實(shí)驗(yàn)內(nèi)容:●構(gòu)建“CPU+LCD”的微型計(jì)算機(jī)系統(tǒng),及編程相應(yīng)的人機(jī)界面程序,實(shí)現(xiàn)通過字符型液晶屏LCD1602顯示英文字符、標(biāo)點(diǎn)符號和數(shù)字的功能。實(shí)驗(yàn)?zāi)康模骸窳私庾址鸵壕э@示屏LCD1602的基本工作原理。●掌握CPU控制LCD1602輸出顯示文本內(nèi)容的方法。第一頁,共21頁。第一頁,共21頁。微程序版“CPU+LCD1602”電路圖第二頁,共21頁。第二頁,共21頁。初始化過程時(shí)鐘信號CLK接手動開關(guān)MANUAL,啟動仿真,使能復(fù)位信號#RESET=0;手動按鈕MANUAL開關(guān)“010”,然后令信號#RESET=1.注:初始化完成后,若時(shí)鐘信號CLK繼續(xù)接開關(guān)MANUAL,則CPU進(jìn)入手動模式,手動MANUAL開關(guān),生成時(shí)鐘信號CLK,程序單步執(zhí)行;若時(shí)鐘信號CLK接信號源AUTO-CLK(主頻10Hz),則CPU進(jìn)入自動模式,程序自動運(yùn)行,直到HLT指令的“斷點(diǎn)”處暫停。重啟過程(跳出“斷點(diǎn)”)時(shí)鐘信號CLK接開關(guān)MANUAL,手動令復(fù)位信號端#RESET的狀態(tài)“101”變化,即重啟完成,跳出“斷點(diǎn)”繼續(xù)執(zhí)行

。注:跳出“斷點(diǎn)”后,CPU進(jìn)入HLT指令的后續(xù)下一條指令的取指周期。第三頁,共21頁。第三頁,共21頁。液晶顯示屏LCD1602應(yīng)用電路圖第四頁,共21頁。第四頁,共21頁。液晶屏LCD1602示意圖第五頁,共21頁。第五頁,共21頁。LCD1602

字模寄存器第六頁,共21頁。第六頁,共21頁。引腳號符號引腳說明引腳號符號引腳說明1VSS電源地9DB2數(shù)據(jù)總線端口2VDD電源正極10DB3數(shù)據(jù)總線端口3V0偏壓信號11DB4數(shù)據(jù)總線端口4RS命令/數(shù)據(jù)12DB5數(shù)據(jù)總線端口5RW讀/寫13DB6數(shù)據(jù)總線端口6E片選使能14DB7數(shù)據(jù)總線端口7DB0數(shù)據(jù)總線端口15A背光正極8DB1數(shù)據(jù)總線端口16K背光負(fù)極液晶屏LCD1602寫操作時(shí)序圖LCD1602

引腳功能第七頁,共21頁。第七頁,共21頁。序號命令RSR/WDB7DB6DB5DB4DB3DB2DB1DB01清屏00000000012光標(biāo)返回000000001X3輸入模式設(shè)置00000001I/DS4顯示開/關(guān)控制0000001DCB5光標(biāo)或字符移動000001S/CR/LXX6工作方式設(shè)置00001DLNFXX7置CGRAM地址0001字模寄存器CGRAM地址8置DDRAM地址001顯示數(shù)據(jù)寄存器DDRAM地址9讀狀態(tài)字01BF地址計(jì)數(shù)器AC值10寫數(shù)據(jù)到CGRAM或DDRAM10寫入的數(shù)據(jù)內(nèi)容11從CGRAM或DDRAM讀數(shù)據(jù)11讀出的數(shù)據(jù)內(nèi)容液晶屏LCD1602命令字格式第八頁,共21頁。第八頁,共21頁。實(shí)驗(yàn)步驟:1)LCD1602顯示測試程序test_LCD1602.asm存放在實(shí)驗(yàn)4.6項(xiàng)目的子文件夾test里,其功能實(shí)現(xiàn)了CPU向LCD1602發(fā)送一段ASCII碼字符序列“HELLO!”,在LCD1602屏幕的第一行正確顯示。具體代碼如后頁所示。2)編譯、燒寫、自動運(yùn)行上述test_LCD1602源程序,在程序自動運(yùn)行過程中觀察LCD1602屏幕顯示內(nèi)容。(編譯和燒寫asm文件的方法參見“2.6存儲器實(shí)驗(yàn):ROM批量導(dǎo)入數(shù)據(jù)”)3)修改自行設(shè)計(jì)所要顯示的字符序列及顯示位置(例如改為在第二行顯示),若字符序列需要2行以上的顯示空間,則可以增加LCD屏幕的滾動顯示功能。修改并自動執(zhí)行程序test_LCD1602。在運(yùn)行過程中觀察LCD1602屏幕顯示的內(nèi)容。第九頁,共21頁。第九頁,共21頁。匯編助記符注釋(M地址:機(jī)器指令)JMP08H00H:0001000001H:0000100048H“H”02H:0100100045H“E”03H:010001014CH“L”04H:010011004CH“L”05H:010011004FH“O”06H:0100111121H“!”07H:00100001SETR3,90HLCD地址[1001xxxx],寫命令模式08H:0011110009H:10010000OUTAR3,PORT0選擇LCD,寫命令模式0AH:01011110test_LCD1602第十頁,共21頁。第十頁,共21頁。匯編助記符注釋(M地址:機(jī)器指令)SETR2,38HR2存放命令6,8位數(shù)據(jù)格式,雙行顯示0BH:001110000CH:00111000OUTR2,PORT0使能E寫入命令0DH:01011000SETR2,0CHR2存放命令4,開顯示開關(guān)

無光標(biāo)不閃爍0EH:001110000FH:00001100OUTR2,PORT0使能E寫入命令10H:01011000SETR2,01HR2存放命令1,清屏11H:0011100012H:00000001OUTR2,PORT0使能E寫入命令13H:01011000SETR2,06HR2存放命令3,I/D=1,光標(biāo)在新數(shù)據(jù)右邊14H:0011100015H:00000110OUTR2,PORT0使能E寫入命令16H:01011000test_LCD1602第十一頁,共21頁。第十一頁,共21頁。匯編助記符注釋(M地址:機(jī)器指令)SETR2,80HR2存放命令8,置DDRAM地址(第一行首地址)17H:0011100018H:10000000OUTR2,PORT0使能E寫入命令19H:01011000SETR3,92HLCD地址[1001xxxx],寫數(shù)據(jù)模式1AH:001111001BH:10010010OUTAR3,PORT0選擇LCD,寫數(shù)據(jù)模式1CH:01011110SETR2,02HR2用以記錄發(fā)送字符的地址發(fā)送的字符串首地址[02H]1DH:001110001EH:00000010SETR0,06HR0用作待發(fā)送字符的計(jì)數(shù)器總共6個(gè)數(shù)據(jù)1FH:0011000020H:00000110POPR1,[R2]

循環(huán)發(fā)送數(shù)據(jù),跳轉(zhuǎn)到此處21H:10000110OUTR1,PORT0輸入LCD1602數(shù)據(jù)22H:01010100test_LCD1602第十二頁,共21頁。第十二頁,共21頁。匯編助記符注釋(M地址:機(jī)器指令)INCR223H:00101000DECR0待發(fā)送字符的計(jì)數(shù)器遞減“-1”24H:00100001NOP此處可以做斷點(diǎn)HLT,觀察LCD顯示25H:00000000JZ2AH待發(fā)送字符的計(jì)數(shù)器為0,結(jié)束發(fā)送26H:0001100027H:00101010JMP21HLCD顯示成功,跳轉(zhuǎn)繼續(xù)發(fā)送下一個(gè)字符28H:0001000029H:00100001HLT2AH:00000001test_LCD1602第十三頁,共21頁。第十三頁,共21頁。思考題:●請把本實(shí)驗(yàn)的微程序版“CPU+LCD1602”電路改成硬布線版和流水線版“CPU+LCD1602”電路,并且運(yùn)行本實(shí)驗(yàn)步驟所示的LCD1602測試程序。請問上述程序在硬布線或流水線版本中需要修改么?若需要,請修改并測試。(六)

液晶屏顯示(LCD1602)實(shí)驗(yàn)第十四頁,共21頁。第十四頁,共21頁。附錄:CPU指令集(OP碼表)OP碼(I7I6I5I4)指令助記符OP碼(I7I6I5I4)指令助記符0111IRET1111OR/ORI0110MOV1110AND/ANDI0101OUT/OUTA1101ADD/ADDI0100IN1100SUB/SUBI0011SET1011XOR/XORI0010SOP(INC/DEC/NOT/THR)1010SHT(RLC/LLC/RRC/LRC)0001JMP/JMPR/Jx/JxR1001STO/PUSH0000NOP/HLT1000LAD/POP第十五頁,共21頁。第十五頁,共21頁。一、系統(tǒng)指令:匯編語言功能I7I6I5I4I3I2I1I0NOP;無操作(延時(shí)4個(gè)T)00000/0x/0HLT;停機(jī)(斷點(diǎn))00000/0x/1IRET;中斷返回BP_PCPC;BP_PSWPSW01110/0x/x匯編語言注釋I7I6I5I4I3I2I1I0MOVRA,RB;(RB)RA0110RARBSETRA,IMM;IMMRA0011RAx/xIMM二、寄存器及I/O操作指令:匯編語言功能I7I6I5I4I3I2I1I0INRA,PORTx;(PORTx)RA0100RAPORTxOUTRA,PORTx;(RA)PORTx0101RA0/PORTxOUTARA,PORTx;(RA)PORTx0101RA1/PORTx第十六頁,共21頁。第十六頁,共21頁。匯編語言功能I7I6I5I4I3I2I1I0LADRA,[ADDR];[ADDR]RA1000RA0/0ADDRPOPRA,[RB];[RB]RA1000RARBSTORA,[ADDR];(RA)[ADDR]1001RA0/0ADDRPUSHRA,[RB];(RA)[RB]1001RARB三、存儲器及堆棧操作指令:第十七頁,共21頁。第十七頁,共21頁。匯編語言功能I7I6I5I4I3I2I1I0JMPADDR;ADDRPC00010/00/0ADDRJMPRRB;(RB)PC00010/0RBJCADDR;IFCF=1,ADDRPC00010/10/0ADDRJCRRB;IFCF=1,(RB)PC00010/1RBJZADDR;IFZF=1,ADDRPC00011/00/0ADDRJZRRB;IFZF=1,(RB)PC00011/0RBJSADDR;IFSF=1,ADDRPC00011/10/0ADDRJSRRB;IFSF=1,(RB)PC00011/1RB四、跳轉(zhuǎn)系列指令:第十八頁,共21頁。第十八頁,共21頁。五、算術(shù)邏輯運(yùn)算指令:匯編語言功能I7I6I5I4I3I2

I1I0RLCRA;(RA)右邏輯移位1010RA0/0LLCRA;(RA)左邏輯移位1010RA1/0RRCRA;(RA)右循環(huán)移位1010RA0/1LRCRA;(RA)左循環(huán)移位1010RA1/1匯編語言功能I7I6I5I4I3I2I1I0INCRA;(RA)+1RA0010RA0/0DECRA;(RA)-1RA0010RA0/1NOTRA;#(RA)RA

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論