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

📄 panel.c

📁 9908 samsung tool soft
💻 C
📖 第 1 页 / 共 5 页
字号:
        default:
            FpBuf[vfd_addr[no]] &= (~0x7f);
            FpBuf[vfd_addr[no]] |= (vfd_digit[data]);
            break;
    }
   		SysReleaseSema(&gVfd_RWSema );
   	}
}
void print_vfd_message(unsigned char no, unsigned char data)
{
	
	if(SysGetSema(&gVfd_RWSema,SYS_NO_WAIT ) == SYS_RETURN_SUCCESS )
	{
		switch (no)
	  {
        case 0:
        case 2:
        case 7:
            FpBuf[vfd_addr[no]] &= (~0x3f);
            FpBuf[vfd_addr[no] - 1] &= (~0x80);
            if(vfd_digit[data] & 0x01)
                FpBuf[vfd_addr[no] - 1] |= (0x80);
            FpBuf[vfd_addr[no]] |= (data >> 1);
            break;
        default:
            FpBuf[vfd_addr[no]] &= (~0x7f);
            FpBuf[vfd_addr[no]] |= (data);
            break;
        }

		SysReleaseSema(&gVfd_RWSema );
	}
	
}

unsigned char vfd_disc[] = {56,57,58,59,60,61};
void vfd_disc_turn(unsigned char mode)
{
    	static unsigned char i = 0;
    	static unsigned char jj = 0;
	if(SysGetSema(&gVfd_RWSema,SYS_NO_WAIT ) == SYS_RETURN_SUCCESS )
	{
 					vfd_dot(VFD_DOT_ON, VFD_DOT_RING);
		if(jj>5)jj=0;
	  		 for(i=0;i<6;i++)
	   					vfd_dot(VFD_DOT_ON, vfd_disc[i]);
	   			
	   if(mode)
	   			vfd_dot(VFD_DOT_OFF, vfd_disc[jj]);
	   	else 
	   	{
	   		  for(i=0;i<6;i++)
	   			vfd_dot(VFD_DOT_OFF, vfd_disc[i]);
	
	   	}		
	   jj++;
	    	switch (jj)
	    	{
	        	case 1:
	            		vfd_dot(VFD_DOT_ON, VFD_DOT_COLON);
	            		break;
	        	case 4:
	            		vfd_dot(VFD_DOT_OFF, VFD_DOT_COLON);
	            		break;
	        	case 3:
	        	case 6:
	            		//FpBuf[VFD_DOT_PLAY / 8] |= (1 << (VFD_DOT_PLAY % 8));
	           		    //FpBuf[VFD_DOT_PAUSE / 8] &= (~(1 << (VFD_DOT_PAUSE % 8)));
	            		break;
	        	default:
	            		break;
	    	}

   		SysReleaseSema(&gVfd_RWSema );
   	}
}
void vfd_readtoc(void)
{
				FPClearFp();
	   	 print_vfd_msg(4, CHAR_C);
       print_vfd_msg(5, CHAR_L);
       print_vfd_msg(6, CHAR_O);
       print_vfd_msg(7, CHAR_S);
       print_vfd_msg(8, CHAR_E);    	
}
const BYTE hex22bcd[]={VFD_7SEG_A,VFD_7SEG_b,VFD_7SEG_C,VFD_7SEG_d,VFD_7SEG_E,VFD_7SEG_F,
                           VFD_7SEG_H,VFD_7SEG_II,VFD_7SEG_J};

