亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 工頻參數測試.c

?? 工頻參數測量 megal128 單片機 iccavr開發環境
?? C
字號:
//系統晶振為8Mhz
#include <iom128v.h>
#include <math.h>
#define data_port PORTA
//ASK=PORTE.6
#define ask (PINE&0x40)
//ANSWER=PORTE.7
#define set_answer asm("sbi 0x03,7")
#define clr_answer asm("cbi 0x03,7")
//RESTE=PORTC.3
#define set_reset asm("sbi 0x15,3")
#define clr_reset asm("cbi 0x15,3") 
#define wait  asm("nop\n nop")
#define ICP1 PIND4
const unsigned char table[]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,
                             0x38,0x39,0x41,0x42,0x43,0x44,0x45,0x46};
/**********************************/
float maxu,maxu0,maxi,maxi0,P,Q,G;
#define ICP1 PIND4
#define uchar unsigned char 
#define uint  unsigned int
uchar flag=0;//標志位
uint rise1,rise2;
uchar ov,k=0;
float t0;
unsigned char lcd_buff[6]={0,0,0,0,0,0};
/*********************************/				
unsigned char t1;
unsigned long  temp,j;
unsigned long  max;
unsigned long  mem[90];
/*********************************/
void delay_ms(unsigned char x)
{  
   unsigned char i,m,n,t;
   for(i=0;i<=x;i++)
     for(m=0;m<10;m++)
        for(n=0;n<10;n++) 
		  for(t=0;t<50;t++);
}
	

void ocmj_init(void)
{
 MCUCR=0;
 DDRA=0xff;
 PORTA=0xff;
 DDRE=0b10000000;
 PORTE=0xff;
 clr_reset;//LCD
 delay_ms(1);
 set_reset;
 clr_answer;
 delay_ms(1);
}
/**********************************************/
	 /*LCD  */
/**********************************************/
void ocmj_write(unsigned char data)
{
 while(ask!=0)
  ;
 data_port=data;
 wait;
 set_answer;
 wait;
 while(ask==0)
  ;		
 clr_answer;
}
/**********************************************/
	 /* ASCII*/
/**********************************************/
void write_ASCII(unsigned type,unsigned xx,unsigned yy,unsigned data)
{
    ocmj_write(type);
    ocmj_write(xx+4);
    ocmj_write(yy);
    ocmj_write(data);
}

/**********************************************
	          寫漢字到LCD        
**********************************************/
 void hz_tran(unsigned char x,unsigned char y,unsigned char *hz_p)
    {
	 x+=2;
     while((*hz_p)!=0)
	    {
		 ocmj_write(0xf0);
		 ocmj_write(x);
		 ocmj_write(y);
		 ocmj_write(*hz_p-0xa0);
		 hz_p++;
		 ocmj_write(*hz_p-0xa0);
		 hz_p++;
		 if(x<0x09)
 		    x++;
		 else
		    {
			 x=0x02;
			 y++;
			}	
		}
	}
 void lcd_display(void)
{  
   write_ASCII(0xf9,5,32,table[lcd_buff[5]]);
   write_ASCII(0xf9,6,32,table[lcd_buff[4]]);
   write_ASCII(0xf9,7,32,0x2e);
   write_ASCII(0xf9,8,32,table[lcd_buff[3]]);
   write_ASCII(0xf9,9,32,table[lcd_buff[2]]);
   write_ASCII(0xf9,10,32,table[lcd_buff[1]]);
 }
 void zhuanhuan(float y1)
 {
     unsigned int y;
     y1=y1*5/1024;
	 y=(unsigned int)(y1*10000);
     lcd_buff[5]=y/100000;
	 lcd_buff[4]=y%100000/10000;
	 lcd_buff[3]=y%10000/1000;
     lcd_buff[2]=y%1000/100;
     lcd_buff[1]=y%100/10;
     lcd_buff[0]=y%10;
 }
/**********************************************/
	 /*           測相位        */
/**********************************************/
#pragma interrupt_handler time1_ov:15
void time1_ov(void)
    {
       ov++;
	}
#pragma interrupt_handler time1_capt:12
void time1_capt(void)
{    
    if(ICP1)
   { 
	  if(PING=0x02)
      { 
	    rise1=ICR1;
		PING=0x03;     //多路開關
      }
	  else if(PING=0x03)   //電流
      { 
	    rise2=ICR1;
	    t0=(float)((unsigned long)rise2-(unsigned long)rise1+ov*65535);//計算結果
             t0=(float)(0.0025133*t0);
             PING=0x00;   //多路開關復位
			 ov=0;	
	  }
  }
}	
 void capt_unit(void)
  { 
    DDRD=~(1<<4);
    TCNT1=0;
	TIMSK=0X24;//TC1捕獲中斷允許
    TCCR1B=0x43;//TC1初始化,64分頻,上升沿觸發
 }
/***************************************
          數據采集
***************************************/

void timer0_init(void)
{
  SREG=0x80;
  TCCR0 = 0x00; //stop
  ASSR = 0x00; //set async mode同步方式
  TCNT0 = 0x90; //set count
  TCCR0 = 0x02; //start timer 8分頻 
  TIMSK=0x01; 
}
#pragma interrupt_handler timer0_ovf_isr:17
void timer0_ovf_isr(void)
 {
	ADCSRA|=(1<<ADSC);
	t1++;	
 }
void adc_init(void)
{
    SREG=0x80;
	ADCSRA=0x88;     //16分頻   
    ADMUX=0x03;
}
#pragma interrupt_handler adc:22
void adc(void)
 {
	if(j<90)
	{ 
	  mem[j]=ADC&0x03ff;
      j++;
	}
	else 
	{
	  TIMSK=0x00;
	  j=0;
	}
 }
void comp()
 {
   unsigned char i;
   if(t1==90)
   { 
    max=mem[0];
    for(i=0;i<90;i++)
     {
      if(max<mem[i])
	     max=mem[i];
     }
	t1=0;
   }
}
void shujucaiji(void)
{ 
   unsigned char i; 
   ADCSRA|=(1<<ADSC);//控制和狀態寄存器,使能ADC,關閉轉換 中斷允許 32分頻  
   while(1)
   {
      comp();
      TIMSK=0x01;
	  if(t1==0) break;
   } 
 }
/***************************************
          鍵盤子程序
***************************************/
unsigned char scan_key(void)
   {
    unsigned char i,temp;
    DDRB=0x0f;	
	PORTB=0xff;	  
    for (i=0;i<4;i++)
        {
         PORTB=~(1<<i); //鍵盤線掃描
         delay_ms(1);   //等待低電平穩定
         temp=PINB&0xf0;//讀取鍵盤掃描信號,屏蔽低四位
         if (temp!=0xf0)//如果有鍵按下,延時10ms消抖
            {           //本程序用display代替10ms延時,
             delay_ms(1); //可消除顯示抖動
             temp=PINB&0xf0;//再讀鍵盤
             if (temp!=0xf0)
                {
                 temp&=0xf0;
                 switch (temp) //計算鍵值
                     {
				      case 0x70:temp=15-(3-i)*4;break;
                      case 0xb0:temp=14-(3-i)*4;break;
                      case 0xd0:temp=13-(3-i)*4;break;
                      case 0xe0:temp=12-(3-i)*4;break;
                      default:break;				 
                     }
                 return temp;
                }		 
       	     }
        }
    return 0xff;			 
    }

/********************************/
void controlcmd_ocmj(unsigned char key11)
   {  unsigned char i; 
     // if(key11==5)
	 // {
	    PING=0x00;
	    if(PING=0x00)
        { shujucaiji();
	      maxu=maxu0=max;
		  PING=0x01;
		}
	    else if(PING=0x01)  //多路開關轉換
	    {
	      shujucaiji();
	      maxi=maxi0=max;
	      PING=0x00;    //多路開關回電壓位
        }
	  // }
      switch (key11)
	   {
	    case 0:
		   ocmj_write(0xf4);
		   //shujucaiji();
		   hz_tran(3,1,"電壓");
		   zhuanhuan(maxu);
		   lcd_display();
           break;
	    case 1:
		   ocmj_write(0xf4);
		   //shujucaiji();               
		   hz_tran(3,1,"電流");
		   zhuanhuan(maxi);
		   lcd_display();
           break; 
        case 2:
		   ocmj_write(0xf4);
	       P=maxu0*maxi0*5*(float)cos(t0)/1024;
		   hz_tran(2,1,"有功功率");
		   zhuanhuan(P);
		   lcd_display();
           break; 
        case 3:	
		   ocmj_write(0xf4);
		   Q=maxu0*maxi0*5*(float)sin(t0)/1024;
		   hz_tran(2,1,"無功功率");
		   zhuanhuan(Q);
		   lcd_display();
           break; 
	    case 4:	
		   ocmj_write(0xf4);
		   G=(float)(cos(t0));
		   hz_tran(2,1,"功率因數");
		   zhuanhuan(G);
		   lcd_display();
		   break;
        default :break;
	   }
   }
	
/***************************************
          開機界面子程序
***************************************/	
void jiemian(void)
 {
	  ocmj_write(0xf4);
	  hz_tran(1,0,"工頻參數測試");
	  hz_tran(0,1,"課題組成員");
	  write_ASCII(0xf9,10,16,0x3a);
	  hz_tran(1,2,"石夢軍");
	  hz_tran(5,2,"張達敏");
	  hz_tran(0,3,"指導老師");
	  write_ASCII(0xf9,8,48,0x3a);
	  hz_tran(5,3,"張一斌");
	  delay_ms(200);
	  delay_ms(200);
	  ocmj_write(0xf4);
	  hz_tran(1,0,"按鍵功能說明");
	  hz_tran(0,1,"電壓");
	  write_ASCII(0xf9,4,16,0x20);
	  write_ASCII(0xf9,5,16,0x30);
	  hz_tran(3,1,"有效功率");
	  write_ASCII(0xf9,14,16,0x20);
	  write_ASCII(0xf9,15,16,0x32);
	  hz_tran(0,2,"電流");
	  write_ASCII(0xf9,4,32,0x20);
	  write_ASCII(0xf9,5,32,0x31);
	  hz_tran(3,2,"無功功率");
	  write_ASCII(0xf9,14,32,0x20);
	  write_ASCII(0xf9,15,32,0x33);
	  hz_tran(3,3,"功率因數");
	  write_ASCII(0xf9,14,48,0x20);
	  write_ASCII(0xf9,15,48,0x34);
	  hz_tran(0,3,"復位");
	  write_ASCII(0xf9,4,48,0x20);
	  write_ASCII(0xf9,5,48,0x35);
 }	
void main(void)
{ 
	unsigned char key;
	DDRG=0xff;                //多路開關用G口控制
	PING=0x02; 
    SREG=0x80;
	clr_answer;
	ocmj_init();
	capt_unit();
	timer0_init();
	adc_init();
	jiemian();
	ADCSRA|=(1<<ADSC);//控制和狀態寄存器,使能ADC,關閉轉換 中斷允許 32分頻  
	while(1)
	{	
	  key=scan_key();
	  PING=0x02; 
      controlcmd_ocmj(key);
	 } 
}
	  

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品一二三| 日韩精品一区二| 欧美日韩在线播放三区四区| 精品剧情在线观看| 亚洲成人av电影| 成人综合在线视频| 精品美女一区二区| 天堂精品中文字幕在线| 91香蕉国产在线观看软件| 欧美成人高清电影在线| 亚洲v日本v欧美v久久精品| 99re这里只有精品6| 欧美tickling挠脚心丨vk| 性做久久久久久免费观看欧美| 风流少妇一区二区| 久久午夜色播影院免费高清 | 亚洲精品中文字幕乱码三区| 精品一区二区免费在线观看| 久久久www免费人成精品| 亚洲丰满少妇videoshd| 色狠狠色噜噜噜综合网| 国产精品色呦呦| 国产成人精品亚洲777人妖| 久久综合五月天婷婷伊人| 久久国产欧美日韩精品| 欧美一区二区三区公司| 亚洲h在线观看| 欧美在线影院一区二区| 亚洲黄色小视频| 色欧美片视频在线观看在线视频| 中文字幕第一区第二区| 成人精品视频一区二区三区| 国产欧美一区在线| 高清不卡一区二区| 中文字幕在线观看一区二区| av成人动漫在线观看| 最新热久久免费视频| 99精品视频在线播放观看| 免费三级欧美电影| 日韩欧美黄色影院| 久久爱另类一区二区小说| 久久综合久久99| 国产v日产∨综合v精品视频| 欧美激情一区二区三区不卡| 99riav久久精品riav| 亚洲最色的网站| 在线不卡的av| 激情成人午夜视频| 国产精品不卡一区| 在线看日本不卡| 琪琪一区二区三区| 久久精品亚洲精品国产欧美| 国产.欧美.日韩| 亚洲老司机在线| 91精品国产高清一区二区三区 | 中文一区二区在线观看| 91在线无精精品入口| 国产91高潮流白浆在线麻豆| 欧美激情一区二区三区不卡| 欧美性色黄大片| 激情六月婷婷久久| 亚洲精品自拍动漫在线| 日韩亚洲欧美一区| 成人黄色在线网站| 日韩精品亚洲一区| 亚洲欧美综合网| 日韩一区二区在线观看视频播放| 国产69精品久久777的优势| 亚洲一二三四久久| 久久久久国产精品麻豆| 欧美性生活影院| 国产一区二区精品在线观看| 一区二区三区毛片| 国产农村妇女毛片精品久久麻豆 | 91小视频在线| www.久久久久久久久| 亚洲成av人片一区二区梦乃| 国产欧美日韩另类一区| 7777精品伊人久久久大香线蕉超级流畅| 精品一区二区三区欧美| 一区二区成人在线视频| 欧美高清在线精品一区| 欧美一区二区成人| 日本韩国一区二区| 成人精品在线视频观看| 麻豆成人久久精品二区三区红| 亚洲天堂网中文字| 国产欧美精品国产国产专区 | 国产精品久久久久一区| 日韩一级高清毛片| 欧美视频日韩视频| 99riav久久精品riav| 国产电影精品久久禁18| 日韩国产精品久久| 亚洲第一精品在线| 亚洲卡通欧美制服中文| 亚洲一区二区三区免费视频| 国产精品麻豆网站| 国产欧美一区二区在线观看| 日韩欧美一二三区| 91精品在线一区二区| 欧美视频中文字幕| 在线观看免费成人| 色婷婷激情一区二区三区| 国产成人精品免费| 成人一级片在线观看| 国产一区在线视频| 韩国精品免费视频| 国产麻豆精品95视频| 国产一区二区三区黄视频| 久久99精品久久久久久久久久久久| 亚洲国产欧美在线| 午夜精品一区在线观看| 亚洲va欧美va国产va天堂影院| 亚洲乱码国产乱码精品精的特点| 中文字幕中文乱码欧美一区二区| 国产目拍亚洲精品99久久精品| 久久婷婷成人综合色| 久久这里都是精品| 亚洲福中文字幕伊人影院| 亚洲黄色av一区| 亚洲一区日韩精品中文字幕| 亚洲综合激情网| 亚洲成人综合网站| 秋霞午夜鲁丝一区二区老狼| 久久精品久久久精品美女| 另类综合日韩欧美亚洲| 国产在线精品国自产拍免费| 粉嫩aⅴ一区二区三区四区 | 国产精品久久久爽爽爽麻豆色哟哟 | 国产精品美女久久久久久久久| 国产精品久久久久影院老司| 亚洲美女屁股眼交| 图片区小说区区亚洲影院| 日韩黄色小视频| 国产精品一区二区在线观看网站| 夫妻av一区二区| 国产亚洲视频系列| 国产精品视频第一区| 亚洲国产裸拍裸体视频在线观看乱了| 婷婷夜色潮精品综合在线| 久久99精品久久久久久国产越南| 成人激情小说网站| 欧美日韩高清一区二区三区| 久久久五月婷婷| 亚洲精品成人悠悠色影视| 麻豆91在线播放| av综合在线播放| 91精品国产综合久久精品图片| 欧美激情综合五月色丁香| 亚洲成精国产精品女| 国产精品自拍av| 欧美手机在线视频| 国产女主播视频一区二区| 午夜免费久久看| 成人福利视频在线| 日韩欧美卡一卡二| 亚洲综合在线第一页| 精品一区二区免费| 欧美日韩一区中文字幕| 日本一区二区三区免费乱视频| 性欧美疯狂xxxxbbbb| 丁香婷婷综合色啪| 国产精品久久久久精k8| 男人的天堂亚洲一区| 色噜噜夜夜夜综合网| 国产视频一区在线播放| 天天爽夜夜爽夜夜爽精品视频| 成人午夜激情视频| 日韩精品自拍偷拍| 亚洲一区二区三区四区不卡| 国产999精品久久| 精品少妇一区二区三区视频免付费| 尤物av一区二区| 成人性生交大合| 精品乱人伦一区二区三区| 亚洲bt欧美bt精品777| 97久久久精品综合88久久| 2欧美一区二区三区在线观看视频| 亚洲成av人影院在线观看网| 99精品视频一区二区三区| 国产亚洲欧美在线| 国精品**一区二区三区在线蜜桃| 欧美老肥妇做.爰bbww视频| 亚洲黄色小视频| 一本久久精品一区二区| 欧美国产一区二区在线观看| 激情亚洲综合在线| 欧美一区二区三区四区在线观看| 亚洲国产综合91精品麻豆| 日韩一二在线观看| 日韩精品欧美精品| 91精品国产色综合久久| 爽好多水快深点欧美视频| 欧美日韩国产区一| 丝袜美腿高跟呻吟高潮一区| 欧美日韩卡一卡二| 日韩电影在线观看电影| 欧美一级夜夜爽| 韩国欧美国产一区|