資源描述:
《利用單片機的端口地址實現(xiàn)對液晶顯示器的控制》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、利用單片機的端口地址實現(xiàn)對液晶顯示器的控制發(fā)表日期:2007-08-3109:27:14點擊數(shù):109摘要:木文以時序分析為出發(fā)點,簡要介紹了一種液晶顯示器與51系列單片機的普通型和改進(jìn)型兩種接口方法,并給出了實際的電路及運行程序。關(guān)鍵詞:單片機;液晶顯示器;接口在許多使用單片機控制的場合,為改善人機界面,經(jīng)常要使用液晶顯示器顯示控制機構(gòu)的工作狀態(tài)及各種參數(shù)信息以供操作人員作出決策,由于液品顯示器是一個低速器件,加上它對接口的耍求比較特殊,使得單片機對它的控制變得較為煩瑣,從而占?用了許多機器時間。在我
2、們研制的數(shù)字錄音機中使用了一塊16x2的字符型液晶顯示器,由于單片機不斷地更新液晶顯示器上的顯示信息,同時乂要處理語音數(shù)據(jù),所以節(jié)約機器時間顯得尤為重要,為此我們采用以端口地址來區(qū)分命令的方法,成倍地節(jié)約了單片機對液品操作的吋間。1.硬件接口原理在筆者所設(shè)計的系統(tǒng)中使用的16x2字符型液晶顯示器為南京國顯電子公司生產(chǎn),它與8031單片機的典型連接電路如圖1所示,模塊引腳功能如表1所列,此液晶顯示器的連接電路與一般接口電路的不同Z處在于:對液晶的操作是在加到讀寫選擇引腳R/W及指令數(shù)據(jù)選擇引腳RS上的兩信
3、號穩(wěn)定tAS(tAS>140ns)時間后,在片選信號E上再施加一個正向脈沖信號,在這一脈沖下降沿的數(shù)據(jù)為有效數(shù)據(jù),而一般接口電路是片選信號在整個操作過程中均有效。液晶顯示器的讀寫時序如圖2所示。—VMI—lcdvsrPJ-58031■ISOHO-MT?,
4、SSPL0J3?m17舌滋閱'/K031的典中遷樓ftI功健引授名稱功雇1vss0V2VTX)電G電u5V110%3VE£KIUKQ型伍4RS占13今5R/W6E片也信號下降沿■發(fā)7-14在圖1所示的典型電路屮,按圖2的時序要求對液晶顯示器進(jìn)行寫操作時
5、,首先要在P2.5、P2.6送出一個狀態(tài)指示信號,表明將要進(jìn)行的操作,然后在P1口上送出所寫的數(shù)據(jù)(命令),然后使P2.7變高、再變低,這樣共需4條指令和4個指令周期。為節(jié)約吋間,我們用了地址區(qū)分狀態(tài)的方法,具體電路見圖3o采用圖3電路時,其寄存器的選擇功能如表2所列。為確定圖3所示電路是否能滿足液晶顯示器的時序要求,我們需進(jìn)一步分析由8051的讀寫時序而產(chǎn)牛的RS、R/W、E信號的時間關(guān)系。圖4為其時序圖,從圖中可以看出:寫操作的時序及山此而產(chǎn)生RS、R/W、E及數(shù)據(jù)的時間關(guān)系(8051工作頻率為12
6、MHz,故一個時鐘周期約為83ns)為:出uDO-DTP”PHP248051山tlP2JPHPOOtPOTWa改進(jìn)的液電竊舉2頁庁■功■送稈AlOfRS)矗作00搶令督存對人0?J忙標(biāo)£和覽址iterh讀出1
7、0J1I
8、II/地址建立時間tAs=4T(約332ns);允許脈沖寬度PWHH=6T(約498ns);地址保持吋間tAH=2T(約166ns);數(shù)據(jù)建立時間tDSw=7T(約580ns);而液晶顯示器要求tAS>14
9、0ns,PWEH>450ns,tAii>10ns,tDSw>195ns,因此均可滿足要求。對讀周期的分析也町以得到同樣的結(jié)論,采用該改進(jìn)電路后,對液晶的任何操作都可用一條MOVX指令完成,在此電路中ADDRESS=0000H表示寫指令寄存器;ADDRESS=08XXH表示讀忙標(biāo)志和地址計數(shù)器;ADDRESS=04XXH表示寫數(shù)據(jù)寄存器;ADDRESS=0CXXH表示讀數(shù)據(jù)寄存器。因此指令的執(zhí)行吋間是2個機器周期,比圖1電路節(jié)約了一半的時I'可,當(dāng)對液晶顯示器的操作比較頻繁時,節(jié)約的時間是相當(dāng)可觀的。2?
10、軟件示例程序?qū)Ρ?.1典型應(yīng)用程序采用典型應(yīng)用電路(圖1)的“寫命令”程序如下:movpl,#command;將命令內(nèi)容準(zhǔn)備好sctbp2.5clrp2.6;開始發(fā)送setbp2.7clrp2.7sctbp2.6;發(fā)送完畢???共需4個機器周期2.2改進(jìn)應(yīng)用程序采用改進(jìn)應(yīng)用電路(圖3)的“寫命令”程序如T:commamd—wrcqu#OOOOhmovdptr.command—wr;#0000表示將執(zhí)行"命令寫''操作mova,#command;將命令內(nèi)容準(zhǔn)備好movx@dptr,a;發(fā)送命令只需一條mo
11、vx指令,2個機器周期