赞助论坛
  • 7387阅读
  • 0回复

修改VFD(vcd)显示屏的步骤 [复制链接]

楼层直达
humu200  
发帖
82
精华
0
金币
467
威望
5
贡献
2
好评
2
注册
2008-01-05
楼主    humu200 发表于: 2008-03-16 19:48:01 
1:测量16312与屏的管脚连接关系
    16312   G[X]--------G[X’]   VFD
        P[Y]---------Q[Y’]
2:在makefile.pc中的sysoption中,加上-DVFD-FUTABA
3:在VFD_TBL.C中修改对应值 SEG_A(_B,_C,_D,_E,_F,_G,),正接01,02,04,08,10,20,40,80
  反接80,40,20,10,08,04,02,01,所有的数为16进制,即0x01等.
4:在microvfd.c中定义TRACK_HIGH,TRACK_LOW;MINUTE_HIGH,MINUTE_LOW和
SECOND_HIGH,SECOND_LOW的位置,确切位置由G,P的接法决定P1~P8为低,P9~P16高
5:在microvfd.c中的VFD_process7Segments中修改*rambyte &= 0x80或其他值,其原理在于部分显示需要一直存在,而不能随时变化,它的状态由具体的参数决定,修改后利用VFD_push( )函数进行刷新,函数的参数为刷新对象对应的位置.
在processMessage( )中,也要作相应修改.
6:在VFD_UPDATE_CALENDAR()中修改 ifdef VFD_FUTABA
                        VFD_push(0x0); VFD_push(0x0);
                如果G,P反接VFD_push(0x0a); VFD_push(0x0b);
7:在VFD_tbl.c中定义#define SEG_A 0x__;   #define SEG_B 0x__
            #define SEG_C 0x__;   #define SEG_D 0x__;
            #define SEG_E 0x__;   #define SEG_F 0x__;
            #define SEG_G 0x__; 其值由所处位置决定.
8: 加显示〈1〉在VFD_TBL.C中定义显示标示#define SEG_AAA
        在数组calendar[4][8]中加上SEG_AAA
      〈2〉在panelcmd.h中加上SEG_AAA对应的值,其值由其在数组中的位置决定
        若SEG_AAA在数组的第一项的第四个,则对应
        #define PANEL_IND1 0XXX下的#define SEG_AAA 0X08;
  最后,在PANELVFD.C或PLAY.C中,根据需要加在合适的地方.