⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vfd_tbl.c

📁 一个两碟控制的VCD的代码,两碟之间的转动及连续播放,已大量生产的CODE.
💻 C
📖 第 1 页 / 共 5 页
字号:
    CALENDAR_00,CALENDAR_01,CALENDAR_02,CALENDAR_03,CALENDAR_04,CALENDAR_05,
    CALENDAR_06,CALENDAR_07,CALENDAR_08,CALENDAR_09,CALENDAR_10,CALENDAR_11,
    CALENDAR_12,CALENDAR_13,CALENDAR_14,CALENDAR_15,CALENDAR_16
};

unsigned short INDICATOR_TABLE[5][8] = {
    { _SEG_MUSIC_CD,_SEG_VCD,_SEG_CDI,_SEG_VIDEO,_SEG_KARAOKE,_SEG_KEY_PLUS,_SEG_KEY_MINUS,_SEG_KEY_RESUME},
    { _SEG_MEMORY,_SEG_PROGRAM,_SEG_RANDOM,_SEG_REPEAT,_SEG_REP_1,_SEG_REP_ALL,
      _SEG_REP_A,_SEG_REP_B },
    { _SEG_NTSC,_SEG_PAL,_SEG_1_L,_SEG_2_R,_SEG_VOCAL,_SEG_AUX,_SEG_PBC_OFF,_SEG_CONTINUE},
    { _SEG_PLAY,_SEG_PAUSE,_SEG_TRACK,_SEG_TIME,_SEG_INTRO,_SEG_20_PLUS,_SEG_16_PLUS,_SEG_HYPHEN},
    { _SEG_SURROUND,_SEG_SHUFFLE,_SEG_S1,_SEG_S2,_SEG_FF,_SEG_FB,_SEG_OSD,_SEG_COLON}
};



#else

#ifdef FU239
#define EMPTY                   0x0001  /*0x1180*/   /* high byte is address      */
#define MAX_CALENDAR            16
#define CALENDAR_00             EMPTY       /* low byte is bit no        */
#define CALENDAR_01             0x0b10  /*0x0001*/
#define CALENDAR_02             0x0b20  /*0x0002*/
#define CALENDAR_03             0x0b40  /*0x0004*/
#define CALENDAR_04             0x0b80  /*0x0008*/
#define CALENDAR_05             0x0b01  /*0x0010*/
#define CALENDAR_06             0x0b02  /*0x0020*/
#define CALENDAR_07             0x0b04  /*0x0040*/
#define CALENDAR_08             0x0b08  /*0x0080*/
#define CALENDAR_09             0x0a10  /*0x0101*/
#define CALENDAR_10             0x0a20  /*0x0102*/
#define CALENDAR_11             0x0a40  /*0x0104*/
#define CALENDAR_12             0x0a80  /*0x0108*/
#define CALENDAR_13             0x0a01  /*0x0110*/
#define CALENDAR_14             0x0a02  /*0x0120*/
#define CALENDAR_15             0x0a04  /*0x0140*/
#define CALENDAR_16             0x0a08  /*0x0180*/


#define _SEG_MUSIC_CD            EMPTY
#define _SEG_VCD                 0x0204
#define _SEG_CDI                 EMPTY
#define _SEG_VIDEO               EMPTY
#define _SEG_KARAOKE             EMPTY
#define _SEG_KEY_PLUS            EMPTY
#define _SEG_KEY_MINUS           EMPTY
#define _SEG_KEY_RESUME          EMPTY

#define _SEG_MEMORY             EMPTY
#define _SEG_PROGRAM            0x0880
#define _SEG_RANDOM             0x0840
#define _SEG_REPEAT             0x0380
#define _SEG_REP_1              0x0340
#define _SEG_REP_ALL            0x0320
#define _SEG_REP_A              0x0310
#define _SEG_REP_B              0x0308


