导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[channel96]msp430f149 ADC12做波形采



No.34277
作者:channel96
邮件:lhjbox2000@yahoo.com.cn
ID:13010
登陆:2次
文章数:1篇
最后登陆IP:218.85.18.2
最后登陆:2003/6/17 17:23:28
注册:2003/6/13 13:58:40
财富:56
发帖时间:2003/6/13 13:59:12
发贴者IP:218.85.8.7
标题:channel96:msp430f149 ADC12做波形采样,现已陷入僵局
摘要:No.34277msp430f149 ADC12做波形采样,现已陷入僵局 我用msp430f149 ADC12做波形采样,现已陷入僵局

   #####==>  的地方是我的问题

是电压变化信号范围在0~2。5V,采样频率应大于10K,XT2的晶振为8M
我的系统时种设置如下(######==>  1.时钟设置正确否?######==>  2.MCLK是不是最大了?):
  DCOCTL=0Xe0;  //F149基础时钟设置
  BCSCTL1=0x07;  //开启XT2振荡器
  BCSCTL2=SELM_2;  //定义MCLK为XT2;MCLK分频为1;SMCLK时钟源为DCOCLK,SMCLK分频为1

(######==>  3.f149芯片的ADC12最大采样频率可达200K?)我的ADC采样编码设想如下:

设置ADC12采样频率尽可能高,ADC12中断服务子程序尽可能小,(######==>  4.中断服务子程序时间应当不超过ADC12的采样周期,否则ADC12的采样周期会被拉长?)利用缓冲处理的形式,设置一个缓冲数组ADCbuf[2][122];在中断服务程序中对ADCbuf[0],ADCbuf[1]进行轮流缓冲,每当一个缓冲生成后,置一个缓冲完成标志bufok=1,主程序中根据bufok=1轮流对缓冲数组ADCbuf[0],ADCbuf[1]进行处理(是要对缓冲中的每个采样值进行处理),每处理完一个缓冲清bufok=0;(######==>  5.对每一个缓冲的处理时间应小于每一个缓冲的生成时间,要么对缓冲的处理会一直被中断?)

我程序这样的:
void ADC12Init(void)
{
  ADC12CTL0&=~ENC;  //关闭adc12转换允许位
  ADC12CTL0 =MSC+ADC12ON+SHT0_3; //开adc12内核,采样自动转换
  ADC12CTL1=SHS_0+SHP+ADC12DIV_0+ADC12SSEL_2+CONSEQ_2; //单通道重复
  ADC12MCTL0 = EOS+INCH_11; 
  ADC12IE = 0x0001;     // Enable ADC12IFG.0
}
#pragma vector=ADC_VECTOR
__interrupt void ADCINT (void)// ADC中断服务程序
{
...
 if (buf_y==0) //如果是新的缓冲开始,则一维下标应变化
    { 
     ADcount+=1; //记录ADC缓冲发生次数,全局变量
      buf_x^=0x01;  
    }
  ADCbuf[buf_x][buf_y]=ADC12MEM0;
  buf_y+=1;
...
}
void main(void)
{
 ...
 F149Init();
 ADC12Init();
  _EINT();         //开总中断
...
 ADC12CTL0 |= ENC;                     // 使能ADC12转换允许位
 ADC12CTL0 |= ADC12SC;               ......

>>返回讨论的主题



  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:16毫秒 最大:5186毫秒 查询6次