中文點(diǎn)陣液晶顯示驅(qū)動器RA8816及其應(yīng)用
根據(jù)圖4所示時序,寫命令寄存器的子程序如下所示:
當(dāng)RS=I,表示控制器對RA8816進(jìn)行數(shù)據(jù)寄存器的讀寫,如果寫入(RW=O)數(shù)據(jù)到數(shù)據(jù)寄存器,寫入的內(nèi)容根據(jù)命令寄存器設(shè)置而顯示在LCD屏上。如果是讀取(RW=1)操作,則讀取的是不同模式下的字模數(shù)據(jù)。
有了對寄存器的讀寫函數(shù)后,就可以對RA8816的顯示進(jìn)行控制,下面以文字滾動功能為例,說明RA8816的控制方法。RA8816提供LCD的顯示畫面,可根據(jù)命令寄存器任意指定一塊區(qū)域,由硬件自動做屏幕畫面的滾動,其中命令寄存器可以設(shè)置屏幕的滾動方向和速度,每次滾動畫面的像素與滾動的范圍等。與滾動相關(guān)的主要命令寄存器有:SWSXR[0x08]和SWSYR[0x09]兩個寄存器決定滾動區(qū)域的左上角坐標(biāo)x和Y;SWR xR[0x0A]和SWRYR[0x0B]兩個寄存器決定滾動區(qū)域的大小Ax和△Y;SCOR[0x0C]表示滾動的位移量;ASCR[0x0D]的DB7’DB4決定滾動的速度,DB3~DB0決定每次位移的像素點(diǎn)數(shù);SCCR[0x0E]的DB7和DB6決定滾動多少個像素點(diǎn)后產(chǎn)生中斷,DB3和DB2決定屏幕滾動的方向。圖5給出了屏幕滾動流程圖。
圖5.屏幕滾動流程圖
屏幕滾動的主要代碼如下:
4 小結(jié)
內(nèi)置中文字庫的液晶顯示驅(qū)動器RA8816,不僅具有多種顯示模式及顯示效果,而且支持常見的8080/6800系列控制器并行接口和多種串行接口,這極大地?cái)U(kuò)展了RA8816的應(yīng)用范圍。RA8816內(nèi)置的步進(jìn)升壓電路及電壓調(diào)整電路,可以匹配較寬范圍的系統(tǒng)電壓。此外,RA8816還提供了鍵盤掃描和通用IO接口,大大簡化了系統(tǒng)硬件電路設(shè)計(jì)和軟件設(shè)計(jì),使得用低成本的控制器就能實(shí)現(xiàn)完善的人機(jī)交互界面。
評論