본문 바로가기

[MCU]/adStar

[adStar EVM] TFT-LCD 테스트

 [adStar EVM] TFT-LCD 테스트

 

 

 

adStar의 가장 큰 장점은 TFT-LCD 컨트롤러와 16Mbyte의 SDRAM을 내장하고 있어 LCD제어에 있어 아주 편리하다. 특히 16Mbyte의 RAM을 활용하면 이미지 처리에 있어 장점이 많다.

우선 기존 코드를 활용하여 TFT-LCD 모듈을  GPIO방식으로 제어 해 보았다. (추후 내장된 TFT-LCD컨트롤러를 활용하여 어느정도의 성능 향상이 있은지 확인 할 예정이다.)

 

400x240 한프레임 출력 시간은 GPIO방식이지만 20ms 정도로 측정된다.

 

adStar TFT-LCD 테스트 동영상

 

 

adStar TFT LCD 드라이버 코드

//-----------------------------------------------------------------------------
// TFT LCD Driver
#define TFT_DRV_HD66791     0
#define TFT_DRV_COM44     1

#define LCD_LAT_BIT      
#define LCD_LAT_PORT     
#define LCD_LAT_ON()     
#define LCD_LAT_OFF()     
#define LCD_DATA_LATCH()    LCD_LAT_ON();LCD_LAT_OFF();

#define LCD_EN_BIT      BIT5
#define LCD_EN_PORT      GPIO6
#define LCD_ENABLE()     cbi(LCD_EN_PORT, LCD_EN_BIT)
#define LCD_DISABLE()     sbi(LCD_EN_PORT, LCD_EN_BIT)

#define LCD_RST_BIT      BIT2
#define LCD_RST_PORT     GPIO6
#define LCD_RST_OFF()     cbi(LCD_RST_PORT, LCD_RST_BIT)
#define LCD_RST_ON()     sbi(LCD_RST_PORT, LCD_RST_BIT)

#define LCD_RS_BIT      BIT3
#define LCD_RS_PORT      GPIO6
#define LCD_RS_OFF()     cbi(LCD_RS_PORT, LCD_RS_BIT)
#define LCD_RS_ON()      sbi(LCD_RS_PORT, LCD_RS_BIT)

#define LCD_WR_BIT      BIT3
#define LCD_WR_PORT      GPIO5
#define LCD_WR_OFF()     cbi(LCD_WR_PORT, LCD_WR_BIT)
#define LCD_WR_ON()      sbi(LCD_WR_PORT, LCD_WR_BIT)

#define LCD_RD_BIT      BIT2
#define LCD_RD_PORT      GPIO5
#define LCD_RD_OFF()     //cbi(*R_P2oLOW, LCD_RD_BIT)
#define LCD_RD_ON()      //sbi(*R_P2oHIGH, LCD_RD_BIT)

#define LCD_BL_BIT      BIT4
#define LCD_BL_PORT      GPIO6
#define LCD_BL_OFF()     cbi(LCD_BL_PORT, LCD_BL_BIT)
#define LCD_BL_ON()      sbi(LCD_BL_PORT, LCD_BL_BIT)

#define TFTGpioInit()     *R_PAF8 = 0xFFFF;*R_GP8ODIR = 0xFF;\
          *R_PAF7 = 0xFFFF;*R_GP7ODIR = 0xFF;\
          Sbi(*R_GP6ODIR,  BIT2|BIT3|BIT4|BIT5);Sbi(*R_PAF6, GP_CFG(2)|GP_CFG(3)|GP_CFG(4)|GP_CFG(5));\
          Sbi(*R_GP5ODIR,  BIT3);Sbi(*R_PAF5, GP_CFG(3));

 

 

 

 

 

 

반응형