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

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

3天内不再提示

【中科昊芯Start_DSC28034PNT湖人开发板试用体验】--学写一个ADC

开发板试用精选 来源:开发板试用 作者:电子发烧友论坛 2022-11-18 16:21 次阅读
本文来源电子发烧友社区,作者:yjp, 帖子地址:https://bbs.elecfans.com/jishu_2293870_1_1.html

ADC例子如下
首先配置ADC,对ADC进行初始化。
作 用:配置ADC**********************/void ADC_Init(void){ EALLOW; AdcRegs.ADCCTL1.bit.ADCREFSEL = 0; /NT脉冲产生在ADC结果锁定到其结果寄存器之前发生一个周期/ AdcRegs.ADCCTL1.bit.INTPULSEPOS = 1; /中断选择3寄存器/ AdcRegs.INTSEL3N4.bit.INT3E = 1; /每当产生EOC脉冲时,都会产生附加脉冲,而不管是否清除了标记位/ AdcRegs.INTSEL3N4.bit.INT3CONT = 0; /EOC6是ADCINT3的触发器*/ AdcRegs.INTSEL3N4.bit.INT3SEL = 6;AdcRegs.ADCSAMPLEMODE.all = 1;

/*将SOC0设置为样本A0*/
AdcRegs.ADCSOC0CTL.bit.CHSEL = 0;
/*将SOC1设置为样本A1*/
AdcRegs.ADCSOC1CTL.bit.CHSEL = 1;
/*将SOC2设置为样本A2*/
AdcRegs.ADCSOC2CTL.bit.CHSEL = 2;
/*将SOC3设置为样本A3*/
AdcRegs.ADCSOC3CTL.bit.CHSEL = 3;
/*将SOC4设置为样本A4*/
AdcRegs.ADCSOC4CTL.bit.CHSEL = 4;
/*将SOC5设置为样本A6*/
AdcRegs.ADCSOC5CTL.bit.CHSEL = 6;
/*将SOC6设置为样本A7*/
AdcRegs.ADCSOC6CTL.bit.CHSEL = 7;
/*将SOC7设置为样本B1*/
AdcRegs.ADCSOC7CTL.bit.CHSEL = 9;
/*将SOC8设置为样本B2*/
AdcRegs.ADCSOC8CTL.bit.CHSEL = 10;
/*将SOC9设置为样本B3*/
AdcRegs.ADCSOC9CTL.bit.CHSEL = 11;
/*将SOC10设置为样本B4*/
AdcRegs.ADCSOC10CTL.bit.CHSEL = 12;
/*将SOC11设置为样本B6*/
AdcRegs.ADCSOC11CTL.bit.CHSEL = 14;
/*将SOC12设置为样本B7*/
AdcRegs.ADCSOC12CTL.bit.CHSEL = 15;

/*SOCx触发源选择:ADCTRIG5-ePWM1,ADCSOCA*/
AdcRegs.ADCSOC0CTL.bit.TRIGSEL = 0x05;
AdcRegs.ADCSOC1CTL.bit.TRIGSEL = 0x05;
AdcRegs.ADCSOC2CTL.bit.TRIGSEL = 0x05;
AdcRegs.ADCSOC3CTL.bit.TRIGSEL = 0x05;
AdcRegs.ADCSOC4CTL.bit.TRIGSEL = 0x05;
AdcRegs.ADCSOC5CTL.bit.TRIGSEL = 0x05;
AdcRegs.ADCSOC6CTL.bit.TRIGSEL = 0x05;
AdcRegs.ADCSOC7CTL.bit.TRIGSEL = 0x05;
AdcRegs.ADCSOC8CTL.bit.TRIGSEL = 0x05;
AdcRegs.ADCSOC9CTL.bit.TRIGSEL = 0x05;
AdcRegs.ADCSOC10CTL.bit.TRIGSEL = 0x05;
AdcRegs.ADCSOC11CTL.bit.TRIGSEL = 0x05;
AdcRegs.ADCSOC12CTL.bit.TRIGSEL = 0x05;

/*采样窗口长达6个周期(2n+6个时钟周期)*/
AdcRegs.ADCSOC0CTL.bit.ACQPS = 0;
AdcRegs.ADCSOC1CTL.bit.ACQPS = 0;
AdcRegs.ADCSOC2CTL.bit.ACQPS = 0;
AdcRegs.ADCSOC3CTL.bit.ACQPS = 0;
AdcRegs.ADCSOC4CTL.bit.ACQPS = 0;
AdcRegs.ADCSOC5CTL.bit.ACQPS = 0;
AdcRegs.ADCSOC6CTL.bit.ACQPS = 0;
AdcRegs.ADCSOC7CTL.bit.ACQPS = 0;
AdcRegs.ADCSOC8CTL.bit.ACQPS = 0;
AdcRegs.ADCSOC9CTL.bit.ACQPS = 0;
AdcRegs.ADCSOC10CTL.bit.ACQPS = 0;
AdcRegs.ADCSOC11CTL.bit.ACQPS = 0;
AdcRegs.ADCSOC12CTL.bit.ACQPS = 0;

EDIS;
}
ADC的中断服务函数如下Uint32 adcVal[16];/***********************函数名:void INTERRUPT adc_isr() *参 数:无 *返回值:无 *作 用:adc中断服务函数**********************/void INTERRUPT adc_isr(){ while(AdcRegs.ADCCTL1.bit.ADCBSY == 1) { }adcVal[0] = AdcResult.ADCRESULT0;
adcVal[1] = AdcResult.ADCRESULT1;
adcVal[2] = AdcResult.ADCRESULT2;
adcVal[3] = AdcResult.ADCRESULT3;
adcVal[4] = AdcResult.ADCRESULT4;
adcVal[5] = AdcResult.ADCRESULT5;
adcVal[6] = AdcResult.ADCRESULT6;

adcVal[7] = AdcResult.ADCRESULT7;
adcVal[8] = AdcResult.ADCRESULT8;
adcVal[9] = AdcResult.ADCRESULT9;
adcVal[10] = AdcResult.ADCRESULT10;
adcVal[11] = AdcResult.ADCRESULT11;
adcVal[12] = AdcResult.ADCRESULT12;

EALLOW;
/*清除ADCINTFLG寄存器中各自的标志位*/
AdcRegs.ADCINTFLGCLR.bit.ADCINT3 = 0x1;
/* 清除ADCINTOVF寄存器中相应的溢出位*/
AdcRegs.ADCINTOVFCLR.bit.ADCINT3 = 0x1;
/* 中断应答*/
PieCtrlRegs.PIEACK.all = PIEACK_GROUP10;
EDIS;}
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 中科昊芯
    +关注

    关注

    5

    文章

    75

    浏览量

    5099
  • 开发板试用
    +关注

    关注

    3

    文章

    300

    浏览量

    1990
