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

📄 ad采集.c

📁 温度采集显示与PID控制
💻 C
字号:
 #include"w77e58.h"
#include"intrins.h"

#define uchar unsigned char
#define uint unsigned int

sbit oe=P1^1;
sbit clk=P3^5;

void timer2(uint r,uchar tiner);//发射功率载入
void qdtime2();//启动time2
void stoptime2();//停止time2

//*************************//
extern uint data dgk;
extern bit er;
extern uchar data tine;
extern uchar data adm;//中断次数
extern uchar data cm;//每点几厘米
extern bit adc;//A/D采集完标志
extern uchar xdata adcjs[30000];//A/D采集到数据
extern uint data ydsju;//A/D采集点次数
 

//**************************//

void timer0() interrupt 1 using 1
{ 
 uchar data f;
     
     oe=0; //A/D使能
     clk=1;//一个时钟
     _nop_();
     clk=0;
     _nop_();
     f=P0;
     oe=1;
     adcjs[dgk]=f;
     dgk++;
    if(dgk==ydsju)
      {
       adc=1;
       TR0=0;
       ET0=0;
      }
   
}





void time2() interrupt 5 using 2
{
   tine--;
  if(tine==0)
     {
     er=1;
     ET2=0;
     TR2=0;
     }    
 }




void timer2(uint r,uchar tiner)
 {
    union{
    uchar t[2];
    uint h;
  }gu;

  gu.h=r;
  RCAP2L=gu.t[1];
  RCAP2H=gu.t[0]; 
  tine=tiner;
}



void qdtime2()
{
  er=0;
  TH2=RCAP2H;
  TL2=RCAP2L;
  TF2=0;
  ET2=1;
  TR2=1;
 }

void stoptime2()
{
  
  ET2=0;
  TR2=0;
  TF2=0;
  er=0;
  TH2=RCAP2H;
  TL2=RCAP2L;
}

⌨️ 快捷键说明

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