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

📄 panel.h

📁 VFD显示屏的驱动UPD16312的完整C测试程序,已正常使用.
💻 H
📖 第 1 页 / 共 2 页
字号:
/*****************************************************************************
                                                                                        
  panel.h   -   PANEL  functions, types, and definitions

                Version 1.00

                Copyright (c) 1996, Winbond Corp. All rights reserved. *

******************************************************************************/

//#ifndef __PANEL_H__
//#define __PANEL_H__

//  *** define Constant  ***********************************************
//#include "osd.h"

//  *** Declare Function ***********************************************
//BYTE PANEL_KeyScan();
//void PANEL_Initial();
//void PANEL_Output ( BYTE bMessage, WORD wParam);
//void PANEL_Trigger(WORD wTime);


//  *** VFD Controller Definition *************************************************
// For differnt VFD controllers, there are different methods to do hareware control
// To drive VFD panel successfully, please define "IC TYPE" correctly first !

#define P16312      //for SUNSTAR, KAI,
//#define PNJU3421    //for IDALL


//  *** Mode setting for VFD panel ***************************************
//  For VFD panels, maybe there are different mode setting suitable for it
//  If the mode setting isn't correct, lighting will be wrong.

//All bytes on VFD panel
#define    VFD_GRID_ARRAY          12      // 18 for NEC-16311's 8d/20s ( idall; kai_0901 )

#define    VFD_TRACKKBIT_ALL       12
                                           // 12 for NEC-16312's 6d/16s ( sun_239 )
//Mode setting command
#define    VFD_DISP_MODE           0x02    // 0x00 for NEC-16311's 8d/20s (sonken_265)
                                           // 0x02 for NEC-16312 6d/16s ( kai_265;  sun_239 )
                                           // 0x05 for PD16312 9d/13s (kai_0901)
                                           // 0xFD for PNJU3421  (idall_0901)
                                           // 0xF8 for PNJU3421 8d/15s (kai_265)
                                           // 0x5A for BU2872 6d/16s (konka_253)
//Display control command : set pulse width
#define    VFD_CTRL_MODE           0x8F    // Pulse width=14/16 for pulse width
                                           // 0x8F for P16312/P16311
                                           // 0xFD for PNJU3421 (idall)


// *** Definition useful for panel keyscan **************************
// total bytes from key matrix
//#define    KeyScanByte             3
#define    KEY_SCAN_BYTE             3


// *** LED Definition ***********************************************
// For FUTABA 6-BT serial VFD panel (soken, 265)
// LED on : "0", off : "1"
#define    VFD_LED1                0xFE    // DiscType
#define    VFD_LED2                0xFD    // Audio channel (MPX)
#define    VFD_LED3                0xFB    // Surround
#define    VFD_LED4                0xF7    // PON
#define    VFD_LED5                0xEF



//  *** Name & Position definition for VFD panel ***********************

// for huikai 6-bt-265 vfd,driver is upd16312 
// For FUTABA 6-BT serial VFD panel
//
// For nec_upd16312 6d/16s grid mapping
//  ---------------------------------
// |   | 6G | 5G | 4G | 3G | 2G | 1G |
//  ---------------------------------
// |P1 |    |    |    |    |    |    |01h
// |.. |    |    |    |    |    |    |
// |P8 | 10 | 8  | 6  | 4  | 2  | 0  |80h
// |---------------------------------
// |P9 |    |    |    |    |    |    |01h
// |.. |    |    |    |    |    |    |
// |P16| 11 | 9  | 7  | 5  | 3  | 1  |80h
//  ---------------------------------


//  *******************
//  *** for SKYWORTHY_265 ***

