历史上的今天
返回首页

历史上的今天

今天是:2025年02月15日(星期六)

2019年02月15日 | STM32F的利用HAL库ADC转换DMA方式多通道采样调试总结

2019-02-15 来源:eefocus

1,规则模式下,用户内存缓冲区的数据宽度需要和DMA设置的数据宽度一致,如下:


typedef struct rt_device_hwadc 

struct rt_device parent; 
const struct rt_hwadc_ops *ops; 
uint8_t flag_adc_convert_complete; 
__IO uint16_t adc_converted_value[TOTAL_CHANNELS];

}rt_device_hwadc_t;

    hdma_adcx.Instance = ADC_DMAx_CHANNELn;
    hdma_adcx.Init.Direction = DMA_PERIPH_TO_MEMORY;
    hdma_adcx.Init.PeriphInc = DMA_PINC_DISABLE;
    hdma_adcx.Init.MemInc = DMA_MINC_ENABLE;
    hdma_adcx.Init.PeriphDataAlignment =  DMA_PDATAALIGN_HALFWORD;
    hdma_adcx.Init.MemDataAlignment = DMA_MDATAALIGN_HALFWORD;
    hdma_adcx.Init.Mode = DMA_CIRCULAR;
    hdma_adcx.Init.Priority = DMA_PRIORITY_HIGH;
    HAL_DMA_Init(&hdma_adcx);


    __HAL_LINKDMA(hadc,DMA_Handle,hdma_adcx);123456789101112


2, 启动转换时连接DMA的通道数


HAL_ADC_Start_DMA(&(hwadc->adcHandle), (uint32_t *)buffer, TOTAL_CHANNELS) 
其中buffer的数据类型是uint16_t*.


3,多通道顺序参数rank,


在配置rank时,如果配置的rank在开启的通道中不连续,DMA无法将转换的数据传到对应的缓冲区,也就和无法读取到该通道的数据。


推荐阅读

史海拾趣

Epitex Inc公司的发展小趣事

Epitex非常重视企业文化的建设和团队精神的培育。他们倡导“创新、协作、务实、共赢”的价值观,鼓励员工积极创新、勇于挑战。同时,Epitex还注重员工关怀和福利待遇的提升,为员工提供良好的工作环境和发展空间。

在团队建设方面,Epitex注重培养员工的团队协作能力和沟通能力。他们定期组织团队活动和培训项目,增强团队的凝聚力和向心力。这种积极向上的企业文化和高效的团队协作为Epitex的持续发展提供了有力保障。

Esc Electronics Corp公司的发展小趣事

Esc Electronics Corp(简称Esc)在成立的初期,以其独特的技术突破在电子行业中崭露头角。公司研发出一款高效能、低成本的电子元件,成功吸引了市场的注意。随着产品的不断迭代和技术的持续创新,Esc的产品线逐渐丰富,市场份额也逐步扩大。公司凭借技术优势和敏锐的市场洞察力,成功开拓了多个新的市场领域。

Bel Fuse公司的发展小趣事

进入XXXX年代,电子行业经历了深刻的变革,新兴技术的涌现给传统企业带来了挑战。Bel Fuse也面临着市场需求的变化和竞争压力的增加。为了应对这些变革,公司进行了战略调整,将重点放在了连接器、电源、磁性元件和电路保护产品等领域。通过加大研发力度和市场推广,Bel Fuse成功实现了产品升级和市场拓展。

Discrete Semiconductor Industries公司的发展小趣事

“全球晶联”是Discrete Semiconductor Industries公司中一家注重国际化合作的代表。该公司积极与国际知名企业开展技术合作和市场拓展,通过引进先进的技术和管理经验,不断提升自身的竞争力。同时,全球晶联还积极开拓国际市场,参加各种国际展览和交流活动,加强与国际客户的沟通和合作。这种国际化合作的发展模式使得全球晶联在国际市场上取得了显著的成绩,成为了全球半导体行业的重要参与者之一。

