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

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

?? aaa.c

?? 用51單片機編譯成的頻率計的源程序
?? C
?? 第 1 頁 / 共 3 頁
字號:
#include <upsd3300.h>
#include <intrins.h>
#include <string.h>
#include <absacc.h>
//#include "upsd33_adc.h"
//#include <Turbo_adc.h>
//#include <Turbo_timer.h>
//#include <Turbo_PCA-PWM.h>
//#include <test.h>

#define uchar unsigned char
#define uint unsigned int

//#define PSD_REG_ADDR 0x0800		 //PSD寄存器IO基址	 
#define  scan  P3					 //鍵掃
#define POWK P1_7					 //交流接觸器開關,0有效
#define POWZ P4_7					 //電阻短接,0有效
#define ST   P4_6					 //脈沖使能

#define RS  P1_6			         //液晶命令口
#define RW  P1_5
#define  E  P1_4
#define PSD_REG_ADDR 0x0200
   
/*********管腳定義****************/
//#define  lcdport  PSD33_reg.DATAOUT_A  //P4        //P4液晶數據口,必須用雙通道IO


xdata PSD_REGS PSD33_reg _at_ PSD_REG_ADDR ;

uchar bdata temp;		    //判忙用字節
sbit busy = temp^7;
uchar  keyv ;
uchar  pinlv[3] = {0,0,0};		   //頻率值
uchar  dianya[2] = {0,0};		   //電壓值
//uchar  mm[3] = {1,6,0};			   //調制度,30-210
uchar code OK[]={"OK"};

 uchar i;
/******************************************************************************
*                PWM變量定義

******************************************************************************/
/*------------------------------------------------------------------------------
			  Local Variable Declarations
------------------------------------------------------------------------------*/
//時鐘周期為30ns,(板上33.1776M晶振)
//固定頻率采樣,載波頻率5K,周期200us,計數值=200us/(30ns*12)=556 
//采樣周期 = 1/2載波周期 = 278 



//long Fc;					
long idata F;
long idata F_min;
uint data N;				//載波比
long data M;				//調制系數

						


uint data Ts; 					//采樣周期 = 1/2 載波周期
long data Half_Ts;      		//1/2采樣周期

long idata K_M;					//調制系數放大倍數
long idata K_F;					//輸入頻率放大倍數

//uint idata K_sin;				//sin表放大倍數
//uint idata K_coe;				//總放大倍數,K_M * K_sin;
							



//int idata dead_time;		
uint data U_angle;
uint data V_angle;
uint data W_angle;

uint data K;				//采樣個數,偶數為頂點采樣,奇數為底點采樣
uint data U_Toff;			//頂點采樣開通延時
uint data U_Ton;         	//底點采樣關斷延時
uint data V_Toff;
uint data V_Ton;
uint data W_Toff;
uint data W_Ton;

uint Tm;
code uint u36 = 0x125;


unsigned char data P_flag,aa;		 //奇偶采樣點標志

static unsigned int idata timer0_tick;
static unsigned int idata timer0_value;

static unsigned int idata timer1_tick;
static unsigned int idata timer1_value;


int data M_angle;

unsigned long idata Fm;


unsigned int data PCA0;


//0--180度正弦表


unsigned char code sin_table[181] = { 0,4,9,13,18,22,27,31,35,40,
                          44,49,53,57,62,66,70,75,79,83,
                          87,91,96,100,104,108,112,116,120,124,
                          128,131,135,139,143,146,150,153,157,160,
                          164,167,171,174,177,180,183,186,190,192,
                          195,198,201,204,206,209,211,214,216,219,
                          221,223,225,227,229,231,233,235,236,238,
                          240,241,243,244,245,246,247,248,249,250,
                          251,252,253,253,254,254,254,255,255,255,
                          255,255,255,255,254,254,254,253,253,252,
                          251,250,249,248,247,246,245,244,243,241,
                          240,238,236,235,233,231,229,227,225,223,
                          221,219,216,214,211,209,206,204,201,198,
                          195,192,190,186,183,180,177,174,171,167,
                          164,160,157,153,150,146,143,139,135,131,
                          128,124,120,116,112,108,104,100,96,91,
                          87,83,79,75,70,66,62,57,53,48,
                          44,40,35,31,27,22,18,13,9,4,0	};

/********************************************************************
*鍵盤碼
********************************************************************/
uchar code key_tab[] =
{
	0x01,0x02,0x03,0x0a,
	0x04,0x05,0x06,0x0b,
	0x07,0x08,0x09,0x0c,
	0x0f,0x00,0x0e,0x0d,
};


/********************************************************************/
/*******************************函數聲明*****************************/
/********************************************************************/

