MSP430F249ADC

发布者:LogicLeaper最新更新时间:2017-11-25 来源: eefocus关键字:MSP430F249  ADC 手机看文章 扫描二维码
随时随地手机看文章

/******************************************************************
**                                                       
**  File : ADC.c     | Analog to Digital converter |                                    
**  Version : 1.0     
**  Description : led 7 segment display Analog to Digital converter                                                                         
**  Author : LightWu                              
**  Date : 2013-4-9                                                       
**                                                   
*******************************************************************/


#include "MSP430x24x.h"


#define uint unsigned int
#define uchar unsigned char


/***设置数码管显示****/


#define L1_OFF   P4OUT|=BIT0 //关L1
#define L1_NO    P4OUT&=~BIT0 //点亮L1
#define L2_OFF   P4OUT|=BIT1 //关L2
#define L2_NO    P4OUT&=~BIT1 //点亮L2
#define L3_OFF   P4OUT|=BIT2 //关L3
#define L3_NO    P4OUT&=~BIT2 //点亮L3




uchar const Segment1[]={0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f}; //不带小数点编码
uchar const Segment2[]={0x40, 0x79, 0x24, 0x30, 0x19, 0x12, 0x02, 0x78, 0x00, 0x10}; //带小数点编码


uchar AdcFlag = 0;


uchar TempNum1;
uchar TempNum2;
uchar TempNum3;




void Display( uchar num1, uchar num2, uchar num3 );


void Delay(void)
{
  uint m;
  for(m=1000;m>0;m--);
}


void main(void)
{
        // Stop watchdog timer to prevent time out reset
        WDTCTL = WDTPW + WDTHOLD;       //关狗
  
        P4DIR = 0XFF;         //P4设置为输出,位码控制
        P4SEL = 0;
        
        P5DIR = 0XFF;         //P5设置为输出,断码控制
        P5SEL = 0;
        
        P4OUT = 0XFF;         //关闭数码管,共阳极数码管
        
        ADC12CTL0 = SHT0_2 + ADC12ON;             // Set sampling time, turn on ADC12
        ADC12CTL1 = SHP;                          // Use sampling timer
        ADC12IE = 0x01;                           // Enable interrupt
        ADC12CTL0 |= ENC;                         // Conversion enabled
       
        P6DIR &= ~0x01;                            // P6.0, i/p 
        P6SEL |= 0x01;                            // P6.0-ADC option select 
        
        ADC12CTL0 |= ADC12SC;                     // 软件启动转换 
        


        _BIS_SR(GIE);   //打开中断,需要注意,不打开不进入中断。
        
        while(1)
        {
          
            if( 1 == AdcFlag )
            {
                AdcFlag = 0; 
                
                ADC12CTL0 |= ADC12SC;                   // Start convn, software controlledc,软件启动转换 
               
                Display(TempNum1,TempNum2,TempNum3);    //显示转换值
            }
            
        }
        


}
//中断服务子程序
#pragma vector=ADC12_VECTOR
__interrupt void ADC12_ISR(void)
{   


   ADC12MEM0 = ADC12MEM0/16;
    
   TempNum1 = ADC12MEM0/100;        //百位
   TempNum2 = ADC12MEM0/10%10;      //十位
   TempNum3 = ADC12MEM0%10;         //个位


   AdcFlag=1;


}


void Display( uchar num1, uchar num2, uchar num3 )
{
    P5OUT = Segment1[ num1 ];//
    L1_NO;
    Delay();
    L1_OFF;
    
    P5OUT = Segment1[ num2 ];//
    L2_NO;
    Delay();
    L2_OFF;
    
    P5OUT = Segment1[ num3 ];//
    L3_NO;
    Delay();
    L3_OFF;
    
    //P4OUT = 0XF8;         //关闭其余数码管


}

关键字:MSP430F249  ADC 引用地址:MSP430F249ADC

上一篇:MSP430F249UART
下一篇:MSP430F249数码管显示

推荐阅读最新更新时间:2024-03-16 15:46