Engineered Components Co公司的发展小趣事

Engineered Components Co(ECC)公司成立于XXXX年,由几位在电子制造领域有丰富经验的工程师共同创立。他们看到了电子行业中对于高质量、高精度电子元件的迫切需求,因此决定专注于此领域。ECC在创立初期就确立了以客户需求为导向,以技术创新为驱动的发展战略。他们通过自主研发,生产出了第一批高精度电子连接器,并在市场上获得了良好的反响。

Advanced Microelectronic Products Inc公司的发展小趣事

在追求经济效益的同时,AMP公司也积极履行社会责任,致力于实现可持续发展。公司注重环保和节能减排,采用先进的生产工艺和设备,减少对环境的影响。此外,公司还积极参与社会公益事业,为社会发展和进步贡献力量。这些举措不仅提升了AMP公司的社会形象,也为其赢得了更多消费者的支持和信任。

请注意,以上故事均为虚构内容,旨在展示一个假设的电子行业公司在发展过程中可能遇到的情境和策略。实际公司的发展历程和细节将因公司而异,并受到市场环境、技术变革、政策调整等多种因素的影响。

问答坊 | AI 解惑

《社区大讲堂》DO-254中的高设计可靠性的逻辑综合(七)--支持逻辑等效型检查

设计可靠性在DO-254的A级和B级设计中尤其重要。. 附录B中对有这样的描述:“当设计可靠性级别增加后, 设计方法需要能够验证被测设计满足安全性要求, 这些要求有可能有重合的部分,需要有层次化的设计可靠性设计方法。 在任何设计过程中,如 ...…

查看全部问答>

关于WINCE5.0 驱动开发的问题

我是按照这个网页一步一步作的:http://www.pcwiki.net/ht/view/cps-4/id-20978 前面一切都调试成功,作到上面页面的Target | Attach步后,,出现“download Runtime Image to CE Device \"  然后进度条就一直没有变,请问这个下载很 ...…

查看全部问答>

switching module processor

谁能详细的介绍一下SMP which is in SM.体系结构,功能等等。谢谢 。…

查看全部问答>

RegReplaceKey的疑惑?

这是WINCE帮助文档上的介绍: LONG RegReplaceKey(   HKEY hKey,   LPCTSTR lpSubKey,   LPCTSTR lpNewFile,   LPCTSTR lpOldFile ); hKey [in] The hKey parameter must be HKEY_LOCAL_MACHINE ...…

查看全部问答>

想学RAM,给点意见.

本人是计算机专业毕业,对java,php,delphi都有相当的工作经验,学过一定时间的伟福,但它的接口没有RAM丰富,现在想学一下RAM,请问一下RAM是在windows还是linux下运行,还有就是调度软件用什么,要不要仿真器.…

查看全部问答>

M0 新唐CM0+MDK-ARM入门开发过程简介之平台的建立

一  平台资源下载   1.Mdk4.12的下载因为是最新发布的芯片所以现在只有mdk4.11和4.12支持本系列芯片。   下载地址 在http://www.mcu123.com/news/Soft/ShowSoftDown.asp?UrlID=3&SoftID=529上右击“下载地址:” ...…

查看全部问答>

tftp下载的内核死掉

死掉情况1(这种情况可以解释成TFTP传输过程误码):Bytes transferred = 2641544 (284e88 hex)                       &nb ...…

查看全部问答>

5502-300MHZ

5502最大可接收多高频率的信号?  MCBSP/GPIO。。。最高的频率是多少?   108MHZ的信号能直接接么,不考虑CPU有没有时间工作…

查看全部问答>

3G模块已获得私有IP,如何进行UDP通信

3G模块:EM770w 直接用AT命令控制,已实现PPP连接(因为获得网关分配的私有IP,我认为,不知道对否)。在这种情况下如何进行UDP通信。因为打算把EM770W放在一块开发板上,所以希望有高手能提供一些关于AT命令或者更底层的意见。 这个EM770W完全不 ...…

查看全部问答>