<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > LCD顯示接口模塊的接口電路

LCD顯示接口模塊的接口電路

作者: 時(shí)間:2011-12-12 來(lái)源:網(wǎng)絡(luò ) 收藏
  本設計中以PlCl6F877單片機為核心,完成對輸出驅動(dòng)單元、人機交互單元、執行機構單元、檢測單元等部分的控制.根據設計產(chǎn)品的功能要求,各個(gè)功能的定義如下:

  · 碼盤(pán)電機的位置和方向分別由RE0和RC2控制:

  · 把手電機的位置和方向分別由RB1和RC1控制:

  · 碼盤(pán)電機光電檢測輸入到RB7口;

  · 把手電機光電檢測輸入到RBG口:

  · 蜂鳴器輸出通過(guò)RD0口;

  · 開(kāi)鎖指示輸出通過(guò)RD1口;

  · 鍵盤(pán)掃描輸出為RB0~RB3;

  · 鍵盤(pán)掃描輸入為RD2、RD3、RD4、RD7口:

  · LCD串行通信通過(guò)RPD、REI、RE2、RD5實(shí)現。

  PICIDP877單片機在各種復位間的區別如下:

  · 上電復位(POR);

  · MCLR在正常運行下復位:

  · MCLR復位在SLEEP期間;

  · WDT在正常運行期間溢出復位;

  · WDT喚醒(在SLEEP期間);

  · 降壓復位。

  一些寄存器用在POR上未知,在其他任何復位時(shí)不會(huì )改變共他大多數寄存器,在運行期間都能通過(guò)上電復位(POR),NCLR、WDf復位,在睡眠期間,NCLR復位可在BDR上復位到復位狀態(tài)。它們不受WDT喚醒的影響,因為這些復位被當成正常運行的繼續。TD、PD位在不同的復位狀態(tài)中被置1或清0。

  單片機在MCLR復位通道上有一個(gè)MCLR噪聲過(guò)濾器,過(guò)濾器將探測和忽略小的脈沖,然而一個(gè)有效的MCLR脈沖必須符合最小脈沖寬度。

 ?。?)上電復位(POR)。

  當VDD被探測到上升時(shí)(在1.2~1.1V之間),產(chǎn)生一個(gè)上電復位脈沖。為了充分利用POR,把MCLR引腳連到VDD(通過(guò)一個(gè)電阻器)。這將省去通常用來(lái)產(chǎn)生上電復位的外部RC組件,需要確定VDD最大上升時(shí)間。

  當單片機開(kāi)始運行時(shí)(退出復位條件)單片機運行參數必須達到要求以保證運行(如電壓、頻率、溫度),如果這些條件達不到,單片機必須一直保持復位狀態(tài)直到運行參數達到要求,降壓復位可用來(lái)滿(mǎn)足啟動(dòng)條件。

 ?。?)上電定時(shí)器(PWRT)。

  上電定時(shí)器在從POP上電時(shí)提供一個(gè)固定的72ms正常溢出。PWRT運行在一個(gè)內部的RC振蕩器上,隨著(zhù)PWRT一起作用,單片機一直保持在復位狀態(tài)。PWRT的時(shí)間延時(shí)允許VDD上升到一個(gè)可接受的電平,提供一個(gè)設定位使能/不使能PWRT。

  上電時(shí)間延時(shí)隨著(zhù)單片機的不同VDD、溫度以及生產(chǎn)過(guò)程的變化而不同。

 ?。?)晶體振蕩器起動(dòng)定時(shí)器(OST)。

  在PWRT延時(shí)結束之后晶體振蕩器起動(dòng)定時(shí)器提供一個(gè)1024個(gè)振蕩器周期的延時(shí)(從0SC1輸入),這樣保證晶體振蕩器或者諧振器開(kāi)始振蕩和穩定。

  OST溢出在XT、LP和IIS方式下,上電復位,或從睡眠中喚醒時(shí)才起作用。

 ?。?)降壓復位(B0R)。

  一個(gè)設置位BODEN能夠不使能(如果編程清0)或使能(如果置1)降壓復位電路。如果VDD下降低于4.0V,VBOR參數D005(VBOR)比在參數(TBOR)大,降壓情況將復位芯片,如果VDD下降低于4.0V,且比參數(TBOR)小,復位芯片可能不復位。

  一旦降壓發(fā)生,芯片將保持在降壓復位狀態(tài)直到VDD上升高于VBOR。采用上電定時(shí)器保持單片機在復位狀態(tài)72ms。如果在PWRT期間,當帶有上電定時(shí)器復位的VDD上升高于VB0R時(shí),降壓復位將重新開(kāi)始。當復位能使時(shí),上電定時(shí)器應該一直被使能而不管PWRT設置位的狀態(tài)。

 ?。?)溢出順序。

  在上電時(shí),溢出順序如下:POR復位出現時(shí),當一個(gè)POR復位發(fā)生時(shí),PWRT延遲開(kāi)始。當PWRT結束(LP,XT,HS)時(shí),OST開(kāi)始計數1204個(gè)振蕩器周期。當OST結束時(shí),單片機脫離復位。

  如果MCLR保持較長(cháng)時(shí)間低電平,溢出將會(huì )中止。把MCLR變?yōu)楦唠娖綍r(shí),溢出立即運行。

 ?。?)電源控制/狀態(tài)寄存器(PCON)。

  電源控制/狀態(tài)寄存器PCON有兩位。

  位0是BOR(降壓復位狀態(tài)位),POR在上電復位時(shí)是未知的,用戶(hù)必須將該位置1。在隨后的復位上如果BOR是0,則表明發(fā)生降壓復位。BOR狀態(tài)位是隨意位,如果降壓復位電路不能使能,BOR位是不能確定的。

  位1是POR(上電復位)。在POR被清0時(shí),其他方面不受影響。在一個(gè)POR之后,用戶(hù)必須將該位置1。在隨后的復位上如果POR是0,則表明發(fā)生POR復位。

 ?。?)中斷。

  PICl6877有10個(gè)中斷源。中斷控制寄存器(INTCON)用標志位記錄單個(gè)中斷請求,它有單個(gè)和全體中斷使能位。

  一個(gè)全體中斷使能位GIF(INTCON<7>)使能或不使能所有的中斷。當位GIE使能時(shí),一個(gè)中斷標志位和屏蔽位置1時(shí),中斷將立即引導。單個(gè)中斷通過(guò)它們在各種寄存器里相應使能位來(lái)禁止。不管GIE位的狀態(tài)如何,單個(gè)中斷都是置1的,GIE位在復位時(shí)清O。

  中斷返回指令,RETFIE將GIE位置1來(lái)重新使能中斷。RBO/INT引腳中斷,RB端口改變中斷和TMR。溢出中斷標志都包括在INTCON寄存器里。

  外部中斷標志包含在特殊功能寄存器PIR1和PM里,相應的的中斷使能位包含在特殊功能寄存器PIE1和PIE2里,外部中斷使能位包含在特殊功能寄存器INTCON里。不管和它們相關(guān)的屏蔽位和GIF,位的狀態(tài)如何,單個(gè)中斷標志位置1。

 ?。?)INT中斷。

  在引腳RBO/INT引腳上的外部中斷為邊沿觸發(fā)。INteDG位(OPTION (6))置1時(shí)為上升沿觸發(fā):如果INTEDG位是清0的,則為下降沿觸發(fā)。當在RBO/INT引腳上出現一個(gè)有效邊沿時(shí),標志位INTF (INTCON(1))被置1。

 ?。?)TMR0中斷。

  在TMR0寄存器里的一個(gè)溢出(FFH~OOH)將標志位TOIF(INTCON<2>)置1。通過(guò)對使能位TOIE(INTCON<5>)置1或清0來(lái)決定中斷使能或不使能。

 ?。?0)端口B變化中斷

  一個(gè)在PORTB<7∶4>的輸入變化將標志位RBIF(INTCON(0))置1,通過(guò)對使能位RBIF(INTCON(4>)置1或清0,來(lái)決定中斷使能或不使能。

 ?。?1)在中斷期間上下內容的保存。

  在一個(gè)中斷期間,只有返回程序計數的值被保存在堆棧里。其中典型的是用戶(hù)希望在一個(gè)中斷期間保存的關(guān)鍵寄存器,即工作寄存器和狀態(tài)寄存器,這將由軟件來(lái)實(shí)現。

  在PICl6F876M77單片機里每個(gè)塊的高16位字節是公用的,臨時(shí)保存寄存器W-TEMP、STATUS-TEMP和PLATH-TEMP存放在這里。這16個(gè)存儲單元不要求分塊,使存儲和重新存儲內容較容易。

 ?。?2)監視定時(shí)器(WDT)。

  監視定時(shí)器是一個(gè)自由運行的片內專(zhuān)用振蕩器,它不需要任何外部組件。這個(gè)RC振蕩器和OSC1/CLKIN引腳的外部RC振蕩器是分離的。這就意味著(zhù)即使在單片機的OSCI/CLKIN和OSC2/CLKOUT引腳上的時(shí)鐘已停止的情況下,WDT仍能運行。例如,通過(guò)執行一條Sleep指令。

  在正常運行期間,一個(gè)WDT溢出將使單片機復位(EDT復位)。如果單片機在睡眠方式,一個(gè)WDT溢出將使單片機喚醒和恢復正常運行(WDT喚醒)。在STATUS寄存器里的TO位通過(guò)MDI溢出將被清0。

  通過(guò)編程設定WDT位為0,使WDT永久不能使用。

  當把預分頻器分配給WDT時(shí),預分頻器分配和預分頻器值在OPTIONˉRFC寄存器里是置1的。

  在串行模式下,使用兩條傳輸線(xiàn)進(jìn)行數據傳送,主控系統將配合傳輸同步時(shí)鐘(SCLK)與接收串行數據線(xiàn)(SID)來(lái)完成串行傳輸。

  在片選CS設為高電位時(shí),同步時(shí)鐘(SCLK)輸入的信號才會(huì )被接收,在片選CS設為低電位時(shí)。模塊內部傳輸串行傳輸計數與串行數據將會(huì )被重置,傳輸中的數據將會(huì )被終止、清除,并將待傳輸的數據重設回第一位,設計中將CS設為高電位。

  模塊的同步時(shí)鐘(SCLK)具有獨立的操作,因為其內部沒(méi)有傳送/接收緩沖區,因此,當有連續多個(gè)指令需傳送時(shí),必須等到一個(gè)指令執行完成才能傳送下一個(gè)指令。

  串行傳輸時(shí)先傳起始位,它需要接收5個(gè)連續的“t”(同步位串),此時(shí)傳輸記數器將被重置,串行傳輸將被同步,傳輸的第二位分別指向傳輸方向位RW不口暫存器選擇位RS,最后8位為“0”。

  在接收到起始位后,每個(gè)指令或者數據將分兩組接收,高4位將會(huì )被放到第1個(gè)LSB中,低4位將會(huì )被放到另1個(gè)LSB中,其余都為“0”。

  串行接口時(shí)序如圖1所示。

  圖1 串行接口時(shí)序

  該液晶顯示模塊采用SPI串行方式與單片機進(jìn)行通信,液晶模塊中的控制芯片將配合傳輸同步時(shí)鐘SCLK與串行數據線(xiàn)SID來(lái)完成串行傳輸。當片選信號CS為高電平時(shí),同步時(shí)鐘線(xiàn)SCLK輸入信號開(kāi)始被接收;當CS為低電平時(shí),傳輸中的信號將被終止、清除。

  在本系統中,CS與單片機復位端相連,即系統復位時(shí)液晶顯示模塊也同時(shí)復位,接口設計如圖2所示。

  圖2 接口設計圖

分頻器相關(guān)文章:分頻器原理
蜂鳴器相關(guān)文章:蜂鳴器原理


關(guān)鍵詞: LCD顯示接口 接口電路

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>