#define _SEG_NTSC               EMPTY
#define _SEG_PAL                EMPTY
#define _SEG_1_L                EMPTY
#define _SEG_2_R                EMPTY
#define _SEG_VOCAL              EMPTY
#define _SEG_AUX                EMPTY
#define _SEG_PBC_OFF            EMPTY
#define _SEG_CONTINUE           EMPTY


#define _SEG_PLAY               0x0810
#define _SEG_PAUSE              0x0808
#define _SEG_TRACK              EMPTY
#define _SEG_TIME               EMPTY
#define _SEG_INTRO              0x0980
#define _SEG_20_PLUS            EMPTY
#define _SEG_16_PLUS            0x0902
#define _SEG_HYPHEN             0x0208

#define _SEG_REMAIN             0x0802
#define _SEG_MIN                0x0501
#define _SEG_SEC                0x0701
#define _SEG_COLON              0x0401
#define _SEG_RESUME             0x0801
#define _SEG_KARAOKE1           EMPTY
#define _SEG_KARAOKE2           EMPTY


/* 7 Segment control. P1 to P7 */
#define SEG7_A                  0x80
#define SEG7_B                  0x40
#define SEG7_C                  0x20
#define SEG7_D                  0x10
#define SEG7_E                  0x08
#define SEG7_F                  0x04
#define SEG7_G                  0x02


unsigned char REFRESH_ADDRESS[] = {
    0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,
    0x08,0x09,0x0a,0x0b
};

unsigned short CALENDAR_TABLE[] = {
    CALENDAR_00,CALENDAR_01,CALENDAR_02,CALENDAR_03,CALENDAR_04,CALENDAR_05,
    CALENDAR_06,CALENDAR_07,CALENDAR_08,CALENDAR_09,CALENDAR_10,CALENDAR_11,
    CALENDAR_12,CALENDAR_13,CALENDAR_14,CALENDAR_15,CALENDAR_16
};

unsigned short INDICATOR_TABLE[5][8] = {
    { _SEG_MUSIC_CD,_SEG_VCD,_SEG_CDI,_SEG_VIDEO,_SEG_KARAOKE,_SEG_KEY_PLUS,_SEG_KEY_MINUS,_SEG_KEY_RESUME},
    { _SEG_MEMORY,_SEG_PROGRAM,_SEG_RANDOM,_SEG_REPEAT,_SEG_REP_1,_SEG_REP_ALL,
      _SEG_REP_A,_SEG_REP_B },
    { _SEG_NTSC,_SEG_PAL,_SEG_1_L,_SEG_2_R,_SEG_VOCAL,_SEG_AUX,_SEG_PBC_OFF,_SEG_CONTINUE},
    { _SEG_PLAY,_SEG_PAUSE,_SEG_TRACK,_SEG_TIME,_SEG_INTRO,_SEG_20_PLUS,_SEG_16_PLUS,_SEG_HYPHEN},
    { _SEG_REMAIN,_SEG_MIN,_SEG_SEC,_SEG_COLON,_SEG_RESUME,_SEG_KARAOKE1,_SEG_KARAOKE2,EMPTY}
};
#endif /* KANGHUI30   */
#endif /* fu239       */
#endif /* fu271       */
#endif /* fu265       */
#endif /* SVA_06mm    */
#endif /* fu_huasheng */

#else
#define MAX_CALENDAR            20
#define CALENDAR_00             EMPTY      /* low byte is bit no        */
#define CALENDAR_01             0x0302      /* 0x0301 */
#define CALENDAR_02             0x0301      /* 0x0300 */
#define CALENDAR_03             0x0102      /* 0x0101 */
#define CALENDAR_04             0x0101      /* 0x0100 */
#define CALENDAR_05             0x0280      /* 0x0207 */
#define CALENDAR_06             0x0201      /* 0x0200 */
#define CALENDAR_07             0x0080      /* 0x0007 */
#define CALENDAR_08             0x0001      /* 0x0000 */
#define CALENDAR_09             0x0202      /* 0x0201 */
#define CALENDAR_10             0x0220      /* 0x0205 */
#define CALENDAR_11             0x0002      /* 0x0001 */
#define CALENDAR_12             0x0020      /* 0x0005 */
#define CALENDAR_13             0x0240      /* 0x0206 */
#define CALENDAR_14             0x0204      /* 0x0202 */
#define CALENDAR_15             0x0040      /* 0x0006 */
#define CALENDAR_16             0x0004      /* 0x0002 */
#define CALENDAR_17             0x0210      /* 0x0204 */
#define CALENDAR_18             0x0208      /* 0x0203 */
#define CALENDAR_19             0x0010      /* 0x0004 */
#define CALENDAR_20             0x0008      /* 0x0003 */