void vfd_show_time(USHORT track , ULONG32 time)
{
   	static unsigned char cd_time_ss = 0xff;
    	unsigned char cd_disp_trk,cd_disp_hh,cd_disp_mm,cd_disp_ss;
			unsigned char trk_ttp11;

    			ULONG32	CurrentTime;
				  vfd_dot(VFD_DOT_ON, VFD_DOT_COLON1);
    			CurrentTime = time;
   				cd_disp_trk = (unsigned char) track;   
    if(MP3_DISC== GetDiscType())
	 {
	      	if(cd_disp_trk>=100)
	      	{
        		trk_ttp11 = cd_disp_trk /100;
        		cd_disp_trk = cd_disp_trk %100;
        		
	        	print_vfd_msg(1,  trk_ttp11);        	
        	//	trk_ttp11 = cd_disp_trk /10;
      		// 	if (trk_ttp11 >= 8)
        //  		     print_vfd_message(0,VFD_7SEG_J);//hex22bcd[trk_ttp11]);
       	//		else
       // 					 print_vfd_message(0, hex22bcd[trk_ttp11]);
          }
        	else
        	 	print_vfd_msg(1,  0);        	
        	
        	print_vfd_msg(2,  cd_disp_trk/10);        	
        	print_vfd_msg(3,  cd_disp_trk %10);
       	print_vfd_msg(4, CurrentTime/3600);
        	print_vfd_msg(5, ((CurrentTime%3600) /60)/10);
		      print_vfd_msg(6, ((CurrentTime%3600) /60)%10);
        	print_vfd_msg(7, (CurrentTime%60)/10);
        	print_vfd_msg(8, (CurrentTime%60)%10);
   }else
   {
   	 #if  VFD_SHOW_HOUR
 	 				print_vfd_msg(0, gVcdTrackInfo.Total_track_cnt/10);
        	print_vfd_msg(1, gVcdTrackInfo.Total_track_cnt%10);
   	 			print_vfd_msg(2, cd_disp_trk/10);
        	print_vfd_msg(3, cd_disp_trk%10);
        	print_vfd_msg(4, CurrentTime/3600);
        	print_vfd_msg(5, ((CurrentTime%3600) /60)/10);
		      print_vfd_msg(6, ((CurrentTime%3600) /60)%10);
        	print_vfd_msg(7, (CurrentTime%60)/10);
        	print_vfd_msg(8, (CurrentTime%60)%10);
   	 #else 
        	print_vfd_msg(2, (cd_disp_trk%100)/10);
        	print_vfd_msg(3, (cd_disp_trk%100) %10);
        	print_vfd_msg(5, (CurrentTime/60)/10);
		      print_vfd_msg(6, (CurrentTime/60)%10);
        	print_vfd_msg(7, (CurrentTime%60)/10);
        	print_vfd_msg(8, (CurrentTime%60)%10);
   	 #endif
   }
        
}
void vfd_mp3_show_time_stop(void)
{
	extern USHORT	gMp3TotalFile;
  extern Mp3_FolderPageInfo_t	*gFolderPage;

  unsigned char cd_disp_mm,cd_disp_ss,cd_disp_trk1;
	 			cd_disp_trk1 = (unsigned char)gFolderPage->content_num;
	 			cd_disp_mm  = gMp3TotalFile/100;
	 			cd_disp_ss  = gMp3TotalFile%100;
	      
        print_vfd_msg(2, (cd_disp_trk1%100)/10);
        print_vfd_msg(3, (cd_disp_trk1%100)%10);       
        print_vfd_msg(5, gMp3TotalFile/1000);
	    	print_vfd_msg(6, (gMp3TotalFile%1000)/100);
        print_vfd_msg(7, cd_disp_ss/10);
        print_vfd_msg(8, cd_disp_ss%10);
        vfd_dot(VFD_DOT_OFF, VFD_DOT_COLON); 
}
void vfd_disc_fill_all(void)
{
					 FpBuf[7] |= 0xff;
					 vfd_dot(VFD_DOT_OFF, VFD_DOT_PLAY);
	       	 vfd_dot(VFD_DOT_OFF, VFD_DOT_PAUSE);
					 
}

void vfd_open(void)
{
    FPClearFp();
		VfdDiscTurnF = 0;
    print_vfd_msg(5, CHAR_O);
    print_vfd_msg(6, CHAR_P);
    print_vfd_msg(7, CHAR_E);
    print_vfd_msg(8, CHAR_N);
}