//Grid Mapping ( 12 bytes )
#define    VFD_GRID_ADDR0      11     //{ VFD_N1 }
#define    VFD_GRID_ADDR1      10     //{ VFD_N2 }
#define    VFD_GRID_ADDR2      9      //{ VFD_SA,VFD_SB,VFD_SAB,VIDEO_CD,DASH }
#define    VFD_GRID_ADDR3      8      //{ REPEAT,1,ALL,A<->,B,MEM }
#define    VFD_GRID_ADDR4      7      //{ VFD_MIN_N1,COL }
#define    VFD_GRID_ADDR5      6      //{ VFD_MIN_N2,MIN }
#define    VFD_GRID_ADDR6      5      //{ VFD_SEC_N1 }
#define    VFD_GRID_ADDR7      4      //{ VFD_SEC_N2,SEC }
#define    VFD_GRID_ADDR8      3      //{ PGM,RAN,EDIT,PLAY>,PAUSE||,CDG,REMAIN }
#define    VFD_GRID_ADDR9      2      //{ INTRO,LEVEL,SPACE,FADE,FADEUP,FADEDOWN,OVER }
#define    VFD_GRID_ADDR10     1      //{ TrackBit: 9,10,11,12,13,14,15,16 }
#define    VFD_GRID_ADDR11     0      //{ TrackBit: 1,2,3,4,5,6,7,8 }
//#define    VFD_GRID_ADDR12     12     //{ }
//#define    VFD_GRID_ADDR13     13     //{ }
//#define    VFD_GRID_ADDR14     14     //{ }
//#define    VFD_GRID_ADDR15     15     //{ }
//#define    VFD_GRID_ADDR16     16     //{ }
//#define    VFD_GRID_ADDR17     17     //{ }


//Grid position definition
#define    VFD_TRACKBIT_N1_ADDR    VFD_GRID_ADDR10
#define    VFD_TRACKBIT_N2_ADDR    VFD_GRID_ADDR11

#define    VFD_TRACKBIT_1_ADDR     VFD_TRACKBIT_N2_ADDR
#define    VFD_TRACKBIT_1          0x08
#define    VFD_TRACKBIT_2_ADDR     VFD_TRACKBIT_N2_ADDR
#define    VFD_TRACKBIT_2          0x04
#define    VFD_TRACKBIT_3_ADDR     VFD_TRACKBIT_N2_ADDR
#define    VFD_TRACKBIT_3          0x02
#define    VFD_TRACKBIT_4_ADDR     VFD_TRACKBIT_N2_ADDR
#define    VFD_TRACKBIT_4          0x01
#define    VFD_TRACKBIT_5_ADDR     VFD_TRACKBIT_N2_ADDR
#define    VFD_TRACKBIT_5          0x80
#define    VFD_TRACKBIT_6_ADDR     VFD_TRACKBIT_N2_ADDR
#define    VFD_TRACKBIT_6          0x40
#define    VFD_TRACKBIT_7_ADDR     VFD_TRACKBIT_N2_ADDR
#define    VFD_TRACKBIT_7          0x20
#define    VFD_TRACKBIT_8_ADDR     VFD_TRACKBIT_N2_ADDR
#define    VFD_TRACKBIT_8          0x10
#define    VFD_TRACKBIT_9_ADDR     VFD_TRACKBIT_N1_ADDR
#define    VFD_TRACKBIT_9          0x08
#define    VFD_TRACKBIT_10_ADDR    VFD_TRACKBIT_N1_ADDR
#define    VFD_TRACKBIT_10         0x04
#define    VFD_TRACKBIT_11_ADDR    VFD_TRACKBIT_N1_ADDR
#define    VFD_TRACKBIT_11         0x02
#define    VFD_TRACKBIT_12_ADDR    VFD_TRACKBIT_N1_ADDR
#define    VFD_TRACKBIT_12         0x01
#define    VFD_TRACKBIT_13_ADDR    VFD_TRACKBIT_N1_ADDR
#define    VFD_TRACKBIT_13         0x80
#define    VFD_TRACKBIT_14_ADDR    VFD_TRACKBIT_N1_ADDR
#define    VFD_TRACKBIT_14         0x40
#define    VFD_TRACKBIT_15_ADDR    VFD_TRACKBIT_N1_ADDR
#define    VFD_TRACKBIT_15         0x20
#define    VFD_TRACKBIT_16_ADDR    VFD_TRACKBIT_N1_ADDR
#define    VFD_TRACKBIT_16         0x10
#define    VFD_TRACKBIT_17_ADDR    0
#define    VFD_TRACKBIT_17         0
#define    VFD_TRACKBIT_18_ADDR    0
#define    VFD_TRACKBIT_18         0
#define    VFD_TRACKBIT_19_ADDR    0
#define    VFD_TRACKBIT_19         0
#define    VFD_TRACKBIT_20_ADDR    0
#define    VFD_TRACKBIT_20         0


//ADD    1997.10.24

//-------------------
//volume bar position
#define    VFD_BAR_1_ADDR          12
#define    VFD_BAR_1               0x0
#define    VFD_BAR_2_ADDR          12
#define    VFD_BAR_2               0x0
#define    VFD_BAR_3_ADDR          12
#define    VFD_BAR_3               0x0
#define    VFD_BAR_4_ADDR          12
#define    VFD_BAR_4               0x0
#define    VFD_BAR_5_ADDR          12
#define    VFD_BAR_5               0x0
#define    VFD_BAR_6_ADDR          12
#define    VFD_BAR_6               0x0
#define    VFD_BAR_7_ADDR          VFD_GRID_ADDR1
#define    VFD_BAR_7               0x0
#define    VFD_BAR_8_ADDR          VFD_GRID_ADDR1
#define    VFD_BAR_8               0x0
#define    VFD_BAR_9_ADDR          VFD_GRID_ADDR1
#define    VFD_BAR_9               0x0
#define    VFD_BAR_10_ADDR         VFD_GRID_ADDR1
#define    VFD_BAR_10              0x0
#define    VFD_BAR_11_ADDR         VFD_GRID_ADDR1
#define    VFD_BAR_11              0x0
#define    VFD_BAR_12_ADDR         VFD_GRID_ADDR1
#define    VFD_BAR_12              0x0
#define    VFD_BAR_13_ADDR         VFD_GRID_ADDR1
#define    VFD_BAR_13              0x0
#define    VFD_BAR_14_ADDR         VFD_GRID_ADDR1
#define    VFD_BAR_14              0x0

//--------------------
//multi_disc position
#define    VFD_1S_ADDR             VFD_GRID_ADDR3    //disc 1
#define    VFD_1S                  0x0
#define    VFD_1S1_ADDR            VFD_GRID_ADDR3    //inner circle of disc 1
#define    VFD_1S1                 0x0
#define    VFD_1S2_ADDR            VFD_GRID_ADDR3    //outer circle of disc 1
#define    VFD_1S2                 0x0

#define    VFD_2S_ADDR             VFD_GRID_ADDR3
#define    VFD_2S                  0x0
#define    VFD_2S1_ADDR            VFD_GRID_ADDR3
#define    VFD_2S1                 0x0
#define    VFD_2S2_ADDR            VFD_GRID_ADDR3
#define    VFD_2S2                 0x0

#define    VFD_3S_ADDR             VFD_GRID_ADDR3
#define    VFD_3S                  0x0
#define    VFD_3S1_ADDR            VFD_GRID_ADDR2
#define    VFD_3S1                 0x0
#define    VFD_3S2_ADDR            VFD_GRID_ADDR2
#define    VFD_3S2                 0x0

#define    VFD_4S_ADDR             VFD_GRID_ADDR2
#define    VFD_4S                  0x0
#define    VFD_4S1_ADDR            VFD_GRID_ADDR2
#define    VFD_4S1                 0x0
#define    VFD_4S2_ADDR            VFD_GRID_ADDR2
#define    VFD_4S2                 0x0

#define    VFD_5S_ADDR             VFD_GRID_ADDR2
#define    VFD_5S                  0x0
#define    VFD_5S1_ADDR            VFD_GRID_ADDR2
#define    VFD_5S1                 0x0

⌨️ 快捷键说明

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