標題: 芯圣SDK-HC89F0541單片機驅(qū)動LCD5110屏 [打印本頁]

作者: jinglixixi    時間: 2020-7-10 08:39
標題: 芯圣SDK-HC89F0541單片機驅(qū)動LCD5110屏
本帖最后由 jinglixixi 于 2020-7-10 08:42 編輯

LCD5110顯示屏是一款顯示內(nèi)容相對豐富,能耗相對比較低的顯示器件,為實現(xiàn)顯示功能它與SDK-HC89F0541開發(fā)板的連接關系為:
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. }
復制代碼

單字符顯示函數(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. }
復制代碼

字符串顯示函數(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. }
復制代碼

實現(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. }
復制代碼

顯示小寫字符串


顯示大寫字符串

作者: IdeaMing    時間: 2020-10-10 10:04
芯圣的板子已經(jīng)集齊,開始召喚神龍
作者: panxiaoyi    時間: 2021-8-23 14:08
圣芯的外設全映射功能做的非常好,例如UART的TXD可以映射到P21/P22/P23....等等,這個功能非常實用




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1