/*---------------------------------------------------------------
*          LCD函數聲明
*---------------------------------------------------------------*/
void lcdbusytest();
void writelcdcom(uchar com);
void writelcddat(uchar dat);
void mdelay(uchar j);							 //upsd 40M延時
void initlcd();								     //初始化
void clrlcd();								     //清屏
void printchar(uchar xpos,uchar ypos,uchar str); //寫一個字符
void printstr(uchar xpos,uchar ypos,uchar *str); //寫字符串
/*-------------------------------------------------------------
*        鍵盤掃描
*-------------------------------------------------------------*/
uchar getkey (void);

/*-------------------------------------------------------------
*    ADC 程序聲明
-------------------------------------------------------------*/
void ADC_EnableAll(void) ;
void ADC_Init (unsigned char channel);
unsigned int ADC_Read( unsigned char channel );

/*-------------------------------------------------------------
*    得到電壓電壓值,并在液晶上顯示
-------------------------------------------------------------*/
void getVA (uchar channel);

/*-------------------------------------------------------------
*   得到功率和頻率
-------------------------------------------------------------*/
void  getPf  (void);

/*******************************************************************
************************PWM部分聲明*********************************
*******************************************************************/

/*-------------------------------------------------------------
//定時器0中斷服務程序,PWM
//定時器0用于產生采樣周期的定時中斷,采樣周期Ts	=1/2載波周期 = 278 時鐘周期
-------------------------------------------------------------*/
static void timer0_isr (void); //interrupt TF0_VECTOR using 1

/*-------------------------------------------------------------
*    int sin_angle(long angle )
*功能描述:角度換算函數,使角度值控制在180以內
*
-------------------------------------------------------------*/
int sin_angle(long angle );

/*-------------------------------------------------------------
*             void first(void )
*第一個采樣點計算函數,在K=0時計算
-------------------------------------------------------------*/
void first(void );

/*-------------------------------------------------------------
*定時器0初始化
-------------------------------------------------------------*/
void timer0_init (void);


/*--------------------------------------------------------------------
*PCA中斷服務程序
---------------------------------------------------------------------*/

static void PCA_isr (void); //interrupt PCA_VECTOR using 1   

/*-------------------------------------------------------------------
*  PCA0初始化
--------------------------------------------------------------------*/
void PCA_init() ;
void pwmwork();
/***********************PWM聲明結束***********************************/

/*********************************************************************
***************************函數聲明結束*******************************
**********************************************************************/


/****************************************************************
*延時子程序,1ms
****************************************************************/

void delay1ms(uint x)
{
    uint i;
    while(x--)   			//((11+7*i)*x+5	)T
      {  i= 450;		
        while((i--)>0);			//i=141,x=1,t=1003T
      }
}
/******************************************************************
*              uchar  keyscan()
*功能:鍵盤掃描程序
*說明: 4*4鍵盤,無上拉電阻。P0~P3為行輸出,P4~P7為列輸入
*返回值:0x(lie)(hang)
******************************************************************/


uchar getkey (void)
{   
     
     static uchar kn;
	 uchar lie=0,hang,x=0;
	 //E = 0;
	 //RS = 0;
	 scan = 0xf0;
	 if((scan & 0xf0) !=0xf0)               
     {  delay1ms(10);                             
        if((scan & 0xf0) !=0xf0)          
          { hang = 0xfe;                     
            for(i=0;i<4;i++ )                
            { scan = hang;
              if((scan & 0xf0) != 0xf0)        
               {
			     lie = ~(scan | 0x0f );        
                 switch (lie)
				  { case 0x10:kn = *(key_tab + i);break;
				    case 0x20:kn = *(key_tab+i+4) ;break;
				    case 0x40:kn = *(key_tab+i+8) ;break;
				    case 0x80:kn = *(key_tab+i+12) ;break;
					default:break;
				   } 
				   return( kn);
               } 
              else hang = (hang<<1)|0x01;
            }
          }   
     }
   return(kn);  
}





/**********延時子程序*************/
void mdelay(uchar j)
{uint i;
for(;j>0;j--)
  { for(i=0;i<200;i++)
  {;}
    }
}

/**********判忙子程序*************/
 void lcdbusytest()
{
  PSD33_reg.DATAOUT_A = 0xff;
 // lcdport=0xff;
  RS=0;
  RW=1;
  E=1;
  PSD33_reg.DIRECTION_A =0;		          //PB為輸入模式
  do{temp=PSD33_reg.DATAIN_A;} while(busy);
//do{temp=lcdport;}while(busy);
  E=0;
  PSD33_reg.DIRECTION_A =0xff; 
}


/*********寫命令******************/
 void writelcdcom(uchar com)
{
  lcdbusytest();
  RS=0;
  RW=0;
  E=1; 
  PSD33_reg.DATAOUT_A =	com;
  //lcdport=com;
  E=0;
}

/**********寫數據****************/
void writelcddat(uchar dat)
{
  lcdbusytest();
  RS=1;
  RW=0;
  E=1;
  PSD33_reg.DATAOUT_A = dat;
  //lcdport=dat;
  E=0;
}

/***********LCD清屏****************/
void clrlcd()
{writelcdcom(0x01);}

/***********LCD初始化**************/
 void init_lcd()
{ mdelay(15);
  RS=0;
  RW=0;
  E=1;
  PSD33_reg.DATAOUT_A = 0x38;
 // lcdport=0x38;
  E=0;
  mdelay(5);
  RS=0;
  RW=0;
  E=1;
  PSD33_reg.DATAOUT_A = 0x38;
  //lcdport=0x38;
  E=0;
  mdelay(5);
  RS=0;
  RW=0;
  E=1;
  PSD33_reg.DATAOUT_A = 0x38;
 // lcdport=0x38;
  E=0;
  writelcdcom(0x38);
  writelcdcom(0x08);
  clrlcd();
  writelcdcom(0x06);
  writelcdcom(0x0c);
}

/*********寫一個字符****************/
void printchar(uchar xpos,uchar ypos,uchar str)
{uchar m=0;
switch (ypos)
{ case 0:  xpos|=0x80;break;
  case 1: xpos|=0xc0;break;
  default: break;
  }
writelcdcom(xpos);
writelcddat(str);
}

/*********寫字符串函數*************/
void printstr(uchar xpos,uchar ypos,uchar *str)
{ 
 //uchar n;
 uchar m=0;
 switch (ypos)
 { case 0: xpos|=0x80;break;	        //寫入顯示地址要求D7恒為高電平
   case 1: xpos|=0xc0;break;
   default: break;
  }
 writelcdcom(xpos);                //此處的Xpos已轉換為LCM的顯示寄存器實際地址
 for(i=0;i<strlen(str);i++)
   {
     writelcddat(str[m++]);
   }

}


/*****************************************************************************
*                         ADC_EnableAll()
*功能:ADC使能,設置P1口通道為ADC輸入,選擇ADC時鐘頻率
*參數:無
******************************************************************************/
void ADC_EnableAll(void) 
{
    ACON = 0;                           // 關閉ADC


    ADCPS =(0x08 + 1);                  //使能ADC時鐘,設置時鐘頻率
    _nop_();
    _nop_();
   	P1SFS0 |= 0x07;
	P1SFS1 |= 0x07;                      // 選擇P1口相應位為ADC輸入

    
    ACON = 0x20;
                        // 使能ADC;Enable ADC

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人av网站在线观看免费| av一区二区三区在线| 亚洲成人av一区| 亚洲综合色噜噜狠狠| 亚洲精品免费在线播放| 日韩美女精品在线| 亚洲高清免费观看 | 精品影院一区二区久久久| 午夜精品福利在线| 日韩成人av影视| 美女视频免费一区| 国产成人午夜精品影院观看视频| 国产精品一二三四区| a亚洲天堂av| 欧美在线免费观看视频| 91麻豆精品国产91久久久使用方法 | 国产精品美女久久福利网站 | 亚洲资源在线观看| 午夜欧美视频在线观看| 国内精品写真在线观看| 成人成人成人在线视频| 欧美日韩一卡二卡| 欧美精品一区二区在线观看| 国产精品美女久久久久久| 夜夜揉揉日日人人青青一国产精品 | 亚洲天天做日日做天天谢日日欢| 亚洲第一狼人社区| 国产在线乱码一区二区三区| 波多野洁衣一区| 91精品一区二区三区在线观看| 久久精品在线免费观看| 一二三四区精品视频| 国产一区二区三区蝌蚪| 色狠狠一区二区三区香蕉| 精品剧情在线观看| 亚洲精品国产一区二区三区四区在线| 美女视频黄免费的久久| 91理论电影在线观看| 久久网站最新地址| 亚洲第一福利一区| 成人午夜精品在线| 日韩色在线观看| 一区二区三区日韩欧美| 国产福利一区二区三区| 7777精品伊人久久久大香线蕉的| 日本一区二区三级电影在线观看| 亚洲国产三级在线| www.亚洲免费av| 26uuu国产一区二区三区| 亚洲精品美腿丝袜| 国产麻豆视频一区二区| 91精品国产全国免费观看| 亚洲卡通欧美制服中文| 成人免费观看视频| 亚洲精品一区二区精华| 青娱乐精品视频| 欧美浪妇xxxx高跟鞋交| 一区二区三区波多野结衣在线观看| 色综合中文综合网| 精品中文字幕一区二区| 欧美日韩在线播放一区| 综合电影一区二区三区| 国产精品1区2区3区在线观看| 日韩一区二区三区电影在线观看 | 亚洲综合在线电影| 风间由美一区二区三区在线观看| 日韩欧美一级二级三级| 蜜臀av亚洲一区中文字幕| 在线不卡免费欧美| 亚洲成人av一区二区| 欧美日韩国产高清一区二区三区 | 国产精品小仙女| 精品国产1区2区3区| 紧缚奴在线一区二区三区| 欧美大尺度电影在线| 成人精品亚洲人成在线| 国产日韩亚洲欧美综合| 国产精品一区二区在线观看网站| 久久色在线观看| 国产精品18久久久久久久网站| 久久九九国产精品| yourporn久久国产精品| 亚洲美女电影在线| 色八戒一区二区三区| 亚洲伊人伊色伊影伊综合网| 欧美日韩视频专区在线播放| 偷拍与自拍一区| 日韩欧美亚洲国产精品字幕久久久| 久久福利视频一区二区| 久久久久久久国产精品影院| 高清shemale亚洲人妖| 国产精品久久久久永久免费观看 | 韩国中文字幕2020精品| 日本一区二区三区免费乱视频| 99在线精品视频| 亚洲欧美另类小说视频| 欧美日韩三级视频| 激情偷乱视频一区二区三区| 亚洲国产成人一区二区三区| 91影院在线免费观看| 日一区二区三区| 久久这里只有精品6| 99久久99久久精品免费观看 | 亚洲乱码国产乱码精品精小说 | 蜜桃视频在线观看一区| 国产片一区二区三区| 欧洲亚洲国产日韩| 黑人巨大精品欧美一区| 亚洲一区二区欧美日韩| 国产亚洲欧美在线| 欧美亚洲免费在线一区| 国产精品18久久久久久久久 | 午夜视频在线观看一区二区| 亚洲精品在线电影| 在线看国产日韩| 成人小视频在线观看| 蜜臀av性久久久久蜜臀av麻豆| 国产精品美女久久久久久久| 欧美一区二区三区小说| 色噜噜狠狠色综合欧洲selulu| 麻豆精品在线观看| 亚洲国产成人91porn| 国产偷国产偷亚洲高清人白洁| 在线观看91av| 欧美亚洲国产一区二区三区| 高清在线观看日韩| 精品中文字幕一区二区| 日日夜夜精品视频免费| 一区二区免费视频| 中文字幕av不卡| 精品国产成人在线影院 | 国产高清精品久久久久| 奇米色一区二区| 亚洲成人精品影院| 国产精品免费视频网站| 久久久午夜精品理论片中文字幕| 欧美美女网站色| 欧美日韩黄色一区二区| 在线视频综合导航| 91女厕偷拍女厕偷拍高清| 国产成人综合网| 国产在线精品一区在线观看麻豆| 午夜精品爽啪视频| 亚洲午夜精品在线| 亚洲精品欧美专区| 一区二区三区免费看视频| 亚洲人成网站精品片在线观看| 国产欧美一二三区| 久久久电影一区二区三区| 久久亚洲精品小早川怜子| 久久影音资源网| 国产精品婷婷午夜在线观看| 国产精品女主播av| 亚洲人成伊人成综合网小说| 亚洲欧美日韩一区二区| 亚洲乱码国产乱码精品精98午夜 | 成人精品一区二区三区四区 | 正在播放亚洲一区| 日韩一级片在线观看| 欧美一区二区免费视频| 日韩欧美二区三区| 精品国产成人在线影院| 成人综合在线视频| 国产精品一区三区| 成人免费视频一区| 99国产欧美另类久久久精品 | 色婷婷亚洲婷婷| 欧美优质美女网站| 欧美日本乱大交xxxxx| 日韩一区二区精品葵司在线| 久久影院视频免费| 亚洲视频在线一区二区| 亚洲五码中文字幕| 日韩福利视频网| 国产a视频精品免费观看| av在线播放一区二区三区| 91久久线看在观草草青青| 91精品国产综合久久香蕉麻豆| 一区二区三区四区五区视频在线观看| 日韩理论在线观看| 性做久久久久久| 国产成人精品1024| 欧美午夜宅男影院| 欧美电影免费观看高清完整版在线观看| 久久精品人人做人人爽人人| 日韩伦理电影网| 久久精品国产99久久6| 成人一区在线看| 欧美老女人在线| 国产精品美女www爽爽爽| 亚洲国产中文字幕| 成人免费视频caoporn| 欧美日韩免费电影| 中文字幕制服丝袜成人av| 日韩电影免费一区| 色婷婷综合五月| 久久久久久久综合狠狠综合| 亚洲成人动漫在线免费观看| 成人手机在线视频| 欧美一区二区三区思思人|