⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sc52x+

📁 SC52X开发板1.8寸SPI彩屏
💻
📖 第 1 页 / 共 5 页
字号:
C51 COMPILER V6.12  ST7735                                                                 08/09/2012 16:09:15 PAGE 1   


C51 COMPILER V6.12, COMPILATION OF MODULE ST7735
OBJECT MODULE PLACED IN .\Out Hex\ST7735.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Program\ST7735.c LARGE BROWSE DEBUG OBJECTEXTEND PRINT(.\Out Hex\ST7735.lst
                    -) OBJECT(.\Out Hex\ST7735.obj) 

stmt level    source

   1          
   2          //     
   3          /***************************************************/
   4          
   5          #include<reg51.h>
   6          #include<absacc.h>
   7          #include<intrins.h>
   8          #include<string.h>
   9          #define uchar unsigned char
  10          #define uint unsigned int
  11          
  12          sbit cs        =P0^3;	//片选
  13          sbit rs        =P0^0;	//数据或命令选择
  14          sbit sda       =P0^1;	//数据总线
  15          sbit scl       =P0^2;	//时钟总线
  16          sbit reset     =P1^7;  //复位
  17          
  18          
  19          sbit WM=P1^0;	       //数码管使能
  20          sbit DM2=P1^1;		   //数码管使能
  21          sbit LSD=P1^2;		   //流水灯管使能
  22          sbit DZ=P1^3;		   //点阵使能
  23          
  24           
  25          uchar bdata bitdata;
  26          sbit bit7=bitdata^7;
  27          sbit bit6=bitdata^6;
  28          sbit bit5=bitdata^5;
  29          sbit bit4=bitdata^4;
  30          sbit bit3=bitdata^3;
  31          sbit bit2=bitdata^2;
  32          sbit bit1=bitdata^1;
  33          sbit bit0=bitdata^0;
  34          
  35          void  OTP_Program();
  36          void  delay(uint t);
  37          void  Contrast_Adjust();
  38          uchar code Zk_ASCII8X16[];
  39          unsigned char code picture1[];
  40          
  41          
  42          void delay(uint time)
  43          {
  44   1       uint i,j;
  45   1        for(i=0;i<time;i++)
  46   1         for(j=0;j<250;j++);
  47   1      }
  48          
  49          
  50          
  51          
  52          void LCD_CtrlWrite_IC(uchar c)
  53          {
  54   1      bitdata=c;
C51 COMPILER V6.12  ST7735                                                                 08/09/2012 16:09:15 PAGE 2   

  55   1      cs=0;
  56   1      rs=0;
  57   1      sda=bit7;scl=0;scl=1;
  58   1      sda=bit6;scl=0;scl=1;
  59   1      sda=bit5;scl=0;scl=1;
  60   1      sda=bit4;scl=0;scl=1;
  61   1      sda=bit3;scl=0;scl=1;
  62   1      sda=bit2;scl=0;scl=1;
  63   1      sda=bit1;scl=0;scl=1;
  64   1      sda=bit0;scl=0;scl=1;
  65   1      cs=1;
  66   1      
  67   1      
  68   1      }
  69          void  LCD_DataWrite_IC(uchar d)  
  70          {
  71   1      
  72   1      bitdata=d;
  73   1      cs=0;
  74   1      rs=1;
  75   1      sda=bit7;scl=0;scl=1;
  76   1      sda=bit6;scl=0;scl=1;
  77   1      sda=bit5;scl=0;scl=1;
  78   1      sda=bit4;scl=0;scl=1;
  79   1      sda=bit3;scl=0;scl=1;
  80   1      sda=bit2;scl=0;scl=1;
  81   1      sda=bit1;scl=0;scl=1;
  82   1      sda=bit0;scl=0;scl=1;
  83   1      cs=1;
  84   1      }
  85          
  86          void LCD_DataWrite(uchar LCD_DataH,uchar LCD_DataL)
  87          {
  88   1      LCD_DataWrite_IC(LCD_DataH);
  89   1      LCD_DataWrite_IC(LCD_DataL);
  90   1      }
  91          
  92          void LCD_DataWrite_4K(uchar LCD_DataH,uchar LCD_DataM,uchar LCD_DataL)
  93          {
  94   1      LCD_DataWrite_IC(LCD_DataH);
  95   1      LCD_DataWrite_IC(LCD_DataM);
  96   1      LCD_DataWrite_IC(LCD_DataL);
  97   1      }
  98          
  99          void  write_command(uchar c)
 100          {
 101   1      bitdata=c;
 102   1      cs=0;
 103   1      rs=0;
 104   1      sda=bit7;scl=0;scl=1;
 105   1      sda=bit6;scl=0;scl=1;
 106   1      sda=bit5;scl=0;scl=1;
 107   1      sda=bit4;scl=0;scl=1;
 108   1      sda=bit3;scl=0;scl=1;
 109   1      sda=bit2;scl=0;scl=1;
 110   1      sda=bit1;scl=0;scl=1;
 111   1      sda=bit0;scl=0;scl=1;
 112   1      cs=1;      
 113   1      }
 114          
 115          void  write_data(uchar d)
 116          {
C51 COMPILER V6.12  ST7735                                                                 08/09/2012 16:09:15 PAGE 3   

 117   1      bitdata=d;
 118   1      cs=0;
 119   1      rs=1;
 120   1      sda=bit7;scl=0;scl=1;
 121   1      sda=bit6;scl=0;scl=1;
 122   1      sda=bit5;scl=0;scl=1;
 123   1      sda=bit4;scl=0;scl=1;
 124   1      sda=bit3;scl=0;scl=1;
 125   1      sda=bit2;scl=0;scl=1;
 126   1      sda=bit1;scl=0;scl=1;
 127   1      sda=bit0;scl=0;scl=1;
 128   1      cs=1;
 129   1      }
 130          
 131          
 132          void Reset()
 133          {
 134   1          reset=0;
 135   1          delay(100);
 136   1          reset=1;
 137   1          delay(100);
 138   1      }
 139          
 140          
 141          //////////////////////////////////////////////////////////////////////////////////////////////
 142          
 143          void lcd_initial()
 144          {
 145   1      
 146   1         reset=0;
 147   1         delay(100);
 148   1         reset=1;
 149   1         delay(100);
 150   1      
 151   1      //------------------------------------------------------------------//  
 152   1      //-------------------Software Reset-------------------------------//
 153   1      
 154   1      write_command(0x11);//Sleep exit 
 155   1      delay (120);
 156   1       
 157   1      //ST7735R Frame Rate  帧速率设置
 158   1      write_command(0xB1); //正常模式全色彩
 159   1      write_data(0x02); write_data(0x2C); write_data(0x2D); 
 160   1      write_command(0xB2);//在待机模式
 161   1      write_data(0x02); write_data(0x2C); write_data(0x2D); 
 162   1      write_command(0xB3);//在部分模式全彩 
 163   1      write_data(0x02); write_data(0x2C); write_data(0x2D); 
 164   1      write_data(0x02); write_data(0x2C); write_data(0x2D); 
 165   1      
 166   1      write_command(0xB4); //Column inversion  显示逆控制 
 167   1      write_data(0x07); 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -