📄 lcd.vfd
字号:
/* Copyright 1998, ESS Technology, Inc. *//* SCCSID @(#)lcd.vfd 1.1 12/01/04 *//* Based on fut297.vfd 1.1 04/10/02 *//* * Futaba 6-BT-297GK * Application: DVD * * VFD controller: NEC 16311, NEC 16312, Panasonic 12510, Rohm 2872 */#ifdef LCD_DISC/* Tell me about your icon's locations! */#define ICON_empty ANODE_G6P8#define ICON_CAL01 ICON_empty#define ICON_CAL02 ICON_empty#define ICON_CAL03 ICON_empty#define ICON_CAL04 ICON_empty#define ICON_CAL05 ICON_empty#define ICON_CAL06 ICON_empty#define ICON_CAL07 ICON_empty#define ICON_CAL08 ICON_empty#define ICON_CAL09 ICON_empty#define ICON_CAL10 ICON_empty#define ICON_CAL11 ICON_empty#define ICON_angle ICON_empty#define ICON_s7 ANODE_G1P8#define ICON_s2 ANODE_G1P7#define ICON_s1 ANODE_G1P6#define ICON_s8 ANODE_G1P5#define ICON_s3 ANODE_G2P8#define ICON_s4 ANODE_G2P7#define ICON_s5 ANODE_G2P6#define ICON_s6 ANODE_G2P5#define ICON_repeat ANODE_G3P8#define ICON_play ANODE_G3P7 /*ANODE_G3P7*/#define ICON_pause ANODE_G3P6 /* ANODE_G3P6*/#define ICON_pbc ANODE_G3P5 /* ANODE_G3P5 */#define ICON_hundred ANODE_G4P8#define ICON_r ANODE_G8P8#define ICON_l ANODE_G8P7#define ICON_program ANODE_G8P6 /*ANODE_G8P6*/#define ICON_colon1 ANODE_G12P8#define ICON_colon2 ANODE_G12P8 /*ICON_empty*/#define ICON_ntsc ANODE_G15P15#define ICON_pal ANODE_G15P14#define ICON_sec ANODE_G15P16 /* ANODE_G15P16*/#define ICON_hyphen ANODE_G8P5 /* ANODE_G16P1 */#define ICON_rep ANODE_G15P16 /* ANODE_G15P16*/#define ICON_min ANODE_G14P16 /* ANODE_G14P16*/#define ICON_vcd ANODE_G16P6 /*ANODE_G16P6*/#define ICON_cd ANODE_G16P7 /*ANODE_G16P7*/#define ICON_dvd ICON_empty /*ICON_empty*/#define ICON_mp3 ANODE_G10P8 /*ANODE_G10P8*/#define ICON_slash ICON_empty#define ICON_ac3 ICON_empty#define ICON_random ICON_empty#define ICON_super ICON_empty#define ICON_seta ICON_empty#define ICON_setb ICON_empty#define ICON_all ICON_empty#define ICON_chapter ICON_empty#define ICON_title ICON_empty#define ICON_disc1 ICON_empty#define ICON_disc2 ICON_empty#define ICON_disc3 ICON_empty#define ICON_circle_1 ICON_empty#define ICON_circle_2 ICON_empty#define ICON_circle_3 ICON_empty#define ICON_one ICON_empty#define ICON_vocal ICON_empty/* * Controller mode setting. This is determined by number of G/P and * the particular VFD controller that you are using. */unsigned int VFD_mode[] = { 0x0b, /* 12G, 16P */};unsigned short VFD_calendar_table[] = {/* ICON_empty, ICON_CAL01, ICON_CAL02, ICON_CAL03, ICON_CAL04, ICON_CAL05, ICON_CAL06, ICON_CAL07, ICON_CAL08, ICON_CAL09, ICON_CAL10, ICON_CAL11 ,ICON_CAL12*/};unsigned int VFD_char_segment_size[] = {12 /* 8*/ };/* Internal GP to external GP mapping. */unsigned char VFD_refresh_address[] = { ANODE_G1L, ANODE_G2L, ANODE_G3L,ANODE_G4L, ANODE_G5L, ANODE_G7L, ANODE_G8L,ANODE_G8H, ANODE_G9L, ANODE_G10L, ANODE_G11L,ANODE_G12L, ANODE_G13L, ANODE_G14L, ANODE_G14H,ANODE_G15L, ANODE_G15H, ANODE_G16H};/* 7-segment definition (really 8 segments) for track/minute/second. */VFD_CHAR_SEGMENTS VFD_char_segments[] = { /* a b c d */ /* e f g */ {ANODE_G5P8, ANODE_G5P7, ANODE_G5P5, ANODE_G4P5, ANODE_G4P6, ANODE_G4P7, ANODE_G5P6, ICON_empty}, /* Track high */ {ANODE_G7P8, ANODE_G7P7, ANODE_G7P5, ANODE_G6P5, ANODE_G6P6, ANODE_G6P7, ANODE_G7P6, ICON_empty}, /* Track low */ {ANODE_G9P8, ANODE_G9P7, ANODE_G9P5, ANODE_G8P13, ANODE_G8P14, ANODE_G8P15, ANODE_G9P6, ICON_empty}, /* minute high */ {ANODE_G11P8, ANODE_G11P7, ANODE_G11P5, ANODE_G10P5, ANODE_G10P6, ANODE_G10P7, ANODE_G11P6, ICON_empty}, /* minute low */ {ANODE_G13P8, ANODE_G13P7, ANODE_G13P5, ANODE_G12P5, ANODE_G12P6, ANODE_G12P7, ANODE_G13P6, ICON_empty}, /* second high */ {ANODE_G15P8, ANODE_G15P7, ANODE_G15P5, ANODE_G14P5, ANODE_G14P6, ANODE_G14P7, ANODE_G15P6, ICON_empty}, /* second low */};/* Icons that belong to calendar *//*unsigned short VFD_calendar_table[] = { ICON_empty,};*/VFD_ICON VFD_iconmsg[] = { /* Repeat AB related */ {"clear_ab", {ICON_empty}, {ICON_seta, ICON_setb} }, {"seta", {ICON_repeat, ICON_seta}, {ICON_setb} }, {"setb", {ICON_repeat,/* ICON_seta,*/ ICON_setb}, {ICON_empty} }, /* Disc selection */ {"disc1", {ICON_disc1}, {ICON_disc2, ICON_disc3} }, {"disc2", {ICON_disc2}, {ICON_disc1, ICON_disc3} }, {"disc3", {ICON_disc3}, {ICON_disc2, ICON_disc3} }, /* Disc selection, no need to turn off any disks */ {"disc1_on", {ICON_disc1}, {ICON_empty} }, {"disc2_on", {ICON_disc2}, {ICON_empty} }, {"disc3_on", {ICON_disc3}, {ICON_empty} }, {"disc_1_off", {ICON_empty}, {ICON_disc1} }, {"disc_2_off", {ICON_empty}, {ICON_disc2} }, {"disc_3_off", {ICON_empty}, {ICON_disc3} }, /* Audio selection */ {"mono_l", {ICON_l}, {ICON_r, ICON_slash} }, {"mono_r", {ICON_r}, {ICON_l, ICON_slash} }, {"stereo", {ICON_l, ICON_r,ICON_slash}, {ICON_empty} }, {"vocal_l", {ICON_l}, { ICON_r,ICON_slash} }, {"vocal_r", {ICON_r}, { ICON_l,ICON_slash} }, {"vocal_off", {ICON_empty}, {ICON_empty} }, /* Play selection */ {"fb", {ICON_empty}, {ICON_play, ICON_pause} }, {"ff", {ICON_empty}, {ICON_play, ICON_pause} }, {"pause", {ICON_pause}, {ICON_play} }, {"play", {ICON_play}, {ICON_pause} }, {"stop", {ICON_min, ICON_sec, ICON_chapter}, {ICON_play, ICON_pause} }, /* PBC selection */ {"pbc_on", {ICON_pbc}, {ICON_program, ICON_repeat, ICON_all} }, {"pbc_off", {ICON_empty}, {ICON_pbc, ICON_program, ICON_random} }, /* Intro/digest */ {"intro_on", {ICON_empty}, {ICON_empty} }, {"intro_off", {ICON_empty}, {ICON_empty} }, /* Number of tracks */ {"more_on", {ICON_empty}, {ICON_empty} }, {"more_off", {ICON_empty}, {ICON_empty} }, /* Mic. colon, track, hyphen etc */ {"colon_on", {ICON_colon2}, {ICON_empty} }, {"colon_off", {ICON_empty}, {ICON_colon2} }, {"track", {ICON_chapter}, {ICON_empty} }, {"hyphen_on", {ICON_hyphen }, {ICON_empty} }, {"hyphen_off", {ICON_empty}, {ICON_hyphen } }, /* Play sequence */ {"program", {ICON_program}, { ICON_pbc,ICON_random} }, {"shuffle", {ICON_random}, {ICON_program, ICON_pbc} }, /* Repeat related */ {"repeat_off", {ICON_empty}, {ICON_repeat, ICON_all} }, {"repeat_one", {ICON_repeat}, {ICON_all} }, {"repeat_all", {ICON_repeat, ICON_all}, {ICON_empty} }, /* CD type */ {"cdda", {ICON_cd}, {ICON_vcd, ICON_mp3,ICON_dvd} }, {"vcd", {ICON_vcd}, {ICON_cd,ICON_mp3, ICON_dvd} }, {"mp3", {ICON_mp3},/* {ICON_cd, ICON_dvd,ICON_vcd} },*/ {ICON_cd, ICON_vcd, ICON_dvd} }, /* TV type */ {"ntsc", {ICON_ntsc}, {ICON_pal} }, {"pal", {ICON_pal}, {ICON_ntsc} }, /* Key shift */ {"key_up", {ICON_empty}, {ICON_empty} }, {"key_down", {ICON_empty}, {ICON_empty} }, {"key_resume", {ICON_empty}, {ICON_empty} }, /* Initialization */ {"init_state", {ICON_chapter, ICON_l, ICON_r, ICON_s1, ICON_s2, ICON_s3, ICON_s4, ICON_s5, ICON_s6, ICON_s7}, {ICON_empty} },/* {"panel4_off", {ICON_empty }, {ICON_ntsc, ICON_pal, ICON_l, ICON_r, ICON_pbc} }, {"panel5_off", {ICON_empty }, {ICON_angle, ICON_title, ICON_ac3 } },*/ {"pause_on", {ICON_pause}, {ICON_play} }, {"pause_off", {ICON_play}, {ICON_pause} }, {"angle_on", {ICON_angle}, {ICON_empty } }, {"angle_off", {ICON_empty }, {ICON_angle} }, {"ac3_on", {ICON_ac3}, {ICON_empty } }, {"ac3_off", {ICON_empty }, {ICON_ac3} }, {"a2b_a", {ICON_seta}, {ICON_setb} }, {"a2b_b", {ICON_setb}, {ICON_empty } }, {"a2b_cancel", {ICON_empty }, {ICON_seta, ICON_setb} }, {"multi_on", {ICON_pal, ICON_ntsc}, {ICON_empty } }, {"min_sec", {ICON_min, ICON_sec}, {ICON_empty } }, {"hundred_on", {ICON_hundred}, {ICON_empty } }, {"hundred_off", {ICON_empty,}, {ICON_hundred } },};/* * C-program will refer to a message by VFDMSG_xxx where xxx is the * name you assigned in column 1. */VFD_MSG VFD_msg[] = { {"nodisc", { CHAR_n,CHAR_O,CHAR_d,CHAR_I,CHAR_S,CHAR_C,CHAR_end}}, {"undisc", {CHAR_U,CHAR_n,CHAR_d,CHAR_I,CHAR_S,CHAR_C,CHAR_end}}, {"open", {CHAR_, CHAR_, CHAR_O,CHAR_P,CHAR_E,CHAR_n,CHAR_end}}, {"close", {CHAR_, CHAR_C,CHAR_L,CHAR_O,CHAR_S,CHAR_E,CHAR_end}}, {"clearall",{CHAR_, CHAR_, CHAR_, CHAR_, CHAR_, CHAR_,CHAR_end}},};unsigned short VFD_wheel[] = { ICON_s1, ICON_s2, ICON_s3, ICON_s4, ICON_s5, ICON_s6, ICON_s7, ICON_s8};unsigned short VFD_ring[] = { ICON_s7};/* * Display position of characters in VFD_msg. */unsigned char VFD_msg_position[] = { VFD_TRACK, VFD_TRACK+1, VFD_MINUTE, VFD_MINUTE+1, VFD_SECOND, VFD_SECOND+1};#ifdef MN12510/* 12510 programming sequence *//* Commands */unsigned char VFD_12510_cmd[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 0xc, 0xd, 0xe};/* Corresponding data */unsigned char VFD_12510_dat[] = { 0x01, /* FLPCNT: */ 0x5e, /* DGTCNT: Specify digit: 6G, 15/16 */ 0x0f, /* SEGCNT: Specify segment: 16P */ 0x0f, /* P01CNT: [G12,G11,G10,G9,P12,P11,P10,P9] */ 0x0f, /* P2DIR: P2x [o/i,o/i,o/i,o/i] */ 0xff, /* P2CNT: [G16/P13,G15/P14,G14/P15,G13/P16,d,d,d,d] */ 0x10, /* P3DIR: P3x [o/i,o/i,o/i,o/i,o/i] */ 0x10, /* P3CNT: [K4/P34,K3/P33,K2/P32,K1/P31,K0/P30] */ 0x15, /* KEYCNT: Key specification (6 keys) */ 0x17, /* P01DATA: P0x P1x [3H/3L,2H/2L,1H/1L,0H/0L, ... */ 0x00, /* P2DATA: P2x [3H/3L,2H/2L,1H/1L,0H/0L] */ 0x0f /* P3DATA: P3x [3H/3L,2H/2L,1H/1L,0H/0L] */};#endif /* MN12510 */#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -