打印

PIC24E ADC

[复制链接]
2164|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhouxisay|  楼主 | 2013-1-15 14:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ANSELAbits.ANSA0 = 1;   //确认AN0为模拟输入口
                AD1CON1bits.FORM   = 3; //定义输出形式为整数

                AD1CON1bits.SSRCG = 0;
                AD1CON1bits.SSRC   = 0;     //设置转换为手动模式
                AD1CON1bits.ASAM   = 0;     //SAMP置1开始转换
                AD1CON1bits.AD12B  = 1;                // 12-bit ADC 操作模式
                AD1CON1bits.ADDMABM = 0;         // DMA buffers are built in conversion order mode

                AD1CON2bits.CHPS  = 0;                // 转换CH0
                AD1CON2bits.VCFG = 0;
                //AD1CON2bits.CSCNA = 1;      //扫描采样多路开关A 选择的CH0+ 输入
                //AD1CON2bits.BUFM = 0;       //总是从起始地址开始填充缓冲区
                AD1CON2bits.ALTS = 0;       //总是使用采样多路开关A 选择的输入通道

                AD1CON3bits.ADRC=0;                        // ADC 时钟来自系统时钟
                AD1CON3bits.ADCS = 63;                // ADC Conversion Clock Tad=Tcy*(ADCS+1)= (1/40M)*64 = 1.6us (625Khz)
                                                                        // ADC Conversion Time for 12-bit Tc=14*Tad = 22.4us

                AD1CON4bits.ADDMAEN = 0;         // 转换结果存储在ADC1BUF0-ADC1BUFF中,不使用DMA
               // AD1CON4bits.DMABL = 1; //为每个模拟输入的   DMA 缓冲单元数量分配两个字的缓冲区
                AD1CON2bits.SMPI    = 0;        // 转换或采样一次后产生中断


                //AD1CHS0: A/D Input Select Register
                AD1CHS0bits.CH0SA=0;                // 通道0同相输入位为AN0
                AD1CHS0bits.CH0NA=0;                // 通道0反相输入为VREFL

                 //AD1PCFGH/AD1PCFGL: Port Configuration Register
                //AD1PCFGL=0xFFFF;
                //AD1PCFGH=0xFFFF;
                 //AD1PCFGLbits.PCFG5 = 0;                // AN5 as Analog Input


                IFS0bits.AD1IF = 0;                        //清除 A/D 中断标志位
                IEC0bits.AD1IE = 0;                        // 不使能 A/D 中断
                AD1CON1bits.ADON = 1;                //  A/D 转换开始
                Delayus(30);
以上为我对PIC24E,ADC的设置,能取到值但就是不对,麻烦哪位大牛帮忙看下,刚接触,请多指教...
沙发
837175840| | 2014-3-26 08:52 | 只看该作者
AD1CON1bits.FORM   = 3; //定义输出形式为整数
这个不对,这是定义成有符号小数模式
这个我也是刚学,多多指教

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

0

帖子

0

粉丝