[PIC®/AVR® MCU]

【CuriosityNano测评报告】+ AVR64DD32的ADC测试

[复制链接]
310|0
手机看帖
扫描二维码
随时随地手机跟帖
gaoyang9992006|  楼主 | 2022-11-16 17:27 | 显示全部楼层 |阅读模式
本帖最后由 gaoyang9992006 于 2022-11-16 17:29 编辑

首先搞清楚ADC通道映射到IO上的序列
124716374a9b7bd9f4.png
比如我们使用PA2引脚,查看芯片手册,发现该引脚对应AIN22通道
新建工程,在MCC里启用如下外设功能,并配置PA2引脚为ADC0上的通道
913016374aa1064530.png
如果不看手册,通过这里也可以查看到所在的通道
789396374aa9bd7ef1.png
然后我们要用串口输出,串口开发板自带的使用了UART0
609836374ab7f5b5fa.png
另外需要在IO配置里启用他们
720606374aba2edf29.png
如果ADC配置里选择了左对齐,应注意结果,如果想要保留所有数据,则需要右移4位即可,关闭这个功能,直接读即可

968876374abcd7e249.png
参考电压选择VDD即可。
603976374ac7cdb3d3.png
之后我们生成代码,并进入main.c完成测量工作
#include "mcc_generated_files/system/system.h"
#include "mcc_generated_files/timer/../timer/delay.h"
/*
    Main application
*/

int main(void)
{
    SYSTEM_Initialize();


    while(1)
    {
        printf("Hello world !\n");
        DELAY_milliseconds(2000);
        printf("%d\n",ADC0_GetConversion(ADC_MUXPOS_AIN22_gc)>>4);//设置了左对齐,那么咱数据就右移回来
        DELAY_milliseconds(2000);
    }   
}
这里唯一不爽的是一定要使用头文件中的通道宏,如果能在MCC里就实现用户自定义的映射就好了,哈哈。
接下来用导线链接PA2到GND,和到VDD测试。
391036374ad064498f.png
非常的好,接到GND就是0,接到VDD就是满刻度4095


使用特权

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

本版积分规则