收藏 人收藏

    评论

    相关推荐

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

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

    【爱派 Pro 开发板试用体验】开箱测试

    的各种纸盒包装结实很多。 打开后发现,其中包括开发板和电源。还有口袋里面有螺母,不知道
    发表于 11-20 22:09

    【LuckFox Pico 开发板免费试用】+ 系统烧

    很高兴有机会对LuckFox Pico 开发板试用。收到板子后好好研究了番,找了相关的资料。 LuckFox Pico 开发板基于瑞
    发表于 10-29 20:05

    中科微CSM32RV003绿色开发板免费体验】3.使用流程

    。 总的来说,我对南京中科微公司的CSM32RV003开发板的使用体验感到非常满意。它不仅提供了强大的工具和例程来帮助我快速开发,还为我提供了
    发表于 10-14 00:05

    中科微CSM32RV003绿色开发板免费体验】1.上手

    首先,我要感谢南京中科微电子有限公司提供的CSM32RV003绿色开发板试用机会,这让我有机会深入了解并使用该公司的产品。经过几天的熟悉和实践,我对CSM Studio的基础使用、CSM-ISP
    发表于 10-09 23:21

    中科微CSM32RV003绿色开发板免费体验】了解和认识中科微CSM32RV003绿色开发板

    芯片,最高主频32MHz,最大支持32KB嵌入式FlASH、4KB SRAM和4.5KB NVM,集成ADC和UART、I2C、SPI等通用外设接口。 中科微CSM32RV003绿色开发板接口介绍如下
    发表于 09-22 16:56

    中科微CSM32RV003绿色开发板免费体验】中科微CSM32RV003绿色开发板初次使用测试

    今天拿到中科微CSM32RV003绿色开发板下上电及初次使用的介绍视频及文字介绍, 中科微CSM32RV003绿色开发板
    发表于 09-22 16:35

    中科微CSM32RV003绿色开发板免费体验】中科微CSM32RV003绿色开发板初体验

    封装。## 开发资料: | 中科微CSM32RV003绿色开发板总的来说,是款不错的开发板,值得大家来研究和使用。
    发表于 09-22 16:25

    中科微CSM32RV003绿色开发板免费体验】开发板使用2 CJlink 调试器

    接上文 【中科微CSM32RV003绿色开发板免费体验】开发板使用1 南京中科微公司为方便调试还热心提供CJlink 调试器(V1.2)
    发表于 09-21 05:32

    中科微CSM32RV003绿色开发板免费体验】开箱+资料准备

    32kB 的嵌入式 FLASH,4.5kB 的 NVM,至少能擦写 100 000 次,配置还行 开箱 简单的袋子,里面装着开发板 板子小巧精致 详细信息 ● 内置 RISC-V
    发表于 09-17 22:15

    Start_DSC28034PNT开发板免费体验】Start_DSC28034PNT开发板RS232 通信

    Start_DSC28034PNT开发板| 官网链接 [start28034
    发表于 09-12 12:34

    Start_DSC28034PNT开发板免费体验】Start_DSC28034PNT开发板接口及跳线的使用

    电阻 RG 的输出接到 AIN0B 模拟 口,可进行 ADC 试验 Start_DSC28034PNT开发板为每
    发表于 09-12 12:28

    Start_DSC28034PNT开发板免费体验】Start_DSC28034PNT开发板收到后初次测试

    存储芯片,一个是IIC协议,一个是SPI协议的。右侧就是电机接口和排拓展接口,还有USB转串口烧录功能。
    发表于 09-12 12:18

    Start_DSC28034PNT开发板免费体验】Start_DSC28034PNT开发板上电测试

    Start_DSC28034PNT开发板| 官网链接 [start28034
    发表于 09-12 12:09

    试用南京中科微电子CSM32RV003开发板

    非常迅速头天接收信息,第二天雨中快递送到南京中科微电子有限公司CSM32RV003开发板(TSSOP20)封装的RISC-V处理器芯片。迷你小开发板,连上Type-C电缆线上电正常,
    发表于 09-09 19:01