#define _SEG_CDDA               0x1101      /* 0x1100 */
#define _SEG_VCD                0x1020      /* 0x1005 */
#define _SEG_CDI                0x1004      /* 0x1002 */
#define _SEG_CDG                0x1001      /* 0x1000 */
#define _SEG_KARAOKE            0x0b01      /* 0x0b00 */

#define _SEG_MEMORY             0x0480      /* 0x0407 */
#define _SEG_PROGRAM            0x0501      /* 0x0500 */
#define _SEG_RANDOM             0x0704      /* 0x0702 */
#define _SEG_REPEAT             0x0f04      /* 0x0f02 */
#define _SEG_REP_1              0x0b04      /* 0x0b02 */
#define _SEG_REP_ALL            0x0b02      /* 0x0b01 */
#define _SEG_SET_A              0x0f01      /* 0x0f00 */
#define _SEG_SET_B              0x0f02      /* 0x0f01 */

#define _SEG_NTSC               0x1080      /* 0x1007 */
#define _SEG_PAL                0x1002      /* 0x1001 */
#define _SEG_1_L                0x1040      /* 0x1006 */
#define _SEG_2_R                0x1010      /* 0x1004 */
#define _SEG_VOCAL              0x0702      /* 0x0701 */
#define _SEG_AUX                0x0708      /* 0x0703 */

#define _SEG_PLAY               0x1102      /* 0x1101 */
#define _SEG_PAUSE              0x1104      /* 0x1102 */
#define _SEG_TRACK              0x0e80      /* 0x0e07 */
#define _SEG_TIME               0x0680      /* 0x0607 */
#define _SEG_INTRO              0x0502      /* 0x0501 */
#define _SEG_20PLUS             0x0504      /* 0x0502 */
#define _SEG_COLON              0x0902      /* 0x0901 */
#define _SEG_HYPHEN             0x0d02      /* 0x0d01 */

#define CHAR_C                  0x39
#define CHAR_D                  0x5e
#define CHAR_E                  0x79
#define CHAR_F                  0x71
#define CHAR_I                  0x30
#define CHAR_L                  0x38
#define CHAR_N                  0x37
#define CHAR_O                  0x3f
#define CHAR_P                  0x73
#define CHAR_R                  0x50
#define CHAR_S                  0x6d
#define CHAR_U                  0x3e
#define CHAR__                  0x40
#define CHAR_                   0x00
#define CHAR_3                  0x4f


unsigned char REFRESH_ADDRESS[] = {
    0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,
    0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f,
    0x10,0x11
};

unsigned short CALENDAR_TABLE[] = {
    CALENDAR_00,CALENDAR_01,CALENDAR_02,CALENDAR_03,CALENDAR_04,CALENDAR_05,
    CALENDAR_06,CALENDAR_07,CALENDAR_08,CALENDAR_09,CALENDAR_10,CALENDAR_11,
    CALENDAR_12,CALENDAR_13,CALENDAR_14,CALENDAR_15,CALENDAR_16,CALENDAR_17,
    CALENDAR_18,CALENDAR_19,CALENDAR_20
};

unsigned short INDICATOR_TABLE[4][8] = {
    { _SEG_CDDA,_SEG_VCD,_SEG_CDI,_SEG_CDG,_SEG_KARAOKE,EMPTY,EMPTY,EMPTY },
    { _SEG_MEMORY,_SEG_PROGRAM,_SEG_RANDOM,_SEG_REPEAT,_SEG_REP_1,_SEG_REP_ALL,
      _SEG_SET_A,_SEG_SET_B },
    { _SEG_NTSC,_SEG_PAL,_SEG_1_L,_SEG_2_R,_SEG_VOCAL,_SEG_AUX,EMPTY,EMPTY },
    { _SEG_PLAY,_SEG_PAUSE,_SEG_TRACK,_SEG_TIME,_SEG_INTRO,_SEG_20PLUS,_SEG_COLON,
      _SEG_HYPHEN }
};

unsigned char DIGIT_TABLE[] = {
/*      0    1    2    3    4    5    6    7    8    9    SPACE              */
	0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x67,0x00
};

#endif /* else of VFD_FUTABA */

/*- vfd table ---------------------------------------------------------------*/

unsigned char DIGIT_TABLE[] = {
    CHAR_0, CHAR_1, CHAR_2, CHAR_3, CHAR_4,
    CHAR_5, CHAR_6, CHAR_7, CHAR_8, CHAR_9
};


#ifdef ONE
unsigned char MESSAGE_TABLE[9][6] = {
    { CHAR_n ,CHAR_O ,CHAR_d , CHAR_I ,CHAR_S ,CHAR_C  },
    { CHAR_U ,CHAR_n ,CHAR_d , CHAR_I ,CHAR_S ,CHAR_C  },
    { CHAR_  ,CHAR_  ,CHAR_O , CHAR_P ,CHAR_E ,CHAR_n  },
    { CHAR_  ,CHAR_C ,CHAR_L , CHAR_O ,CHAR_S ,CHAR_E  },
    { CHAR_E ,CHAR_R ,CHAR_R , CHAR__ ,CHAR_  ,CHAR_   },
    { CHAR_3  ,CHAR_ ,CHAR_O , CHAR_ ,CHAR_ ,CHAR_     },
    { CHAR_  ,CHAR_  ,CHAR_  , CHAR_  ,CHAR_  ,CHAR_   },
    { CHAR_O ,CHAR_O ,CHAR_ , CHAR_ ,CHAR_,CHAR_       },
#ifdef SGAME
/*    { CHAR_ ,CHAR_g ,CHAR_A , CHAR_m ,CHAR_n ,CHAR_E  }*/
    { CHAR_ ,CHAR_S ,CHAR_E , CHAR_g ,CHAR_A ,CHAR_  } 
#endif


};
#else

unsigned char MESSAGE_TABLE[11][6] = {
    { CHAR_n ,CHAR_O ,CHAR_d , CHAR_I ,CHAR_S ,CHAR_C  },
    { CHAR_U ,CHAR_n ,CHAR_d , CHAR_I ,CHAR_S ,CHAR_C  },
    { CHAR_  ,CHAR_  ,CHAR_O , CHAR_P ,CHAR_E ,CHAR_n  },
    { CHAR_  ,CHAR_C ,CHAR_L , CHAR_O ,CHAR_S ,CHAR_E  },
    { CHAR_E ,CHAR_R ,CHAR_R , CHAR__ ,CHAR_  ,CHAR_   },
    { CHAR_  ,CHAR_U ,CHAR_C , CHAR_d ,CHAR_3 ,CHAR_O  },
    { CHAR_  ,CHAR_  ,CHAR_  , CHAR_  ,CHAR_  ,CHAR_   },
    { CHAR_  ,CHAR_  ,CHAR_R , CHAR_E ,CHAR_A,CHAR_d   },
    { CHAR_1 ,CHAR__ ,CHAR__ , CHAR__ ,CHAR__ ,CHAR_2  },
    { CHAR_  ,CHAR_1 ,CHAR_O , CHAR_P ,CHAR_E ,CHAR_n  },
    { CHAR_  , CHAR_2,CHAR_O , CHAR_P ,CHAR_E ,CHAR_n  }
};
#endif



