1887|3

300

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

【TI首届低功耗设计大赛】07611128 ADC串口使用(P1.2) [复制链接]

承认偷懒了,找完工作,16号sopc比赛,最近的天天的实验课,导致了压根不想调,哈哈。
今天抽出来了点时间,先把ad的调了出来,使用的背部adc,P12引脚。详情见代码好了。

ADC的初始化:
void adc_init()
{
  P1SEL1 |= BIT2;                           // Configure P1.2 for ADC
  P1SEL0 |= BIT2;

  // Disable the GPIO power-on default high-impedance mode to activate
  // previously configured port settings
  PM5CTL0 &= ~LOCKLPM5;
  // Configure ADC12
  ADC12CTL0 = ADC12SHT0_2 | ADC12ON;        // Sampling time, S&H=16, ADC12 on
  ADC12CTL1 = ADC12SHP;                     // Use sampling timer
  ADC12CTL2 |= ADC12RES_2;                  // 12-bit conversion results
  ADC12MCTL0 |= ADC12INCH_2;                // A1 ADC input select; Vref=AVCC
  ADC12IER0 |= ADC12IE0;                    // Enable ADC conv complete interrupt
}

使用了adc中断,他的中断函数如下:

#if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__)
#pragma vector = ADC12_VECTOR
__interrupt void ADC12_ISR(void)
#elif defined(__GNUC__)
void __attribute__ ((interrupt(ADC12_VECTOR))) ADC12_ISR (void)
#else
#error Compiler not supported!
#endif
{
  switch(__even_in_range(ADC12IV, ADC12IV_ADC12RDYIFG))
  {
    case ADC12IV_ADC12IFG0:                 // Vector 12:  ADC12MEM0 Interrupt
    adc_data=ADC12MEM0 ;   
      break;                                // Clear CPUOFF bit from 0(SR)
    default: break;
  }
}

启动adc函数:
void adc_start()
{
    ADC12CTL0 |= ADC12ENC | ADC12SC;        // Start sampling/conversion
}

使用办法:
adc_start();
sprintf(s, "%3.4f", ADC12MEM0*3.3/4096);
sendstring(s);

s是一个数组,用来保存sprintf转换过来的字符串,通过串口打印输出。串口的部分见https://bbs.eeworld.com.cn/thread-447702-1-1.html

好啦好啦,赶快去吃饭!!饿死了,不吃饭哪有力气写代码~

最新回复

哎。。。。最近一直在纠结这个事啊,我也一直没进展了,破事太多了,哎,还是学生时代好啊  详情 回复 发表于 2014-11-26 20:43
 
点赞 关注
个人签名世间万物皆系于一键之上~

回复
举报

1147

帖子

0

TA的资源

纯净的硅(高级)

沙发
 
 
 

回复

2549

帖子

0

TA的资源

五彩晶圆(初级)

板凳
 
哎。。。。最近一直在纠结这个事啊,我也一直没进展了,破事太多了,哎,还是学生时代好啊

点评

还有时间,哈哈,虽然只剩下半个月了,搞一搞还是可以的~  详情 回复 发表于 2014-11-27 09:25
 
 
 

回复

300

帖子

0

TA的资源

一粒金砂(高级)

4
 
数码小叶 发表于 2014-11-26 20:43
哎。。。。最近一直在纠结这个事啊,我也一直没进展了,破事太多了,哎,还是学生时代好啊
还有时间,哈哈,虽然只剩下半个月了,搞一搞还是可以的~
 
个人签名世间万物皆系于一键之上~
 
 

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

随便看看
查找数据手册?

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
快速回复 返回顶部 返回列表