📄 52xx_board.h
字号:
/*
$Workfile: 52XX_BOARD.H $
$Revision: 1.55 $
$Date: Dec 10 2004 07:56:12 $
*/
//******************************************************************
//
// Copyright (C) 2002. GENESIS MICROCHIP INC.
// All rights reserved. No part of this program may be reproduced
//
// Genesis Microchip Corp., 2150 Gold Street
// Alviso, CA 95002 USA
// Genesis Microchip Inc., 165 Commerce Valley Dr. West
// Thornhill, Ontario, Canada, L3T 7V8
//
//================================================================
//
// MODULE: 52xx_board.h
//
// USAGE : gm52xx board configuration
//
//******************************************************************
#ifndef __52XX_BOARD_H__
#define __52XX_BOARD_H__
#define EV_BD 0
#define RD1C_BD 1
#define RD5 5
#define V10Rel 1 //Applicable with WB 3.1.0.33
#define V10Rela 2 //Applicable with WB 3.1.1.6
/***************************************************************************/
/* Assign value to BOARD - To customize the Software to be Board Specific */
/***************************************************************************/
#define BOARD EV_BD
#define FIRMWARE V10Rel
//******************************************************************
// BOARD SPECIFIC DEFINITIONS:
//******************************************************************
// BUG - check over this
#define RCLK_MHZ 200UL // expected Rclk in MHZ
// BUG CALCULATION IS NOT RIGHT FOR 52XX, FOR NOW SELECT CORRECT VALUE FOR 14.318MHZ TCLK
#define RCLK_PLL_VAL 14 //(((RCLK_MHZ + T_CLK_MHZ/2) / ((int)T_CLK_MHZ) - 1))
#define INIT_SCLK_MHZ 80
#define INIT_DCLK_MHZ 65
#define SDDS_INIT_FREQ_VAL (((long)INIT_SCLK_MHZ * 4096 * 4096) / RCLK_MHZ)
#define DDDS_INIT_FREQ_VAL (((long)INIT_DCLK_MHZ * 4096 * 4096) / RCLK_MHZ)
//******************************************************************
// Polarity identification definition for GPIO signals
//******************************************************************
#define POS_POL 0
#define NEG_POL 1
//******************************************************************
// EV BOARD
//******************************************************************
#if ( BOARD == EV_BD )
#define CPU_CLK_KHZ 100000UL // in KHz
#define CPU_SPEED 1
#define T_CLK_KHZ 14318
#define LCLK_MHZ 170UL // Set to 10% above maximum input frequency.
#define FLASH_SPEED_NS 90 // 90ns.
#define I2C_SPEED 400 // 100KHz or 400KHz.
#define OCM_CLK_PWRDOWN_KHZ T_CLK_KHZ
#define LED_POL POS_POL
#define KEY_PAD KEYPAD_GPIO
// KEYPAD ***************************
// GPIO Keypad settings
#if FIRMWARE==V10Rel
#define PORT_ADC_1_USED // Define for LBADC Keypad...
// #define PORT_ADC_2_USED
// #define PORT_ADC_3_USED
// #define PORT_IR_USED // IR Keypad
#define PORT_GPIO_1_USED
#define GPIOKEYPAD_ALLOWED 1
#else
#define GPIOKEYPAD_ALLOWED 1
#endif
#define USE_LONG_DEMO_KEYPAD 0 //for different GPIO mapping to LED1
#define KeyPolarity 0 // polarity for GPIO keypad.
// LBADC Keypad settings.
#define AdcPolarity 0 // polarity for LBADC keypad.
// Brightness control
#define PWM0_BRIGHTNESS 1 // Use PWM for brightness control
#define BRIGHTNESS_PWM_PORT PWM0_PULSE // address of PWM to use (see register.h)
// GPIO1 bit definitions
#define KEY_DOWN BIT0
#define KEY_RIGHT BIT1
#if USE_LONG_DEMO_KEYPAD
#define LED_ORANGE BIT3
#define LED_GREEN BIT2
#else
#define LED_ORANGE BIT2
#define LED_GREEN BIT3
#endif
#define KEY_UP BIT4
#define KEY_LEFT BIT5
#define KEY_ON BIT6
//** MASK For LED and KEYPAD **************************************
#define GPIO1_MASK (LED_GREEN | LED_ORANGE)
#define GPIO1_ODEN ( LED_GREEN | LED_ORANGE)
#define KEY_MASK (KEY_DOWN | KEY_RIGHT | KEY_UP | KEY_LEFT | KEY_ON)
//***********************************************************************************
//Note: The board should make corresponding changes to make cable detection work!!!
// Temporarily Map VGA_CABLE connected signal on GPIO14, Low(0) indicating connection;
// Temporarily Map DVI_CABLE connected signal on GPIO15, High(1) ndicating connection;
// This will need direction settion to input for GPIO_DIRCTRL2
//***********************************************************************************
#if USE_CABLE_DETECTION_FEATURE
#define IsVgaCableConnected() ((gm_ReadRegByte(GPINPUT2) & BIT6)==0) //GPIO14, LOW
#define IsDviCableConnected() ((gm_ReadRegByte(GPINPUT2) & BIT7)!=0) //GPIO15, HIGH
#endif
//***********************************************************************************
// Note: The board should be rewired to support software power on/off for the flash.
// GPIO2 is used as an example to control power on the flash. "LOW": power off,
// "HIGH": power on. This feature is disabled, until we finalize the power GPIO pin.
//***********************************************************************************
#if USE_POWERDOWN_ROM_CE
// #define DisableXROMPower() gm_ClearRegBitsByte(GPOUTPUT1, BIT2) // GPIO2, LOW
// #define EnableXROMPower() gm_SetRegBitsByte(GPOUTPUT1, BIT2) // GPIO2, HIGH
#define DisableXROMPower()
#define EnableXROMPower()
#endif
#define VideoDecoderResetLow()
#define VideoDecoderResetHigh()
#define NVRAM_32KBIT 0 // 1-use 32kbit NVRAM EEPROM driver
// 0-standard 16kbit and less driver
// 32kbit EEPROMS have an additional
// address byte.
// defines to control some of the default flavors. For instance when
// compiling a 5321 project you don't want VPORT support and you likely
// don't want GSEL driver support (initializing external video decoders etc.)
#define USE_VPORT 1 // include code to address VPORT.
#define USE_GSEL_DRVR_MODEL 1 // include code to support GSEL drivers
#define USE_VIDEO_FEATURES 1 // vcr ff/rew adjust etc.
#define USE_ACC_ACM 1 // support for ACC/ACM
#define USE_GETKEY_TIMER_ISR 1 // 0-disable use of Timer ISR, 1- use Timer ISR
//******************************************************************
// RD1 Rev C BOARD
//******************************************************************
#elif ( BOARD == RD1C_BD )
#define CPU_CLK_KHZ 100000UL // in KHz
#define CPU_SPEED 1
#define T_CLK_KHZ 14318
#define LCLK_MHZ 170UL // Set to 10% above maximum input frequency.
#define FLASH_SPEED_NS 90 // 90ns.
#define I2C_SPEED 400 // 100KHz or 400KHz.
#define OCM_CLK_PWRDOWN_KHZ T_CLK_KHZ
#define LED_POL POS_POL
#define KEY_PAD KEYPAD_GPIO
// KEYPAD ***************************
// GPIO Keypad settings
#if FIRMWARE==V10Rel
#define PORT_ADC_1_USED // Define for LBADC Keypad...
// #define PORT_ADC_2_USED
// #define PORT_ADC_3_USED
// #define PORT_IR_USED // IR Keypad
// #define PORT_GPIO_1_USED
// #define GPIOKEYPAD_ALLOWED 1
#else
#define GPIOKEYPAD_ALLOWED 1
#endif
#define USE_LONG_DEMO_KEYPAD 0 //for different GPIO mapping to LED1
#define KeyPolarity 0 // polarity for GPIO keypad.
// LBADC Keypad settings.
#define AdcPolarity 0 // polarity for LBADC keypad.
// Brightness control
#define PWM0_BRIGHTNESS 1 // Use PWM for brightness control
#define BRIGHTNESS_PWM_PORT PWM0_PULSE // address of PWM to use (see register.h)
// GPIO1 bit definitions
#define KEY_DOWN BIT0
#define KEY_RIGHT BIT1
#if USE_LONG_DEMO_KEYPAD
#define LED_ORANGE BIT3
#define LED_GREEN BIT2
#else
#define LED_ORANGE BIT2
#define LED_GREEN BIT3
#endif
#define KEY_UP BIT4
#define KEY_LEFT BIT5
#define KEY_ON BIT6
#define VID_DEC BIT6 // reset line for video decoder.
//** MASK For LED and KEYPAD **************************************
#define GPIO1_MASK ( LED_GREEN | LED_ORANGE | VID_DEC )
#define GPIO1_ODEN 0x00
#define KEY_MASK (KEY_DOWN | KEY_RIGHT | KEY_UP | KEY_LEFT | KEY_ON)
//***********************************************************************************
//Note: The board should make corresponding changes to make cable detection work!!!
// Temporarily Map VGA_CABLE connected signal on GPIO14, Low(0) indicating connection;
// Temporarily Map DVI_CABLE connected signal on GPIO15, High(1) ndicating connection;
// This will need direction settion to input for GPIO_DIRCTRL2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -