本帖最后由 ddllxxrr 于 2019-11-1 21:21 编辑  
 
我这个屏为我立下了汗马功劳,我基本上一用屏别的什么占几十根线的屏基本不用。谁爱用谁用,等到把线连好了,我的岁月差不多走完了。 
       这个是230*240的淘宝有的是,一大把。 
       先说说我的点屏经过。 
       首先,屏背景灯一根线连到VCC上(3.3V)这样我就省了一根线(很扣)。 
       这样我就用了六根线,其实还可省一根,我也不想太狗逼。就连上了。 
 
       我觉得关键是定义好管脚。最好不用C脚,因为它连着SWD,上一贴我就把板子搞坏,又起死回生地搞定。 
 
        我只是加了两个文件,而这两个文件是屏的资料里提供的。 
        一个LCD.h一个LCD.c 
        我加的管脚定义如下: 
 
- #define PBout(n)   BIT_ADDR(GPIOB_ODR_ADDR, n)
 
 - #define PBin(n)    BIT_ADDR(GPIOB_IDR_ADDR, n)
 
 - #define PAout(n)   BIT_ADDR(GPIOA_ODR_ADDR, n)
 
 - #define PAin(n)    BIT_ADDR(GPIOA_IDR_ADDR, n)        
 
  
 
- #define LCD_RS_PIN  GPIO_PA0                   //数据/命令切换
 
 - #define LCD_SDI_PIN GPIO_PA1                  //SPI写
 
 - #define LCD_SDO_PIN GPIO_PA2                      //SPI读
 
 - #define LCD_CS_PIN  GPIO_PA3                //片选        
 
 - #define LCD_CLK_PIN GPIO_PA4   //SPI时钟
 
 - #define LCD_RESET_PIN GPIO_PA5              //复位 
 
  
- #define LCD_RS (PAout(0))
 
 - #define LCD_SDI (PAout(1))
 
 - #define LCD_SDO (PAout(2))
 
 - #define LCD_CS (PAout(3))
 
 - #define LCD_CLK (PAout(4))
 
 - #define LCD_RESET (PAout(5))
 
  而main中则如下: 
      LCD_Init(); 
         
        while(1) 
        {         
                LCD_Clear(RED);mdelay(1000);        mdelay(1000);         
                LCD_Clear(GREEN);mdelay(1000);        mdelay(1000);         
                LCD_Clear(BLUE);mdelay(1000);        mdelay(1000);         
        }    
 
 
  |