<form id="lpvjh"><nobr id="lpvjh"><th id="lpvjh"></th></nobr></form>

<form id="lpvjh"></form>
<form id="lpvjh"><th id="lpvjh"></th></form>

<form id="lpvjh"></form>

<address id="lpvjh"></address>

    <span id="lpvjh"><th id="lpvjh"></th></span>

      新聞詳情

      基于單片機的OLED顯示系統設計與實現

      日期:2021-11-27 20:13
      瀏覽次數:993
      摘要: 基于單片機的OLED顯示系統設計與實現 (0.96英寸OLED顯示屏的應用——轉載自中國OLED網) OLED(Organic Light Emitting Display)顯示技術是比液晶顯示技術更為先進的新一代平板顯示技術,其被業界公認為是繼LCD、PDP之后*理想和*具發展前景的第三代顯示技術。 相比于液晶顯示技術,其具有超輕薄、高亮度、廣視角、自發光、響應快、抗震強、功耗低、適應溫度范圍寬,可實現柔性顯示等優越性能,有“夢幻顯示器” 的美譽,可廣泛應用于通信、計算機、消費電子、工業應用、商業、交通等領域。在顯示輸出方面,...

      基于單片機的OLED顯示系統設計與實現

      (0.96英寸OLED顯示屏的應用——轉載自中國OLED網)

      OLED(Organic Light Emitting Display)顯示技術是比液晶顯示技術更為先進的新一代平板顯示技術,其被業界公認為是繼LCD、PDP之后*理想和*具發展前景的第三代顯示技術。 相比于液晶顯示技術,其具有超輕薄、高亮度、廣視角、自發光、響應快、抗震強、功耗低、適應溫度范圍寬,可實現柔性顯示等優越性能,有“夢幻顯示器” 的美譽,可廣泛應用于通信、計算機、消費電子、工業應用、商業、交通等領域。在顯示輸出方面,目前主要采用3種方式,即:圖形、數字或專用符號,在嵌入式 領域,顯示常采用LED、數碼管及液晶顯示器。前兩種實現簡單,但顯示內容不夠豐富。LCD顯示器雖能顯示較為豐富的內容,但其響應慢(出現殘像),且亮 度相對較低。OLED則響應較快,其響應速度可達液晶的1000倍以上,且OLED無需背光,亮度高,在功耗、視角等方面也均優于LCD顯示器,鑒于 此,OLED顯示屏越來越廣泛地應用在日常生活當中。

      該文以宏晶公司的STC89C52單片機為控制核心,以0.96寸OLED模塊為顯示輸出設備,在Keil環境下編寫OLED顯示模塊驅動程序,并下載Hex文件至單片機,從而實現OLED顯示系統設計。

      1 基于單片機的OLED顯示系統設計與實現——實現原理

      文中所采用的OLED模塊具有和12864LCD相同的分辨率,但其在單位面積上具有更多的像素點。該模塊的驅動芯片是SSD1306Z,它是一款專 門用 于驅動OLED點陣屏的COMS芯片,其包含128個段和64個公共端。為了能夠通過外部控制器向其寫入用于顯示的數字信息,其對外提供了8個數據引腳和 5個控制腳,并向用戶提供了4種總線接口。文中所采用的OLED模塊可實現SPI和IIC兩種總線接口模式,默認為SPI模式。在SPI模式下,僅有數據 引腳的低2位和控制引腳的CS#,D/C#和RES#與單片機進行接口。為了能讓OLED具有豐富的顯示效果和靈活簡便的操作方式,SSD1306Z向用 戶提供了豐富的操作指令集,另外還向用戶提供了128x64位的GDDRAM(Graphic Display Data RAM)。由于所采用的OLED不帶字庫,因此無論是顯示圖形還是顯示漢字,均需通過取模軟件進行編碼,然后按SPI協議,將對應的編碼按照所確定的地址 模式寫入對應的CDDRAM中。編碼原理如圖1所示。圖1給出了16*8編碼格式的字符‘A’,由于8行為一頁,因此其占據2頁的高度,而寬度則占據8 列。圖1中的每一個方格代表一位,若要顯示則置1,反之置0。向GDDRAM當中送數據時,先通過指令確定操作所需的地址模式及存儲器的地址,然后先寫 ‘A’的第2頁的編碼,再寫其第3頁的編碼,即可完成編碼的寫入操作。圖1所對應的編碼為0x00,0x00,0xe0,0x 9c,0xf0,0x80,0x00,0x00,0x08,0x0f,0x08,0x00,0x00,0x0b,0xoe,0x08,編碼時高位在下,低 位在上。同理,可得對任意漢字的編碼。

      基于單片機的OLED顯示系統設計與實現

      圖1:OLED字符編碼

      2 時序分析

      操作時序為IC芯片的可靠工作提供了正確的節拍,因此操作時序正確與否將直接影響芯片的工作狀態,文中OLED模塊默認工作方式為4線SPI,其操 作時 序如圖2所示。圖2上部分為操作一位對應的時序,下部分為操作一個字節所對應的時序,由圖2可知當發送一個字節時,先發該字節的*高位,*后發*低位。

      基于單片機的OLED顯示系統設計與實現

      圖2:4線SPI操作時序圖

      圖2中,CS#為OLED片選信號線,低電平有效,在芯片有效后,可通過拉低或拉高D/C#來決定是進行命令寫入操作還是進行數據寫入操作,在時鐘 SCLK拉高之前建立D/C#信號,其建立時間為tAS,SDIN在SCLK低電平有效,并在SCLK上升沿時進行數據的讀取,數據保持時間為tDHW, 之后可發生數據交換,為下次數據讀取作準備。圖2中具體的時

      序特性如表1所示。

      表1:4線SPI時序特性

      基于單片機的OLED顯示系統設計與實現

      表1給出了正確實現OLED操作的時序要求,由表1可知時間參數的*小值均小于1μs。文中控制器選用的是STC89C52,采用12 M晶振時機器周期為1μs,因此,只需讓STC89C52按上圖時序順序執行程序,則其操作過程便可完全滿足4線SPI操作的時序要求。

      3 軟件實現

      要使OLED正確顯示出所需的信息,除了在其運行過程中嚴格按時序進行操作外,在起動時還要滿足一定的上電順序,之后還要對其進行相應的初始化。OLED的上電順序如圖3所示。

      基于單片機的OLED顯示系統設計與實現

      圖3:OLED上電時序圖

      圖3中,在VDD得電并穩定后,RES#引腳被拉低并維持低電平至少3μs(t1),然后再接其拉高,從而實現芯片復位。在芯片完成復位后,VCC 上 電。在VCC穩定之后,可發送0xAF命令開顯示,而OLED的段和公共端(SEG/COM)則需再延遲100 ms,方可得電。按此可得對應的軟件實現為:

      基于單片機的OLED顯示系統設計與實現基于單片機的OLED顯示系統設計與實現基于單片機的OLED顯示系統設計與實現基于單片機的OLED顯示系統設計與實現基于單片機的OLED顯示系統設計與實現

      同理可知,若將D/C#引腳電平拉高,則可得到發送一個字節數據的函數實現。

       

      4 硬件接口

      硬件基于自主開發的FG_V1.2開發板,核心控制芯片為宏晶公司LQFP-44封裝的貼片STC89C52單片機,OLED的時鐘引腳 SCLK(D0)與單片機的P16引腳進行接口,數據引腳SDA(D1)與單片機的P17引腳進行接口,控制腳RST#與單片機的P36引腳進行接 口,D/C#引腳與單片機的P37引腳進行接口,片選信號CS#已接至地。具體的硬件接口電路如圖4所示。

      基于單片機的OLED顯示系統設計與實現

      圖4:OLED與單片機接口電路


      新博体育