找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3067|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

芯圣SDK-HC89F0541單片機驅(qū)動LCD5110屏

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:776997 發(fā)表于 2020-7-10 08:39 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
本帖最后由 jinglixixi 于 2020-7-10 08:42 編輯

LCD5110顯示屏是一款顯示內(nèi)容相對豐富,能耗相對比較低的顯示器件,為實現(xiàn)顯示功能它與SDK-HC89F0541開發(fā)板的連接關(guān)系為:
SEC  --- P2_4
RST  ---  P3_5         
DC    ---  P3_4  
SDI   ---  P3_3   
SCK  ---  P1_6  
LED  --- P1_7  

為便于編程所作的輸出高低電平的宏定義為:
#define LCD_LED_High()    LED=1   

#define LCD_CLK_H           SCK=1
#define LCD_CLK_L           SCK=0

#define LCD_DIN_H           SDI=1
#define LCD_DIN_L           SDI=0

#define LCD_DC_H           DC=1
#define LCD_DC_L           DC=0

#define LCD_RST_H         RST=1
#define LCD_RST_L          RST=0

#define LCD_CS_H           SEC=1
#define LCD_CS_L            SEC=0

配置各引腳輸出功能的函數(shù)為:
  1. void LCD_GPIO_Cogfig(void)
  2. {
  3.            P2M4 = 0xC2;
  4.            P3M5 = 0xC2;
  5.            P3M4 = 0xC2;
  6.            P3M3 = 0xC2;
  7.            P2M1 = 0xC2;
  8.            P1M7 = 0xC2;
  9.            LED=1;
  10. }
復(fù)制代碼

單字符顯示函數(shù)為:
  1. void LCD_printc(unsigned char x, unsigned char y, unsigned char c_dat)
  2. {
  3.          unsigned char i, j,u;
  4.          u =c_dat-32;
  5.          x <<= 3;            
  6.          y <<= 1;            
  7.          for(j = 0; j < 2; j++)
  8.          {
  9.                    LCD_pos_byte(x, (y + j));
  10.                    for(i = 0; i < 8; i++)
  11.                    LCD_write_dat(Font_code[u][8 * j + i]);         
  12.          }
  13. }
復(fù)制代碼

字符串顯示函數(shù)為:
  1. void LCD_prints(unsigned char x, unsigned char y, unsigned char *s_dat)
  2. {
  3.          while(*s_dat && x < 10)
  4.          {LCD_printc(x++, y, *s_dat); s_dat++;}
  5. }

  6. void LCD5510_Init(void)
  7. {
  8.          LCD_GPIO_Cogfig();
  9.          mdelay(800);
  10.          LCD_reset_hard;                                
  11.          LCD_write_cmd(0x21);            
  12.          LCD_write_cmd(0x06);            
  13.          LCD_write_cmd(0x13);            
  14.          LCD_write_cmd(0xc8);            
  15.          LCD_write_cmd(0x20);            
  16.          LCD_write_cmd(0x0c);            
  17.          LCD_write_cmd(Y_Page_Addr);     
  18.          LCD_write_cmd(X_Col_Addr);        
  19.          LCD_clr_scr();                           
  20. }
復(fù)制代碼

實現(xiàn)演示效果的主程序如下:
  1. void main(void)
  2. {
  3.          while((CLKCON&0x20)!=0x20);
  4.          CLKSWR = 0x51;
  5.          while((CLKSWR&0xC0)!=0x40);
  6.          CLKDIV = 0x01;
  7.          P0M0 = 0xC2;
  8.          LED4 = 0;
  9.          LCD5510_Init();
  10.          LCD5510_Init();
  11.          while(1)
  12.          {
  13.            LED4 =0;
  14.            LCD_prints(0,0,"abcdefghijk");
  15.            LCD_prints(0,1,"lmnopqrstuv");
  16.            LCD_prints(0,2,"wxyz{|}~");
  17.            delay();
  18.            delay();
  19.            delay();
  20.            LED4 = 1;
  21.            LCD_prints(0,0,"ABCDEFGHIJK");
  22.            LCD_prints(0,1,"LMNOPQRSTUV");           
  23.            LCD_prints(0,2,"WXYZ");
  24.            delay();
  25.            delay();
  26.            delay();
  27.    }

  28. }
復(fù)制代碼

顯示小寫字符串


顯示大寫字符串

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:276663 發(fā)表于 2020-10-10 10:04 | 只看該作者
芯圣的板子已經(jīng)集齊,開始召喚神龍
回復(fù)

使用道具 舉報

板凳
ID:956246 發(fā)表于 2021-8-23 14:08 | 只看該作者
圣芯的外設(shè)全映射功能做的非常好,例如UART的TXD可以映射到P21/P22/P23....等等,這個功能非常實用
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表