본문 바로가기

[DSP]/DSP6000

[TMS320C6720 EVM] TFT LCD테스트

 [TMS320C6720 EVM] TFT LCD테스트


TMS320C6720은 최대 200Mhz까지 동작한다. 속도가 빠르기 때문에 타이밍 조절하는데 좀 고생했다.
EMIF는 SDRAM, SRAM 모두 가능한데 SARM을 위한 CS가 하나밖에 없어 보드상의 Nor Flash CS인 CS2에서 점퍼를 이용해 [LCD_EXP_EVM] 보드 의 CS로 사용했다.

TFT LCD 400x240 한프레임 출력하는데 걸리는 시간은  4.2ms정도 이고(좀더 튜닝을 하면 더 오르겠지만.. EMIF속도가 빨라 Wait Time 설정이 필요하다), 안정적인 구동을 위해 7ms 설정 했다.


TMS320C672x TFT LCD 출력 테스트 동영상




TMS320C6720 SD Card 이미지 출력 예제 동영상
역시 SPI로 SD Card제어하기 때문에 속도는 그리 빠르지 않아 보인다. NAND를 이용하여 테스트 하면 속도가 빨라지지 않을까..




TMS320C6720 TFT LCD 구동 Read/Write 함수

#define LCD_DATA       *(volatile unsigned short*)(0x90000000)

//Write Command
void Lcd_Cmd(unsigned int Data)  
{
 LCD_RS_OFF();

  _LCD_DAT_OUT(Data);

LCD_RS_ON(); 
}

//Write Data
void Lcd_Data(unsigned int Data)  
{
 _LCD_DAT_OUT(Data);
}



TMS320C6720 SD Card 드라이버코드
//-----------------------------------------------------------------------------
// SD Card HAL
#define MMC_CS_PORT      SPI0_PC3
#define MMC_CS_BIT      BIT11

#define MMC_CS_INIT()     Cbi(SPI0_PC0, MMC_CS_BIT);Sbi(SPI0_PC1, MMC_CS_BIT);\
          MMC_CS_HIGH()
          
#define MMC_CS_HIGH()     Led1Off()
#define MMC_CS_LOW()     Led1On()
//#define MMC_CS_LOW()     Cbi(MMC_CS_PORT, MMC_CS_BIT)
//#define MMC_CS_LOW()     Cbi(MMC_CS_PORT, MMC_CS_BIT)

#define MMC_ASSERT_INIT()    MMC_CS_INIT();MMC_CS_HIGH()
#define MMC_ASSERT()     MMC_CS_LOW()
#define MMC_DEASSERT()     MMC_CS_HIGH()

#define MMC_SpiInit()     SPI1_Init()
#define MMC_SendByte     SPI1_WriteReadByte
#define MMC_Send(Data)      SPI1_WriteByte(Data)
#define MMC_Recv()      SPI1_WriteReadByte(0xFF)
#define MMC_RecvP(Data)     MMC_Send(0xFF); (*(Data)=SPI1_ReadByte())
#define MMC_SPISpeed     SPI1_SetSpeed
반응형