天天被操天天被操综合网,亚洲黄色一区二区三区性色,国产成人精品日本亚洲11,欧美zozo另类特级,www.黄片视频在线播放,啪啪网站永久免费看,特别一级a免费大片视频网站

現(xiàn)在位置:范文先生網(wǎng)>理工論文>電子通信論文>PIC16F877單片機(jī)的圖形液顯示模塊接口技術(shù)

PIC16F877單片機(jī)的圖形液顯示模塊接口技術(shù)

時(shí)間:2023-02-20 22:38:46 電子通信論文 我要投稿
  • 相關(guān)推薦

PIC16F877單片機(jī)的圖形液顯示模塊接口技術(shù)

  摘要:詳述PIC16F877單片機(jī)的MG-12232圖形點(diǎn)陣式液晶顯示器的硬件接口電路特點(diǎn)和接口軟件編程方法。
  關(guān)鍵詞:PIC16F877LCD接口
  
  引言
  
  由于液晶顯示器(LCD)具有功耗低、體積小、質(zhì)量輕、超薄等其他顯示器無(wú)法比擬的優(yōu)點(diǎn),它廣泛用于各種智能型儀器和低功耗電子產(chǎn)品中。點(diǎn)陣式(或圖形式)LCD不僅可以顯示字符、數(shù)字,還可以顯示各種圖形、曲線及漢字,并且可以實(shí)現(xiàn)屏幕上下左右滾動(dòng)、動(dòng)畫、閃爍、文本特征顯示等功能,用途十分廣泛。本文在簡(jiǎn)介液晶顯示器MG-12232的驅(qū)動(dòng)器SED1520F0A的結(jié)構(gòu)、功能的基礎(chǔ)上,介紹了PIC16F877單片機(jī)的LCD硬件接口電路和軟件編程特點(diǎn)。
  
  一、PIC16F877與MG-12232的硬件接口電路
  
  1.SED1520F0A的接口信號(hào)
  
  SED1520F0A屬行列驅(qū)動(dòng)及控制合一的小規(guī)模液晶顯示驅(qū)動(dòng)芯片,電路簡(jiǎn)單,經(jīng)濟(jì)實(shí)用,內(nèi)含振蕩器,只須外接振蕩電阻即可工作。模塊工作的穩(wěn)定性好。SED1520F0A與微處理器的接口信號(hào)如下。
  
  DB0~DB7:數(shù)據(jù)總線。
  
  A0:數(shù)據(jù)/指令選擇信號(hào)。A0=1表示出現(xiàn)在數(shù)據(jù)總線上的是數(shù)據(jù);A0=0,表示出現(xiàn)在數(shù)據(jù)總線上的是指令或讀出的狀態(tài)。
  
  RES:接口時(shí)序類型選擇。RES=1為M6800時(shí)序,其操作信號(hào)是E和R/W;RES=0為Intel8080時(shí)序,操作信號(hào)是RD和WR。
  
  RD(E):在Intel8080時(shí)序時(shí)為讀,低電平有效;在M6800時(shí)序時(shí)為使能信號(hào),是個(gè)正脈沖,在下降沿處為寫操作,在高電平時(shí)為讀操作。
  
  WR(R/W):在Intel8080時(shí)序時(shí)為寫,低電平有效;在M6800時(shí)序時(shí)為讀、寫選擇信號(hào),R/W=1為讀,R/W=0為寫。
  
  SED1520F0A與兩種總線的接口信號(hào)和時(shí)序的詳細(xì)資料見液晶顯示模塊使用手冊(cè)。
  
  2.MG-12232模塊的引腳說(shuō)明
  
  MG-12232模塊共有18個(gè)引腳,各引腳定義如表1所列。
  
  表1MG-12232模塊的引腳定義
  
  序號(hào)符號(hào)狀態(tài)功能說(shuō)明1Vcc-邏輯電源正2GND-邏輯電源地3V0-液晶顯示驅(qū)動(dòng)電源4RES-接口時(shí)序類型選擇5E2輸入主工作方式IC使能信號(hào)6E2輸入從工作方式IC使能信號(hào)7R/W輸入讀/寫選擇信號(hào)8A0輸入寄存器選擇信號(hào)9~16DB0~DB7三態(tài)數(shù)據(jù)總線(低位)17SLA-18SLK-背光燈負(fù)電源
  3.PIC16F877與MG-12232模塊的接口電路
  
  現(xiàn)以功能強(qiáng)、價(jià)格低的PIC16F877為例說(shuō)明PIC與MG-12232模塊的硬件接口電路。其接口控制時(shí)序采用M6800操作時(shí)序,這樣SED1520F0A引出的控制信號(hào)R/W,A0,E1和E2由PIC16F877的I/O端口portb的4個(gè)腳控制。接口電路如圖1所示。圖中利用可調(diào)電阻R3實(shí)現(xiàn)液晶的背光亮度調(diào)節(jié),直接用電阻R2驅(qū)動(dòng)液晶的背光燈。由于PIC16F877的位操作指令豐富,所以用軟件不難模擬出M6800操作時(shí)序。
  
  二、接口軟件編程
  
  1.SED1520F0A指令集
  
  SED1520F0A液晶顯示驅(qū)動(dòng)器有13條指令。表2所列的以與M6800系列MPU接口為例(RES=1)而總結(jié)出的指令。
  
  表2SED1520F0A指令集
  
  指令名稱控制信號(hào)控制代碼R/WA0D7D6D5D4D3D2D1D0顯示開/關(guān)指令001010111I/O顯示起始行設(shè)置00110顯示起行(0~31)設(shè)置頁(yè)地址00101110頁(yè)地址(0~3)設(shè)置列地址00
  0
  
  列地址(0~79)
  
  讀狀態(tài)指令10BUSYADCOFF/ONRESET0000寫數(shù)據(jù)01顯示的數(shù)據(jù)讀數(shù)據(jù)11顯示的數(shù)據(jù)ADC選擇指令0010100000/1靜態(tài)驅(qū)動(dòng)開/關(guān)0010100100/1占空比選擇0010101000/1改寫開始指令0011100000改寫結(jié)束指令0011101110復(fù)位0011100010
  2.MG-12232模塊的編程
  
  下面是以圖1的接口電路為例編寫的只含E1主方式的程序(表1中E1=1,E2=0)。E2從方式(表1中E1=0,E2=1)的程序類推。
  
  在系統(tǒng)程序的初始化部分應(yīng)該對(duì)程序中用到的寄存器和臨時(shí)變量作說(shuō)明,如:
  
  lcdfialequ0x20;存放標(biāo)志位
  
  sbdataequlcdflag+1;存放顯示數(shù)據(jù)
  
  clmaddequsbdata+1;存放列地址
  
  pageaddequclmadd+1;存放頁(yè)地址
  
  pagenumequpageadd+1;存放總頁(yè)數(shù)
  
  clmsumequpagenum+1;存放總列數(shù)
  
  intscodeequclmsum+1;存放指令代碼
  
  讀液晶顯示器狀態(tài)子程序
  
  StebsfSTATUS,RP0;選中存儲(chǔ)區(qū)1
  
  movlw0xff
  
  movwfTRISD;設(shè)置D口為輸入
  
  bcfSTATUS,RP0;選中存儲(chǔ)區(qū)0
  
  bsfPORTB,4;E1=1
  
  bsfPORTB,1;R/W=1
  
  bcfPORTB,0;A0=0
  
  TaemovfPORTD,0;將狀態(tài)字讀入W中
  
  movwflcdfiag;將W中的狀態(tài)字存入lcdfiag中
  
  btfsclcdflag,7;判斷D7位是否為0
  
  gotoTae;D7=1,為忙狀態(tài)
  
  return
  
  對(duì)液晶顯示器發(fā)指令子程序(指令保存在W寄存器中)
  
  Cwe
  
  Movwfintscode;指令暫存intscode
  
  BcfPORTB,1;R/W=0
  
  BcfPORTB,0;A0=0
  
  movfintscode,0
  
  movwfPORTD
  
  bcfPORTB,4;E1=0寫入指令
  
  return
  
  對(duì)液晶顯示器寫數(shù)據(jù)子程序(數(shù)據(jù)保存在W寄存器中)
  
  Dwe
  
  Movwfsbdata;數(shù)據(jù)暫存sbdata
  
  Movfclmadd,0
  
  CallCwe;設(shè)置列地址
  
  CallSte
  
  BsfSTATUS,RP0
  
  clrfTRISD;設(shè)置D口為輸出方式
  
  bcfSTATUS,RP0
  
  bsfPORTB,4;E1=1
  
  bcfPORTB,1;R/W=0
  
  bsfPORTB,0;A0=1
  
  movfsbdata,0
  
  movwfPORTD
  
  bcfPORTB,4;E1=0,寫入數(shù)據(jù)
  
  callSte
  
  inctclmadd,1;列地址加1
  
  return
  
  液晶顯示器開顯示、關(guān)顯示和清屏子程序
  
  Disp;開E1顯示
  
  movlw0xal;將控制命令放在W中
  
  callCwe
  
  bsfPORTB,4;E1=1
  
  callSte;判是否忙
  
  bsfSTATUS,RP0
  
  clrfTRISD;設(shè)置D口輸出方式
  
  bcfSTATUS,RP0
  
  bsfPORTB,4;E1=1
  
  bsfPORTB,1;R/W=1
  
  bcfPORTB,0;A0=0
  
  bsfSTATUS,RP0
  
  movlw0xff
  
  movwfTRISD;設(shè)置D口輸入方式
  
  bcfSTATUS,RP0
  
  movfPORTD,0
  
  movwflcdflag;讀入狀態(tài)并查詢
  
  btfsclcdflag,5;是否確定打開
  
  gotoDisp
  
  return
  
  Disoff;關(guān)E1顯示
  
  movlw0xae;控制命令入在W中
  
  callCwe
  
  bsfPORTB,4;E1=1
  
  bsfPORTB,1;R/W=1
  
  bcfPORTB,0;A0=0
  
  bsfSTATUS,RP0
  
  movlw0xff
  
  movwfTRISD
  
  bcfSTATUS,RP0
  
  movfPORTD,0
  
  movwflcdfiag;讀入狀態(tài)并查詢
  
  btfsslcdfiag,5;判是否關(guān)閉
  
  gogoDisoff
  
  return
  
  Cler;清屏
  
  movlw0xb8;設(shè)置頁(yè)地址代碼
  
  movwfpageadd
  
  movlw0x04
  
  movwfpagenum;設(shè)置總頁(yè)數(shù)
  
  clr1movfpageadd,0
  
  callCwe
  
  movlw0x50;設(shè)置總列數(shù)
  
  movwfclmsum;80或60列
  
  movlw0x00
  
  movwfclmadd;設(shè)置起始列
  
  clr2movlw0x00
  
  callDwe;寫入00H
  
  clardecfszclmsum,1;本頁(yè)未清完
  
  gotopageadd,1;頁(yè)號(hào)增1
  
  decfszpagenum,1;4頁(yè)未清完
  
  gotoclr1;返回繼續(xù)
  
  return
  
  有了以上的通用子程序,就可以構(gòu)造出各種顯示程序,如字符、漢字、曲線等。當(dāng)然,在這些程序執(zhí)行前必須對(duì)液晶進(jìn)行初始化。初始化的順序?yàn)椋宏P(guān)顯示→正常顯示驅(qū)動(dòng)設(shè)置→占空比設(shè)置→復(fù)位→ADC選擇→清屏→開顯示。程序如下:
  
  初始化子程序
  
  Lcdinit
  
  callDisoff;關(guān)顯示
  
  movlw0xa4;靜態(tài)顯示驅(qū)動(dòng)
  
  callCwe
  
  movlw0xe2;復(fù)位
  
  callCwe
  
  movlw0xa0;ADC選擇正常輸出
  
  callCwe
  
  movlw0x9;占空比為1/32
  
  callCwe
  
  callCler;清零
  
  callDisp;開顯示
  
  return
  
  對(duì)于字符、漢字和曲線顯示的原理是類似的。它們都是以字節(jié)為單位進(jìn)行顯示。關(guān)鍵在于形成字模庫(kù)時(shí)必須保證每個(gè)上字節(jié)數(shù)據(jù)的最高位是與每一列最下面一個(gè)點(diǎn)相對(duì)應(yīng),最低位與每一列最上面點(diǎn)相對(duì)應(yīng)。當(dāng)然,這可以用專門的軟件來(lái)生成相應(yīng)的代碼,然后再將這些代碼逐字節(jié)地寫到相應(yīng)的頁(yè)和列。
  
  結(jié)束語(yǔ)
  
  PIC單片機(jī)與液晶模塊的接口只在硬件上滿足液晶模塊的接口要求,軟件上能夠模擬出要求的時(shí)序,并且初始化正確后,就可以隨心所欲地顯示信息了。
  
  以上接口電路和程序在PIC試驗(yàn)板上調(diào)試通過(guò),可作為其他單片機(jī)與LCD接口的參考。
  
  
  
  

【PIC16F877單片機(jī)的圖形液顯示模塊接口技術(shù)】相關(guān)文章:

串行接口中文圖形點(diǎn)陣液晶顯示模塊的應(yīng)用08-06

LMB-018A顯示模塊的原理及與DSP的接口08-06

液晶顯示模塊MGLS240128在圖形顯示中的應(yīng)用08-06

液晶顯示模塊DMF-50081在單片機(jī)系統(tǒng)中的應(yīng)用08-06

圖形點(diǎn)陣式液晶顯示模塊在沖擊力監(jiān)測(cè)系統(tǒng)中08-06

MultiMediacard及其與單片機(jī)接口08-06

TI 54xxDSP與51單片機(jī)的接口技術(shù)08-06

基于單片機(jī)的MicroDrive接口設(shè)計(jì)08-06

用CPLD實(shí)現(xiàn)單片機(jī)讀寫模塊08-06