Loading

嵌入式作业6.2 ADC 编程

在ADC实验中,结合热敏电阻,分别通过触摸芯片表面和热敏电阻,引起A/D值变化,显示芯片内部温度和当前温度。

程序代码

//主函数
int main(void)
{
    uint16_t num_AD1;	
    uint16_t num_AD2;
    uint16_t num_AD3;
    uint32_t mMainLoopCount;  //主循环次数变量
    
    //关总中断
    DISABLE_INTERRUPTS;
    
    mMainLoopCount=0;    //主循环次数变量

    adc_init(ADC_CHANNEL_1,AD_DIFF);			    //初始化ADC通道1,
    adc_init(ADC_CHANNEL_15,AD_DIFF);			    //初始化ADC通道15
    adc_init(ADC_CHANNEL_TEMPSENSOR,AD_SINGLE);	//初始化ADC通道:内部温度
    
    ENABLE_INTERRUPTS;
    
    printf("------------------------------------------------------\n"); 
    printf("金葫芦提示:                                           \n"); 
    printf("(1)目的:ADC单端输入与差分输入测试                    \n"); 
    printf("(2)单端:内部温度传感器,通道号17,无需引脚对应        \n");
    printf("     差分:GEC引脚47、46(通道1、2)                  \n");
    printf("           GEC引脚12、11(通道15、16)                  \n");
    printf("(3)测试方法:单端:手摸芯片表面,A/D值增大,不要摸    \n");
    printf("                    到引脚,静电可能损坏芯片           \n");
    printf("              差分:将引脚47接地、46接3.3V,观察通道1情况\n");
    printf("                    将引脚46接地、47接3.3V,观察通道1情况\n");
    printf("             类似方法,观察通道15                      \n");
    printf("------------------------------------------------------\n"); 
    
    for(;;)
    {
    	//主循环次数变量+1
        mMainLoopCount++;
        //未达到主循环次数设定值,继续循环
        //延时1秒
        if (mMainLoopCount<=30000000)  continue;
        //达到主循环次数设定值,执行下列语句,进行灯的亮暗处理
        //清除循环次数变量
        mMainLoopCount=0;
        
        num_AD1 = adc_ave(ADC_CHANNEL_1,8);
        num_AD2 = adc_ave(ADC_CHANNEL_15,8);
        num_AD3 = adc_ave(ADC_CHANNEL_TEMPSENSOR,8);
        printf("通道1(GEC47、46)的A/D值: %d\r\n",num_AD1);
        printf("通道1(GEC47、46)的温度值: %f\r\n",Regression_Ext_Temp(num_AD1));
        printf("通道15(GEC12、11)的A/D值:%d\r\n",num_AD2);
        printf("通道15(GEC12、11)的温度值:%f\r\n",Regression_Ext_Temp(num_AD2));
        printf("内部温度传感器的A/D值:%d\r\n",num_AD3);
        printf("内部温度传感器的温度值:%f\r\n\n",Regression_MCU_Temp(num_AD3));
    }
}

运行效果

使热敏电阻升温:

使 mcu 升温:

posted @ 2024-06-13 00:10  一只心耳  阅读(39)  评论(0编辑  收藏  举报