/**************************************************************
* NOTE :
* If KEYS definitions are changed, the KEYS definitions
*    in the play.c should also changed.
**************************************************************/

unsigned char VFD_KEY_TABLE[] = {
#if (D16312 && !CUST3)
#ifdef JINRE_838
    FF_KEY,                 /* 0x00 */
    KEY_6,                  /* 0x01 */
    NEXT_KEY,               /* 0x02 */
    ECHO_MINUS,             /* 0x03 */
    FB_KEY,                 /* 0x04 */
    KEY_5,                  /* 0x05 */
    KEY_PLUS_10,            /* 0x06 */
    ECHO_PLUS,              /* 0x07 */
    PREVIOUS_KEY,           /* 0x08 */
    KEY_4,                  /* 0x09 */
    KEY_0,                  /* 0x0a */
    NO_KEY,                 /* 0x0b */
    STOPRETURN_KEY,         /* 0x0c */
    KEY_3,                  /* 0x0d */
    KEY_9,                  /* 0x0e */
    VOCAL_ASSIST_KEY,       /* 0x0f */
    PLAY_KEY,               /* 0x10 */
    KEY_2,                  /* 0x11 */
    KEY_8,                  /* 0x12 */
    NO_KEY,                 /* 0x13 */
    EJECT_KEY,              /* 0x14 */
    KEY_1,                  /* 0x15 */
    KEY_7,                  /* 0x16 */
    NO_KEY                  /* 0x17 */
#else
#ifdef JINRE_868
    KEY_9,                  /* 0x00 */
    KEY_0,                  /* 0x01 */
    ECHO_MINUS,             /* 0x02 */
    NO_KEY,                 /* 0x03 */
    KEY_8,                  /* 0x04 */
    KEY_1,                  /* 0x05 */
    ECHO_PLUS,              /* 0x06 */
    STOP_KEY,               /* 0x07 */
    KEY_7,                  /* 0x08 */
    KEY_2,                  /* 0x09 */
    PBC_KEY,                /* 0x0a */
    REPEAT_KEY,             /* 0x0b */
    KEY_6,                  /* 0x0c */
    KEY_3,                  /* 0x0d */
    VOCAL_ASSIST_KEY,       /* 0x0e */
    NO_KEY,                 /* 0x0f */
    KEY_5,                  /* 0x10 */
    KEY_4,                  /* 0x11 */
    FF_KEY,                 /* 0x12 */
    NO_KEY,                 /* 0x13 */
    KEY_PLUS_10,            /* 0x14 */
    EJECT_KEY,              /* 0x15 */
    FB_KEY,                 /* 0x16 */
    NO_KEY,                 /* 0x17 */
    KEY_MINUS,              /* 0x18 */
    NEXT_KEY,               /* 0x19 */
    NO_KEY,                 /* 0x1a */
    NO_KEY,                 /* 0x1b */
    NO_KEY,                 /* 0x1c */
    NO_KEY,                 /* 0x1d */
    NO_KEY,                 /* 0x1e */
    NO_KEY,                 /* 0x1f */
    KEY_RESUME_KEY,         /* 0x20 */
    PLAY_KEY,               /* 0x21 */
    NO_KEY,                 /* 0x22 */
    NO_KEY,                 /* 0x23 */
    NO_KEY,                 /* 0x24 */
    NO_KEY,                 /* 0x25 */
    NO_KEY,                 /* 0x26 */
    NO_KEY,                 /* 0x27 */
    KEY_PLUS,               /* 0x28 */
    NO_KEY,                 /* 0x29 */
    NO_KEY,                 /* 0x2a */
    NO_KEY,                 /* 0x2b */
    NO_KEY,                 /* 0x2c */
    NO_KEY,                 /* 0x2d */
    NO_KEY,                 /* 0x2e */
    NO_KEY,                 /* 0x2f */
    RETURN_KEY,             /* 0x30 */
    PREVIOUS_KEY,           /* 0x31 */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -