8153|3

4

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

极值点测试 [复制链接]

下面是我的程序,测试程序可以进中断,但是采集不到数据,各位大神能帮我看看哪出的问题吗
#include
#define n 36
int ADC_buf[n];
unsigned char j;
unsigned char i=0;
int  g_zhong,ADC_MAX;
float  MAX_true;
void init_TimerA(void)
{
  TA0CTL|=TASSEL_2+TACLR;//选择时钟为SMCLK,清除TAR
  TA0CCTL0|=CCIE;;//CCR0使能中断
  //TA0CCR0=40000;//频率为200Hz 8M/40000=200
  TA0CCR0=20000;//频率为40kHz 8M/200=40k
  TA0CTL|=MC0;//增计数模式
}
void init_ADC(void)
{
  ADC12CTL0&=~ADC12ENC;//允许转换位是零,不允许转换
  ADC12CTL1|=ADC12CSTARTADD_0;//多次转换的地址是ADC12MEM0
  ADC12MCTL0|=ADC12INCH_0;//模拟输入通道为A0
  ADC12CTL0|=ADC12SHT0_8 + ADC12ON;//ADC12ON:ADC12模块转换控制位,为一时打开该模块允许转换,
  ADC12CTL1|=ADC12CONSEQ_2;//单通道多次转换模式
  ADC12CTL1|=ADC12SSEL_2;//ADC12时钟源选择SMCLK
  ADC12CTL1|=ADC12DIV_0;//分频因子是1
  ADC12CTL1|=ADC12SHP;//采样信号源来自定时器
  ADC12CTL1|=ADC12SHS_1;//时钟源选择TA
  ADC12CTL0|=ADC12ENC;//ENC:转换允许位 为一时允许转换,
}
int main(void)
{
   WDTCTL = WDTPW + WDTHOLD;      // Stop WDT
   init_TimerA();                //时钟初始化
   init_ADC();
   P6SEL |= 0x01;            // P6.0 ADC option select
   P1DIR |= 0x01;
   P1OUT &=~BIT0;
   P6DIR |= BIT1;
   P6OUT |= BIT1;
   _EINT();
while (1)
  { ADC_buf=ADC12MEM0;//读取转换结果
       i++;
       i=i%n;
     if(i==0)
     {
      for(j=1;j
    {
      if(ADC_buf[j-1]>ADC_buf[j])
    {
      g_zhong=ADC_buf[j-1];
      ADC_buf[j-1]=ADC_buf[j];
      ADC_buf[j]=g_zhong;
      }
        ADC_MAX=ADC_buf[n-1];
         }
       MAX_true=ADC_MAX*3.30/4095;
     }
  }
}
#pragmavector=TIMER0_A0_VECTOR
__interrupt void Timer_A(void)
{
     P6OUT^= BIT1;
     ADC12CTL0|= ADC12ENC+ADC12SC;
     _bic_SR_register(LPM0_bits);
}

此帖出自单片机论坛

最新回复

因为你中断里根本就没有取转换结果呀  详情 回复 发表于 2019-1-17 14:30
点赞 关注
 

回复
举报

7671

帖子

2

TA的资源

五彩晶圆(高级)

沙发
 
ADC_MAX = 0 ?
此帖出自单片机论坛
 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 

回复

4008

帖子

0

TA的资源

版主

板凳
 
因为你中断里根本就没有取转换结果呀
此帖出自单片机论坛
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(初级)

4
 
在中断中也读不到结果
此帖出自单片机论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表