0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【南京中科微CSM32RV20开发板试用体验】+3.ADC基本功能

开发板试用精选 来源:开发板试用 作者:电子发烧友论坛 2022-11-30 11:07 次阅读
本文来源电子发烧友社区,作者:川楠, 帖子地址:https://bbs.elecfans.com/jishu_2245153_1_1.html

前言

大家好。
首先,感谢南京中科微提供的CSM32RV20开发板,同时也感谢发烧友提供的试用平台。
这次测试的是ADC外设,测试目标:使用ADC,采集电位器上的电压变化。

代码编程
还是一样的,按照官方的教程,建立DEMO程序,查看main.c文件。
poYBAGHrWdaAOl4oAAKLvURcnOA160.png

查看代码,官方初始化用的是PA4引脚作为模拟输入。
pYYBAGHrWdiAaTWNAAKlfBk3YIU503.png

然后使能一下串口,将ADC采集的数据通过串口发送出来。

具体代码如下:


  1. int main(void)
  2. {
  3. ///----System Init ---------------------------------------------------------------------------------------------
  4. CLIC_Init();//系统中断配置
  5. System_Clock_Init();//系统时钟初始化
  6. ///---- Chapter 11 ADC Test Init -------------------------------------------------------------------------------------
  7. uint32_t adc_result;
  8. uint32_t adc_pack[16];
  9. uint32_t adc_sum;
  10. uint32_t adc_count;
  11. uint32_t adc_avr;
  12. uint32_t voltage_avr;
  13. ADC_Init_case1();//内部基准,测PA4
  14. UART_Init_case1(UART1);//非中断模式
  15. ee_printf("nHello CSM32RV20:");
  16. while(1)
  17. {
  18. Delay32M_ms(500);
  19. adc_result = ADC_Conversion();//适用于非中断模式
  20. adc_pack[(adc_count++)&0xf] = adc_result;
  21. adc_sum=0;
  22. for(uint8_t i=0;i<16;i++)
  23. {
  24. adc_sum += adc_pack[i];
  25. }
  26. adc_avr = adc_sum/16;
  27. printf("val:%davr:%d %d.%dmV %d.%dmVrn",adc_result,adc_avr,(adc_result*4*12000/32768)/10,(adc_result*4*12000/32768)%10,(adc_avr*4*12000/32768)/10,(adc_avr*4*12000/32768)%10);
  28. }
  29. return 0;
  30. }
复制代码



程序编译下载,将电位器接到PA4引脚,我的接法如下:
pYYBAGHrWdmAPgUIAALrL3oWbqo036.png


然后设备通电,串口显示内容:
电路板上开关打到5V的位置
poYBAGHrWdqAJzY8AABKcLDLv28498.png

将电路板的电源打到3.3V
poYBAGHrWduAJJXSAABtdj4o__E609.png

通过分析源码,第一组数据是当前ADC数值,AVR16次数据平均,然后是根据当前ADC转化为电压值,最后一组是16ADC平均值转化的电压值。
仔细阅读数据手册,输入电压缩小4倍,然后送给ADC采集,基准电压采用的是1.214VADC的分辨率为15位,最大位32768
pYYBAGHrWd2AM3qxAAD6OaiNtKk274.png

这样,我们反过来验算一下,输入3.3V,对应的ADC是多少。
(3.3/4)/1.214*32786=22268
基本上与22532差距不大。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 南京中科微
    +关注

    关注

    0

    文章

    60

    浏览量

    730
  • CSM32RV20
    +关注

    关注

    0

    文章

    40

    浏览量

    204
