Пример #1
0
/**
 * \brief Initializes the LCD controller.
 * Configure SMC to access LCD controller at 64MHz MCK.
 */
extern void LCDD_Initialize( void )
{
    
    /* Initialize LCD controller */
    ILI9488_Initialize() ;

    /* Initialize LCD controller */
    ILI9488_SetDisplayPortrait( 0 ) ;

    /* Set LCD backlight */
    LCDD_SetBacklight( 16 ) ;
}
Пример #2
0
//------------------------------------------------------------------------------
/// Initializes the LCD controller.
/// SMC are configured @ 96MHz for LCD.
/// \param pLcdBase   LCD base address.
//------------------------------------------------------------------------------
void LCDD_Initialize(void)
{
    const Pin pPins[] = {BOARD_LCD_PINS};
    AT91PS_HSMC4_CS pSMC = AT91C_BASE_HSMC4_CS2;
    unsigned int rMode;

    // Enable pins
    PIO_Configure(pPins, PIO_LISTSIZE(pPins));

    // Enable peripheral clock
    PMC_EnablePeripheral(AT91C_ID_HSMC4);

    // EBI SMC Configuration
    pSMC->HSMC4_SETUP = 0
                    | ((1 <<  0) & AT91C_HSMC4_NWE_SETUP)
                    | ((1 <<  8) & AT91C_HSMC4_NCS_WR_SETUP)
                    | ((9 << 16) & AT91C_HSMC4_NRD_SETUP)
                    | ((9 << 24) & AT91C_HSMC4_NCS_RD_SETUP)
                    ;

    pSMC->HSMC4_PULSE = 0
                    | (( 4 <<  0) & AT91C_HSMC4_NWE_PULSE)
                    | (( 4 <<  8) & AT91C_HSMC4_NCS_WR_PULSE)
                    | (( 36 << 16) & AT91C_HSMC4_NRD_PULSE)
                    | (( 36 << 24) & AT91C_HSMC4_NCS_RD_PULSE)
                    ;

    pSMC->HSMC4_CYCLE = 0
                    | ((10 <<  0) & AT91C_HSMC4_NWE_CYCLE)
                    | ((45 << 16) & AT91C_HSMC4_NRD_CYCLE)
                    ;
                 
    rMode = pSMC->HSMC4_MODE & ~(AT91C_HSMC4_DBW | AT91C_HSMC4_READ_MODE | AT91C_HSMC4_WRITE_MODE);
    pSMC->HSMC4_MODE = rMode
                 | (AT91C_HSMC4_READ_MODE)
                 | (AT91C_HSMC4_WRITE_MODE)
                 | (AT91C_HSMC4_DBW_WIDTH_SIXTEEN_BITS)
                 ;
                 
    // Initialize LCD controller (HX8347)
    LCD_Initialize((void *)BOARD_LCD_BASE);

    // Set LCD backlight
    LCDD_SetBacklight(25);
}
Пример #3
0
/**
 * \brief Initializes the LCD controller.
 * Configure SMC to access LCD controller at 64MHz MCK.
 */
extern void LCDD_Initialize( void )
{
    const Pin pPins[] = {BOARD_LCD_PINS};
    Smc *pSmc = SMC;

    /* Enable pins */
    PIO_Configure(pPins, PIO_LISTSIZE(pPins));

    /* Enable peripheral clock */
    PMC_EnablePeripheral( ID_SMC ) ;

    /* EBI SMC Configuration */
    pSmc->SMC_CS_NUMBER[1].SMC_SETUP = 0
                | ((2 <<  0) & SMC_SETUP1_NWE_SETUP)
                | ((2 <<  8) & SMC_SETUP1_NCS_WR_SETUP)
                | ((2 << 16) & SMC_SETUP1_NRD_SETUP)
                | ((2 << 24) & SMC_SETUP1_NCS_RD_SETUP)
                ;

    pSmc->SMC_CS_NUMBER[1].SMC_PULSE = 0
                | ((4  <<  0) & SMC_PULSE1_NWE_PULSE)
                | ((4  <<  8) & SMC_PULSE1_NCS_WR_PULSE)
                | ((10 << 16) & SMC_PULSE1_NRD_PULSE)
                | ((10 << 24) & SMC_PULSE1_NCS_RD_PULSE)
                ;

    pSmc->SMC_CS_NUMBER[1].SMC_CYCLE = 0
                | ((10 <<  0) & SMC_CYCLE1_NWE_CYCLE)
                | ((22 << 16) & SMC_CYCLE1_NRD_CYCLE)
                ;

    pSmc->SMC_CS_NUMBER[1].SMC_MODE = 0
                | (SMC_MODE1_READ_MODE)
                | (SMC_MODE1_WRITE_MODE)
                | (SMC_MODE1_DBW_8_BIT)
                ;

    /* Initialize LCD controller */
    LCD_Initialize() ;

    /* Set LCD backlight */
    LCDD_SetBacklight( 2 ) ;
}
Пример #4
0
/**
 * \brief Initializes the LCD controller.
 * Configure SMC to access LCD controller at 64MHz MCK.
 */
extern void LCDD_Initialize( void )
{
    const Pin pPins[] = {BOARD_LCD_PINS};
    Smc *pSmc = SMC;

    /* Enable pins */
    PIO_Configure(pPins, PIO_LISTSIZE(pPins));

    /* Enable peripheral clock */
    PMC_EnablePeripheral( ID_SMC ) ;

    /* EBI SMC Configuration */
    pSmc->SMC_CS_NUMBER[1].SMC_SETUP = SMC_SETUP_NWE_SETUP(2)
                                     | SMC_SETUP_NCS_WR_SETUP(2)
                                     | SMC_SETUP_NRD_SETUP(2)
                                     | SMC_SETUP_NCS_RD_SETUP(2);

    pSmc->SMC_CS_NUMBER[1].SMC_PULSE = SMC_PULSE_NWE_PULSE(4)
                                     | SMC_PULSE_NCS_WR_PULSE(4)
                                     | SMC_PULSE_NRD_PULSE(10)
                                     | SMC_PULSE_NCS_RD_PULSE(10);

    pSmc->SMC_CS_NUMBER[1].SMC_CYCLE = SMC_CYCLE_NWE_CYCLE(10)
                                     | SMC_CYCLE_NRD_CYCLE(22);

    pSmc->SMC_CS_NUMBER[1].SMC_MODE = SMC_MODE_READ_MODE
                                    | SMC_MODE_WRITE_MODE
                                    | SMC_MODE_DBW_8_BIT;

    /* Initialize LCD controller */
    LCD_Initialize() ;

    /* Initialize LCD controller */
    LCD_SetDisplayPortrait( 0 ) ;

    /* Set LCD backlight */
    LCDD_SetBacklight( 2 ) ;
}