#ifndef CONFIG_H #define CONFIG_H #include "include/compiler.h" #include "include/extsnd1.h" /*#include "stdbool.h"*/ #include #include "include/compiler.h" #define xdata __xdata #define idata __idata #define pdata __pdata #define data __data #define code const __code /*#define bit bool*/ /* Clock */ #define X2_MODE /* X2 mode */ //#undef X2_MODE /* no X2 mode */ #define FOSC 16000 /* oscillator frequency (KHz) */ #ifdef X2_MODE #define FPER FOSC #else #define FPER FOSC/2 #endif /* Scheduler Definitions */ #define SCHEDULER_TICK 1 /* unit is ms */ /* Player Mode */ #define PLAYER_PLAY_MODE PLAY_DISK /* _DIR or _DISK */ #define PLAYER_PLAY_START START_STOP /* _PLAY or _STOP */ #define PLAYER_PLAY_LOOP PLAY_NO_LOOP /* _LOOP or _NO_LOOP */ #define MEM_CHIP_FS FS_FAT_12_16 /* _FAT_12_16 _FAT_32 _FAT_12_16_32 _ISO _NONE */ #define MEM_CARD_FS FS_FAT_12_16 /* _FAT_12_16 _FAT_32 _FAT_12_16_32 _ISO _NONE */ /* Storage Driver */ #define MEM_CHIP_TYPE CHIP_DF /* _DF, _NF, _HDD or _NONE */ #define MEM_CARD_TYPE CARD_NONE /* _MMC, _SD, _SMC, _CF, _CDR or _NONE */ /* Nand Flash Driver */ #define NF_CONFIG NF_1X_512B /* _1X_512B, _2X_512B, _1X_2KB or _2X_2KB */ #define NF_CAPACITY_AUTO_DETECT TRUE /* Timer Driver */ #define T0_X2 TRUE /* FT0_IN always Fosc/2 */ #define T1_X2 TRUE /* FT1_IN always Fosc/2 */ /* Keyboard Driver */ #define KBD_EXIT_PD FALSE /* Exit power down configuration */ #define LOCK_ROW P1_bit.P1_2 /* ROW of lock key */ #define KEY_LOCK KEY_2_3 /* Keypad Locked */ /* MP3 Driver */ #define MP3_CRC_SKIP FALSE /* CRC error configuration */ /*BEGIN: USB Driver ************************************************************/ #define USB_PU_CTRL FALSE /* no pull-up control */ #define VENDOR_ID 0xEB03 /* Atmel vendor ID = 03EBh <- This needs to be changed*/ #define PRODUCT_ID 0x0220 /* Atmel Product ID: 2002h <- This needs to be changed as well*/ #define RELEASE_NUMBER 0x0001 /* USB Mass Storage ! unicode char */ #define USB_MANUFACTURER_NAME {'W'<<8,'i'<<8,'R'<<8,'A'<<8,'D'<<8} #define USB_MN_LENGTH 5 #define USB_PRODUCT_NAME {'W'<<8,'i'<<8,'R'<<8,'A'<<8,'D'<<8} #define USB_PN_LENGTH 5 /*This serial number needs to be changed*/ #define USB_SERIAL_NUMBER {'4'<<8,'7'<<8,'1'<<8,'0'<<8,'7'<<8,'6'<<8,'5'<<8,'0'<<8,'6'<<8,'6'<<8,'4'<<8,'5'<<8,'1'<<8} #define USB_SN_LENGTH 13 /*END: USB Driver ****************************************************************/ /* SCSI Mass Storage */ #define SBC_VENDOR_ID {'G','e','n','e','r','i','c',' '} #define SBC_PRODUCT_ID {'S','N','D','1',' ','M','P','3',' ','P','l','a','y','e','r',' '} #define SBC_REVISION_ID {'0','.','0','0'} /* ADC Frequency */ #define SAMPLING_PERIOD 0.125 /* unit is ms */ #define SECT_PER_SECOND (2/SAMPLING_PERIOD) /* 512 bytes sector size */ /* Interrupt Priorities */ #define EX0_PRIO ((Byte)0) #define T0_PRIO ((Byte)3) #define EX1_PRIO ((Byte)0) #define T1_PRIO ((Byte)2) #define MP3_PRIO ((Byte)2) #define AUD_PRIO ((Byte)2) #define MMC_PRIO ((Byte)0) #define I2C_PRIO ((Byte)0) #define SPI_PRIO ((Byte)0) #define ADC_PRIO ((Byte)0) #define KBD_PRIO ((Byte)1) #define USB_PRIO ((Byte)1) /*----- Firmware Definition -----*/ #define GL_BUF_SIZE (256) /* Mass Storage Configuration */ #define MS_MAX_LUN (1) /* number of logical unit - 1 */ /* Chip Version */ /* AT89C51SND1C = 0x84 */ #define CHIP_VERSION ((Byte)0x84) /* Firmware Version */ #define SYS_VERSION "V3.4.4" /* FAT Format Structure */ typedef struct { Uint16 nb_cylinder; Byte nb_head; Byte nb_sector; Byte nb_hidden_sector; Byte nb_sector_per_cluster; } s_format; Sfr (MP3DBG , 0xAE); /* hidden register */ #define global_enable_int() (IEN0_bit.EA = 1) #endif //CONFIG_H