收藏 人收藏

    评论

    相关推荐

    【龙芯2K0300蜂鸟试用】龙芯2K0300蜂鸟开发板引脚定义及体验开发板

    今天为大家隆重介绍这块龙芯2K0300蜂鸟开发板,为你详细介绍开发板引脚定义及为大家做初步的开发板体验。 先介绍这块龙芯2K0300蜂鸟开发板: 龙芯
    发表于 09-19 18:54

    点击参与米尔NXP i.MX 93开发板有奖试用

    米尔与NXP合作发布的新品基于NXPi.MX93应用处理器的MYD-LMX9X开发板免费试用活动来啦~~米尔提供了3块价值678元的MYD-LMX9X开发板发起
    的头像 发表于 06-13 08:02 438次阅读
    点击参与米尔NXP i.MX 93<b class='flag-5'>开发板</b>有奖<b class='flag-5'>试用</b>

    免费!NXP i.MX 93开发板有奖试用

    米尔与NXP合作发布的新品基于NXPi.MX93应用处理器的MYD-LMX9X开发板免费试用活动来啦~~米尔提供了2块价值678
    的头像 发表于 05-23 08:01 635次阅读
    免费!NXP i.MX 93<b class='flag-5'>开发板</b>有奖<b class='flag-5'>试用</b>

    201型RV1126开发板开箱视频

    电路开发板
    易百纳
    发布于 :2024年04月12日 11:09:40

    香橙派发布首款RISC-V开发板OrangePi RV

    2024年3月,香橙派在全球开发者会议上发布了其首款基于RISC-V开发的OrangePi RV主板。这款开发板拥有四核RISC-V U74
    的头像 发表于 04-01 14:47 935次阅读

    fpga开发板是什么?fpga开发板有哪些?

    FPGA开发板是一种基于FPGA(现场可编程门阵列)技术的开发平台,它允许工程师通过编程来定义和配置FPGA芯片上的逻辑电路,以实现各种数字电路和逻辑功能。FPGA开发板通常包括FPG
    的头像 发表于 03-14 18:20 1735次阅读

    fpga开发板与linux开发板区别

    (Field-Programmable Gate Array)是一种可编程逻辑器件,它可以通过编程改变硬件逻辑电路的功能和结构。FPGA采用了可编程的门极,可以根据需要重新配置内部电路,从而实现不同的功能和逻辑关系。而Linux开发板
    的头像 发表于 02-01 17:09 2005次阅读

    rv1126和rk3568对比

    视频编解码。而RK3568开发板创龙科技旗下工业开发板,基于瑞芯RK3568J/RK3568B2处理器设计,四核ARM Cortex-A55,每核主频高达1.8GHz/2.0GHz。 rv
    的头像 发表于 01-23 18:05 1w次阅读
    <b class='flag-5'>rv</b>1126和rk3568对比

    51单片机开发板的主要功能 51单片机开发板能做什么

    51单片机开发板是一种基于8051系列单片机芯片的开发板,具有丰富的功能和广泛的应用。下面将详细介绍51单片机开发板的主要功能以及能够实现的
    的头像 发表于 01-23 15:52 3296次阅读

    【核桃派1B 开发板试用体验】+系统安装与基本功能测试篇

    适配器来供电,并以厂家配备的USB线来连接适配器及开发板的Type-C接口。比较有意思的是,在这条电源线上还配有一个小型的电源开关,在电源操控时方便了许多。 图5电源供电 核桃派所提供的视频接口为
    发表于 01-02 09:47

    飞凌OK113i-C开发板试用初体验

    在收到新的开发板并准备开始我们的开发之旅之前,我们还需要进行一些必要的准备工作,这些准备工作包括开发环境搭建、内核编译、kernel配置等,以确保我们的开发板能够正常运行并为我们提供所
    的头像 发表于 12-16 15:52 763次阅读
    飞凌OK113i-C<b class='flag-5'>开发板</b><b class='flag-5'>试用</b>初体验

    【新品体验】国产FPGA+OMAPL138开发板免费试用

    开发板基于德州仪器的OMAP-L138(定点/浮点DSP C674x+ARM9)与国产中科亿海FPGA EO6HL45LL的《DSP+ARM+FPGA三核评估套件》,通过EMIF、SPI或UPP
    发表于 12-07 10:26

    基于瑞芯 RV1103 芯片,微型 Linux 开发板LuckFox Pico Plus开发实践

    引脚的排列关系见图3所示。 图3 引脚排列顺序 >>>点此查看全文 2.使用ADB命令访问开发板 LuckFox Pico 是一款基于瑞芯
    发表于 11-30 14:10

    【ELF 1开发板试用】+常用接口功能测试

    时间 设置系统时间到 RTC 芯片,再读取 RTC时间的操作如图8所示: 图8 更新RTC时间 3.温度检测 ELF1 开发板提供CPU的结温测试功能,其检测操作如图9所示。 图9温度检测 其中
    发表于 11-21 23:57

    【LuckFox Pico Plus开发板免费试用】RKNN模型推理测试

    感谢电子发烧友和幸狐科技提供了此次LuckFox Pico Plus开发板试用机会。 LuckFox Pico 是一款基于瑞芯 RV1103 芯片具有高性价比的微型 Linux
    发表于 11-11 16:51