[PIC®/AVR®/dsPIC®产品] 【CuriosityNano测评报告】+ AVR64DD32的ADC测试

[复制链接]
1553|1
 楼主| gaoyang9992006 发表于 2022-11-16 17:27 | 显示全部楼层 |阅读模式
本帖最后由 gaoyang9992006 于 2022-11-16 17:29 编辑

首先搞清楚ADC通道映射到IO上的序列

比如我们使用PA2引脚,查看芯片手册,发现该引脚对应AIN22通道
新建工程,在MCC里启用如下外设功能,并配置PA2引脚为ADC0上的通道

如果不看手册,通过这里也可以查看到所在的通道

然后我们要用串口输出,串口开发板自带的使用了UART0

另外需要在IO配置里启用他们

如果ADC配置里选择了左对齐,应注意结果,如果想要保留所有数据,则需要右移4位即可,关闭这个功能,直接读即可


参考电压选择VDD即可。

之后我们生成代码,并进入main.c完成测量工作
  1. #include "mcc_generated_files/system/system.h"
  2. #include "mcc_generated_files/timer/../timer/delay.h"
  3. /*
  4.     Main application
  5. */

  6. int main(void)
  7. {
  8.     SYSTEM_Initialize();


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

非常的好,接到GND就是0,接到VDD就是满刻度4095


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
geraldbetty 发表于 2023-7-12 17:41 | 显示全部楼层
提供了一个基本的ADC测试框架。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:如果你觉得我的分享或者答复还可以,请给我点赞,谢谢。

2052

主题

16403

帖子

222

粉丝
快速回复 在线客服 返回列表 返回顶部