void vfd_close(void)
{
       //FPClearFp();
	     VfdDiscTurnF = 0;
       print_vfd_msg(4, CHAR_C);
       print_vfd_msg(5, CHAR_L);
       print_vfd_msg(6, CHAR_O);
       print_vfd_msg(7, CHAR_S);
       print_vfd_msg(8, CHAR_E); 
}

void vfd_nodisc(void)
{
    print_vfd_msg(3, CHAR_N);
    print_vfd_msg(4, CHAR_O);
    print_vfd_msg(5, CHAR_D);
    print_vfd_msg(6, CHAR_I);
    print_vfd_msg(7, CHAR_S);
    print_vfd_msg(8, CHAR_C);
}
#elif  PANEL_FUT63
const unsigned char vfd_addr[] = {6, 7, 4, 5, 2, 3, 0, 1, 9 }; // { 6, 7, 4, 5, 2, 0 };
void print_vfd_msg(unsigned char no, unsigned char data)
{
	if(SysGetSema(&gVfd_RWSema,SYS_NO_WAIT ) == SYS_RETURN_SUCCESS )
	{	
   		
    switch (no)
    {
        case 0:
        case 2:
        case 7:
            FpBuf[vfd_addr[no]] &= (~0x3f);
            FpBuf[vfd_addr[no] - 1] &= (~0x80);
            if(vfd_digit[data] & 0x01)
                FpBuf[vfd_addr[no] - 1] |= (0x80);
            FpBuf[vfd_addr[no]] |= (vfd_digit[data] >> 1);
            break;
        default:
            FpBuf[vfd_addr[no]] &= (~0x7f);
            FpBuf[vfd_addr[no]] |= (vfd_digit[data]);
            break;
    }
   		SysReleaseSema(&gVfd_RWSema );
   	}
}
void print_vfd_message(unsigned char no, unsigned char data)
{
	
	if(SysGetSema(&gVfd_RWSema,SYS_NO_WAIT ) == SYS_RETURN_SUCCESS )
	{
		switch (no)
	  {
	  	
	  	 switch (no)
    {
    	  case 1:
        case 3:
        case 5:
        case 7:
        case 8:
        FpBuf[vfd_addr[no]] &= 0x01;
        FpBuf[vfd_addr[no]] |= (vfd_digit[data]<< 1);
            break;
        case 0:
        case 2:
        case 4:
        case 6:
            FpBuf[vfd_addr[no]] &= 0x80;
            FpBuf[vfd_addr[no]] |= (vfd_digit[data]);
        break;
    }
	  	
        }

		SysReleaseSema(&gVfd_RWSema );
	}
	
}

unsigned char vfd_disc[] = {91,90,89,88,87,86,85,84,83,82,81,80};
void vfd_disc_turn(unsigned char mode)
{
    	static unsigned char i = 0;
    	static unsigned char jj = 0;
	if(SysGetSema(&gVfd_RWSema,SYS_NO_WAIT ) == SYS_RETURN_SUCCESS )
	{
 					vfd_dot(VFD_DOT_ON, VFD_DOT_RING);
		if(jj>5)jj=0;
	  		 for(i=0;i<12;i++)
	   					vfd_dot(VFD_DOT_ON, vfd_disc[i]);
	   			
	   if(mode)
	   			vfd_dot(VFD_DOT_OFF, vfd_disc[jj]);
	   	else 
	   	{
	   		  for(i=0;i<12;i++)
	   			vfd_dot(VFD_DOT_OFF, vfd_disc[i]);
	
	   	}		
	   jj++;
	    	switch (jj)
	    	{
	        	case 1:
	            		vfd_dot(VFD_DOT_ON, VFD_DOT_COLON);
	            		break;
	        	case 4:
	            		vfd_dot(VFD_DOT_OFF, VFD_DOT_COLON);
	            		break;
	        	case 3:
	        	case 6:
	            		//FpBuf[VFD_DOT_PLAY / 8] |= (1 << (VFD_DOT_PLAY % 8));
	           		    //FpBuf[VFD_DOT_PAUSE / 8] &= (~(1 << (VFD_DOT_PAUSE % 8)));
	            		break;
	        	default:
	            		break;
	    	}

   		SysReleaseSema(&gVfd_RWSema );
   	}
}
void vfd_readtoc(void)
{
				FPClearFp();
	   	 print_vfd_msg(4, CHAR_C);
       print_vfd_msg(5, CHAR_L);
       print_vfd_msg(6, CHAR_O);
       print_vfd_msg(7, CHAR_S);
       print_vfd_msg(8, CHAR_E);    	
}
const BYTE hex22bcd[]={VFD_7SEG_A,VFD_7SEG_b,VFD_7SEG_C,VFD_7SEG_d,VFD_7SEG_E,VFD_7SEG_F,
                           VFD_7SEG_H,VFD_7SEG_II,VFD_7SEG_J};

void vfd_show_time(USHORT track , ULONG32 time)
{
   	static unsigned char cd_time_ss = 0xff;
    	unsigned char cd_disp_trk,cd_disp_hh,cd_disp_mm,cd_disp_ss;
			unsigned char trk_ttp11;

    			ULONG32	CurrentTime;
				  vfd_dot(VFD_DOT_ON, VFD_DOT_COLON1);
    			CurrentTime = time;
   				cd_disp_trk = (unsigned char) track;   
    if(MP3_DISC== GetDiscType())
	 {
	      	if(cd_disp_trk>=100)
	      	{
        		trk_ttp11 = cd_disp_trk /100;
        		cd_disp_trk = cd_disp_trk %100;
        		
	        	print_vfd_msg(1,  trk_ttp11);        	
            }
        	else
        	 	print_vfd_msg(1,  0);        	
        	
        	print_vfd_msg(2,  cd_disp_trk/10);        	
        	print_vfd_msg(3,  cd_disp_trk %10);
        	print_vfd_msg(4, CurrentTime/3600);
        	print_vfd_msg(5, ((CurrentTime%3600) /60)/10);
		      print_vfd_msg(6, ((CurrentTime%3600) /60)%10);
        	print_vfd_msg(7, (CurrentTime%60)/10);
        	print_vfd_msg(8, (CurrentTime%60)%10);
   }else
   {
   	 #if  VFD_SHOW_HOUR
 	 				print_vfd_msg(0, gVcdTrackInfo.Total_track_cnt/10);
        	print_vfd_msg(1, gVcdTrackInfo.Total_track_cnt%10);
   	 			print_vfd_msg(2, cd_disp_trk/10);
        	print_vfd_msg(3, cd_disp_trk%10);
        	print_vfd_msg(4, CurrentTime/3600);
        	print_vfd_msg(5, ((CurrentTime%3600) /60)/10);
		      print_vfd_msg(6, ((CurrentTime%3600) /60)%10);
        	print_vfd_msg(7, (CurrentTime%60)/10);
        	print_vfd_msg(8, (CurrentTime%60)%10);
   	 #else 
        	print_vfd_msg(2, (cd_disp_trk%100)/10);
        	print_vfd_msg(3, (cd_disp_trk%100) %10);
        	print_vfd_msg(5, (CurrentTime/60)/10);
		      print_vfd_msg(6, (CurrentTime/60)%10);
        	print_vfd_msg(7, (CurrentTime%60)/10);
        	print_vfd_msg(8, (CurrentTime%60)%10);
   	 #endif
   }
        
}
void vfd_mp3_show_time_stop(void)
{
	extern USHORT	gMp3TotalFile;
  extern Mp3_FolderPageInfo_t	*gFolderPage;

  unsigned char cd_disp_mm,cd_disp_ss,cd_disp_trk1;
	 			cd_disp_trk1 = (unsigned char)gFolderPage->content_num;
	 			cd_disp_mm  = gMp3TotalFile/100;
	 			cd_disp_ss  = gMp3TotalFile%100;
	      
        print_vfd_msg(2, (cd_disp_trk1%100)/10);
        print_vfd_msg(3, (cd_disp_trk1%100)%10);       
        print_vfd_msg(5, gMp3TotalFile/1000);
	    	print_vfd_msg(6, (gMp3TotalFile%1000)/100);
        print_vfd_msg(7, cd_disp_ss/10);
        print_vfd_msg(8, cd_disp_ss%10);
        vfd_dot(VFD_DOT_OFF, VFD_DOT_COLON); 
}
void vfd_disc_fill_all(void)
{
	int i;
					 		 for(i=0;i<12;i++)
	   					vfd_dot(VFD_DOT_ON, vfd_disc[i]);
	
					 vfd_dot(VFD_DOT_OFF, VFD_DOT_PLAY);
	       	 vfd_dot(VFD_DOT_OFF, VFD_DOT_PAUSE);
					 
}

void vfd_open(void)
{
    FPClearFp();
		VfdDiscTurnF = 0;
    print_vfd_msg(5, CHAR_O);
    print_vfd_msg(6, CHAR_P);
    print_vfd_msg(7, CHAR_E);
    print_vfd_msg(8, CHAR_N);
}

void vfd_close(void)
{
       //FPClearFp();
	     VfdDiscTurnF = 0;
       print_vfd_msg(4, CHAR_C);
       print_vfd_msg(5, CHAR_L);
       print_vfd_msg(6, CHAR_O);
       print_vfd_msg(7, CHAR_S);
       print_vfd_msg(8, CHAR_E); 
}

void vfd_nodisc(void)
{
    print_vfd_msg(3, CHAR_N);
    print_vfd_msg(4, CHAR_O);
    print_vfd_msg(5, CHAR_D);
    print_vfd_msg(6, CHAR_I);
    print_vfd_msg(7, CHAR_S);
    print_vfd_msg(8, CHAR_C);
}

#elif PANEL_FUT58  //HTS VCD-5700
void vfd_program_off(void)
{
   vfd_dot(VFD_DOT_OFF,VFD_DOT_PGM);
}
void vfd_random_off(void)
{
	 vfd_dot(VFD_DOT_OFF,VFD_DOT_RAN);
	
}
unsigned char vfd_addr[]  = {2,4,6,7,8,9};
void print_vfd_msg(unsigned char no, unsigned char data)
{
	if(SysGetSema(&gVfd_RWSema,SYS_NO_WAIT ) == SYS_RETURN_SUCCESS )
	{	
   		if(no <6)
   		 {
           			 FpBuf[vfd_addr[no]] &= 0x01;
            		 FpBuf[vfd_addr[no]] |= vfd_digit[data];
    		}

   		SysReleaseSema(&gVfd_RWSema );
   	}
}
void print_vfd_message(unsigned char no, unsigned char data)
{
	
	if(SysGetSema(&gVfd_RWSema,SYS_NO_WAIT ) == SYS_RETURN_SUCCESS )
	{
      if(no <6)
   		 {
           			 FpBuf[vfd_addr[no]] &= 0x01;
            		 FpBuf[vfd_addr[no]] |= data;
    		}

		SysReleaseSema(&gVfd_RWSema );
	}
	
}
const BYTE vfd_prg[] = {
    0,
    VFD_DOT_PGM01,
    VFD_DOT_PGM02,
    VFD_DOT_PGM03,
    VFD_DOT_PGM04,
    VFD_DOT_PGM05,
    VFD_DOT_PGM06,
    VFD_DOT_PGM07,
    VFD_DOT_PGM08,
    VFD_DOT_PGM09,
    VFD_DOT_PGM10,
    VFD_DOT_PGM11,
    VFD_DOT_OVER,
};
void vfd_set_pgm_all(void)
{
	int i;
	for(i=1;i<13;i++)
	vfd_dot(VFD_DOT_ON,vfd_prg[i]);
}
void vfd_set_pgm(BYTE method)
{
//    extern const BYTE vfd_prg[];
    BYTE    i;
  static flash_flag = 1;
  if(method<1)return;
  if(method>12)method=12;
  for(i=1;i<=12;i++)
 	  vfd_dot(VFD_DOT_ON,vfd_prg[i]);

⌨️ 快捷键说明

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