基于PSoC5 DMA的多路输入与ADC自动控制设计

发布时间:2012-4-13 14:59    发布者:eechina
关键词: ADC , DMA , 自动控制
作者:李鹏刚

摘要:本文介绍使用Cypress PSoC5中DMA实现多路输入切换以及ADC采样保存的自动控制,有效减少对CPU时间占用。

概述

在系统设计中,很多时候会采用多路输入,分时切换选通进行ADC转换,可以减少ADC器件的数量。

图1是多路输入选通的结构图。目前很多芯片内部已经含有多路选择器,已经无需外接了。但是对于多路选通的控制,在一般的系统设计中都是需要采用软件代码写寄存器的方式实现。这种方法通常是在ADC转换完成触发中断,软件响应中断,再进行下一路输入的选通切换。所以,至少需要中断响应,压栈,寄存器读写,退栈,退出中断几个阶段。

在这种系统中,如果需要对多路输入做实时采样,CPU就需要频繁响应中断,主程序任务被频繁打断。显而易见,CPU时间额外开销会增加;在一些多任务系统中,还会因为需要有任务堆栈保存和切换[2],影响会更加明显。并且因为软件处理周期等原因,延长硬件切换和转换时间间隔,降低系统工作效率。

Cypress的PSoC5是基于ARM Cortex-M3内核的高性能芯片, 支持0.5~5.5V的宽范围电压输入。更重要的是,PSoC5内含非常丰富的可编程资源UDB(Universal Digital Blocks)[3],以及强大的DMA控制系统,可以非常方便地实现对各种外围资源的读取和控制。

通过PSoC5的DMA进行结构和配置都非常灵活[3],可以通过对UDB,SRAM,ADC等资源的操作,实现多路输入的全自动切换,而不需要CPU响应中断和软件干预,无需占用CPU的时间。

基于PSoC5 DMA的多路输入与ADC自动控制设计.pdf (1.02 MB)
本文地址:https://www.eechina.com/thread-89616-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表