基于51单片机的1602+ADC0832烟雾报警系统
本设计基于51单片机,共有ADC0832数模转换模块,1602液晶显示模块,按键控制与声光报警模块4大模块组成!可实现对烟雾浓度的实时监测与反应 之后是仿真目录 下面是部分代码,想要了解,可以下载文末完整附件! //基于1602+ADC0832的烟雾/温度报警系统 //作者:科技小宅神 //创作时间:2020/09/20 //版权:科技小宅神原创!抄袭必究,仅供参考学习! #include reg51.h //包含51单片机寄存器的头文件 #include 1602.h //调用1602.h文件 #include intrins.h //包含_nop_函数定义的头文件 #define uchar unsigned char #
[单片机]
基于51单片机的1602+<font color='red'>ADC</font>0832烟雾报警系统
STM32基础11--模数转换(ADC
前言 在做51单片机项目时,如果需要对外围电路进行电压测量时,往往会在51单片机上面外挂一个ADC转换芯片(例如ADC0809)。但在STM32F407中,不再需要这么干了,因为在STM32的内部就已经集成了ADC电路。 STM32中有3个最高分辨率为12 位 ADC 是逐次趋近型模数转换器。它具有多达 19 个复用通道,可测量来自 16 个外部 源、两个内部源和 VBAT 通道的信号。这些通道的 A/D 转换可在单次、连续、扫描或不连续 采样模式下进行。ADC 的结果存储在一个左对齐或右对齐的 16 位数据寄存器中。 注:虽然有3个ADC,它们的引脚复用的。也就是它们有的IN脚有些是两个ADC或
[单片机]
STM32基础11--模数转换(<font color='red'>ADC</font>)
超宽带系统中ADC 前端匹配网络设计
引言 传统的窄带无线接收机,DVGA+抗混叠滤波器+ADC 链路的设计中,我们默认ADC 为高阻态,在仿真抗混叠滤波器的时候忽略ADC 内阻带来的影响。但随着无线技术的日新月异,所需支持的信号带宽越来越宽,相应的信号频率也越来越高,在这样的情况下ADC 随频率变化的内阻将无法被忽视。为了取得较好的信号带内平坦度,引入了ADC 前端匹配电路的设计,特别是对于non-input buffer的ADC在高负载抗混叠滤波器应用场景下,前端匹配电路的设计在超宽带的应用中就更显得尤为重要。本文将以ADS58H40为例介绍ADC前端匹配电路的设计。 Non-input buffer ADC 内阻特性及其等效模型 理想ADC 的输入
[电源管理]
超宽带系统中<font color='red'>ADC</font> 前端匹配网络设计
∑-ΔADC应用笔记
引言   许多高端工业应用中,高性能数据采集系统(DAS)与各种传感器之间需要提供适当的接口电路。如果信号接口要求提供多通道、高精度的幅度和相位信息,这些工业应用可以充分利用MAX11040等ADC的高动态范围、同时采样以及多通道优势。本文介绍了MAX11040的Σ-Δ架构,以及如何合理选择设计架构和外部元件,以获得最佳的系统性能。 本应用笔记旨在帮助设计人员在高性能、多通道数据采集系统(DAS)设计中优化工业传感器与高性能ADC之间的连接电路。以电网监测系统为例,本文说明了使用MAX11040 Σ-Δ ADC的优势以及如何选择适当的架构和外围器件,优化系统性能。   高速、Σ-Δ架构的优势   图1所示为高端三相
[模拟电子]
∑-Δ<font color='red'>ADC</font>应用笔记
德州仪器推出两款多通道16位模数转换器
2008 年 5 月 30日,德州仪器 (TI) 宣布推出 ADS1174(四通道)与 ADS1178(八通道)两款多通道16位 ∆∑ 型模数转换器 (ADC)。这两款新产品完美集成了出色的 DC 精度、卓越的 AC 性能以及低成本集成等优异特性,为电源测量、除颤器、ECG 监视器以及压力传感器、科里奥列流量计以及震荡/模式分析等要求严格的信号采集应用提供了同时采样测量系统ADS1174 与ADS1178 模数转换器不仅具有 25kHz 的带宽、2uV/C 的失调电压漂移、高达 97dB 的信噪比 (SNR),而且还支持两种操作模式,从而可实现速度优化(52kSPS) 或功耗优化。 过去,可提供出色漂移性能的工业
[新品]
单片机ADC采样算法----有效值采样法
在使用单片机ADC功能采样数据时,通常情况下用平均值计算就够了,但是在计算功率时就需要用有效值来计算真正做功的情况。如果是标准的正弦波的话,正弦波的峰值是有效值得1.414倍,可以通过峰值来计算有效值。但是实际应用中波形往往会发生畸变,如果按照1.414这个比例计算的话,误差往往会比较大。所以必须通过计算正弦波的面积来求有效值。 有效值又叫均方根值,对数据的平方和取平均再开方所计算出来的值。所以通常情况下采用的计算方法是:将所有值平方求和,求其均值,再开平方,就得到均方根值。用公式表达的话就是这样。 下面就通过C代码来实现这个公式: //取均方根值 u16 get_rms1( void ) { static u16
[单片机]
单片机<font color='red'>ADC</font>采样算法----有效值采样法
stm32学习笔记---ADC电压采集
1. ①电压输入范围 ADC 输入范围为:VREF- ≤ VIN ≤ VREF+。由 VREF-、VREF+ 、VDDA 、VSSA、这四个外部引脚决定。 我们在设计原理图的时候一般把 VSSA 和 VREF-接地,把 VREF+和 VDDA 接 3V3,得到 ADC 的输入电压范围为:0~3.3V。 如果我们想让输入的电压范围变宽,去到可以测试负电压或者更高的正电压,我们可 以在外部加一个电压调理电路,把需要转换的电压抬升或者降压到 0~3.3V,这样 ADC 就 可以测量了。 2. ②输入通道 我们确定好 ADC 输入电压之后,那么电压怎么输入到 ADC?这里我们引入通道的概念, STM32 的 ADC
[单片机]
stm32学习笔记---<font color='red'>ADC</font>电压采集
IMEC详述ADC和60GHz无线开发
  在ISSCC(国际晶体管电路讨论会)上,IMEC研究员详细介绍了其在数据转换和无线60GHz的最新业绩。   在数据转换方面,IMEC的三篇论文详述了针对软件无线电(SDR),60GHz通信和传感器网络应用的超低功耗模数转换器(ADC)。位于比利时Leuven的IMEC微电子研发中心已经对其SAR(逐次逼近)架构、闪存和CABS(基于比较器的异步二进制搜索)ADC家族申请了专利,希望这些可以作为白盒IP授权应用到产品开发过程中。   IMEC研究人员开发了一个两步、7bit、150Msamples/s的ADC,达到每个转换步骤10fJ的品质因数。这个创新的CABS ADC架构包括一个1bit原始ADC和6bit副ADC。6
[焦点新闻]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved