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

📄 cut_v.h

📁 嵌入式单片机开发,嵌入式单片机开发,嵌入式单片机开发
💻 H
字号:

void init_cut_v()
{unsigned char i;
  unsigned int i1;
	cut_v_continue_time=0;
	get_last_envent_data_from_fm_twotable_to_ram(TYPE_FM_CUTV_RECORD,7,16, R_CUTV_CURRENT_KWH_F);
	
	cut_v_quadrant=cut_v_no;
 	cut_v_quadrant_use=cut_v_no;
}


// shi liu mo kuai cheng  xu
/*
void use_losti()
{
unsigned char l1;
data_addr.addri=current_twobiaofm_block_addr(TYPE_FM_CUTV_RECORD,0);
if(data_addr.addri!=0xffff)
  	{
           wr_data[0]=table_guadrant_value_translate[cut_v_quadrant];
           for(l1=0;l1<6;l1++)
             wr_data[1+l1]=RAM[R_CUTV_NUM+28+(cut_v_quadrant-1)*34+l1];
           for(l1=0;l1<16;l1++)
		   	wr_data[7+l1]=RAM[R_CUTV_CURRENT_KWH_F+l1];
          for(l1=0;l1<6;l1++)
             	     wr_data[23+l1]=RAM[R_CUTV_NUM+28+(cut_v_quadrant-1)*34+6+l1];
          write(FM, 23+6);
       }
}*/
// zhuan cun end
void cut_v_end()
{
	unsigned int i;
	// ji lu shi ya jie shu shi jian记录断相结束时间NNNNNN
	i=R_CUTV_NUM+34+(cut_v_quadrant-1)*34;
	lost_cun_shijian(i);
	copy_ram_to_fm(i,6,i);
	// zhuang cun   转存  10 ci   JJJJJJJJJJJJJ
	// use_losti();
	use_lost_cut_v(TYPE_FM_CUTV_RECORD, cut_v_quadrant, R_CUTV_NUM, R_CUTV_CURRENT_KWH_F);
	cut_v_quadrant=cut_v_no;
 	cut_v_quadrant_use=cut_v_no;
	cut_v_continue_time=0;
}

// zhuan cun start
void cut_v_start()
{unsigned char i;
  unsigned int i1;
	cut_v_quadrant=cut_v_quadrant_use;
	cut_v_continue_time=0;
	lost_i_rtc_minute=RSOFT_RTC_MINUTE;
	lost_cut_v_start_use(TYPE_FM_CUTV_RECORD, cut_v_quadrant, R_CUTV_NUM, R_CUTV_CURRENT_KWH_F);

}




void cut_v_chuli(unsigned char a)
{
  if(cut_v_quadrant_use!=a)
	{
		cut_v_quadrant_use=a;
         	cut_v_continue_time=0;
	}
 else
       {
       	if(cut_v_continue_time<=10)  // 10
         		cut_v_continue_time=cut_v_continue_time+1;
         	if(cut_v_continue_time>=10)  //10
            		{
            			cut_v_continue_time=0;
              		if(cut_v_quadrant!=a)
                  			{
                  				if(a==cut_v_no)
 		        				cut_v_end();
                   				else
        	           				{
        	           					if(cut_v_quadrant==cut_v_no)
        	                   					cut_v_start();
                           					else
                            					{
                            						cut_v_end();// shi ya xiang gai bian 
                                     					cut_v_quadrant=a;
                                     					cut_v_quadrant_use=a;
                                     					cut_v_start();
									}
        	          				}
 	          			}
          		 }
    		}
}






void cut_v_pan(unsigned char a)
{unsigned char l;
l=cut_v_no;
	switch(a)
          {
          	
              case 1:
               	    // a
               	   	l=cut_v_a;
               	   	 break;
              case 10: 
               	   // b
                        	l=cut_v_b;
               	    	break;
              case 100:
               	    // c
               	  	 l=cut_v_c;
               	    	break;
              case 11: 
               	   // ab
                        	l=cut_v_ab;
               	    	break;
              case 101:
               	    // ac               	            	
               	       l=cut_v_ac;               	   
               	   	break;
              case 110: 
               	   // bc
                        	l=cut_v_bc;
               	    	break;
               default:
               	     	
               	    	break;
          	}
	cut_v_chuli(l);
}
               	    


void cut_v_time_add()
{unsigned int i;
	if(cut_v_quadrant!=cut_v_no)
   		{
   			if(lost_i_rtc_minute!=RSOFT_RTC_MINUTE)
       			{
       				lost_i_rtc_minute=RSOFT_RTC_MINUTE;
        				byte_3_bcd_add_copy_to_fm(R_CUTV_TIME);
       				if((0!=cut_v_quadrant)&&(cut_v_quadrant<7))
	   					{
	   						i=R_CUTV_NUM+9+(cut_v_quadrant-1)*34;
	     						byte_3_bcd_add_copy_to_fm(i);
	    					}
       			} 
   		}
}




void cut_v_mode_3_3()
{unsigned char la,lb,lc,k;
unsigned int j1,j3,j4,j5,jadd,jb;
la=0;
lb=0;
lc=0;
j1=type_v_duanxian;//changed 2005-2-28
j3=value_hex_from_v_4bytebcd(&RAM[R_V_A]);
j4=value_hex_from_v_4bytebcd(&RAM[R_V_C]);
jb=value_hex_from_v_4bytebcd(&RAM[R_V_B]);
jadd=j3+j4;
// jadd=|(ua+uv)-ub|
if(jadd>jb)
	jadd=jadd-jb;
else
	jadd=jb-jadd;

//if((j3+j4)<type_33_b_v_add)
if(jadd<type_33_b_v_sub)
     {if(j3>j4)
        	{if((j3-j4)<type_33_b_v_sub)
        	    	  lb=1;
                }  // b shi ya         
        else
                {if((j4-j3)<type_33_b_v_sub)
        	    	  lb=1;
		   }
     }
if(lb==0)
       {	// a shi ya     
          if(j3<=j1)
              la=1;

     
                    // c shi ya 
   
           if(j4<=j1)
          	 lc=1;
        }
 	

 la=la+lb*10+lc*100;
 cut_v_pan(la);


}



void cut_v_mode_3_4()
{unsigned char la,lb,lc,k;
unsigned int j1,j2,j3,ja,jb,jc;
la=0;
lb=0;
lc=0;
j1=type_v_duanxian;
ja=value_hex_from_v_4bytebcd(&RAM[R_V_A]);
jb=value_hex_from_v_4bytebcd(&RAM[R_V_B]);
jc=value_hex_from_v_4bytebcd(&RAM[R_V_C]);
if(ja<=j1)
       la=1;
// b shi ya 
         
if(jb<=j1)
       lb=1;

           // c shi ya 
           
          
if(jc<=j1)
      lc=1;
la=la+lb*10+lc*100;
cut_v_pan(la);
                
}


void cut_v_mode()
{
// lei jia shi jian jia  (minute)
	cut_v_time_add();
	if(lost_i_rtc_second!=RSOFT_RTC_SECOND)
		{
			lost_i_rtc_second=RSOFT_RTC_SECOND;
   	 		if(progfunction_biaotype==type_3_3)
   	 	  		cut_v_mode_3_3();
   	 		else 
   	          		cut_v_mode_3_4();
		}
}



   	
   	  	
   	  		    
   	





⌨️ 快捷键说明

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