历史上的今天
返回首页

历史上的今天

今天是:2025年06月17日(星期二)

正在发生

2019年06月17日 | STM32使用TIM触发ADC,CUBEMX配置

2019-06-17 来源:eefocus

       上一篇博客讲到,要采集准确的电机电流值,需要在PWM发波的高电平中间,或中间靠后进行ADC采样



          这样可以确定采样出来的电流是真实的电机电流,应该是会比平均电流大写的。因为我这边PWM产生是用TIM1的互补PWM通道,而TIM1又是由TIM3的COM事件来触发的,现在我需要有另外一个定时器来产生一个跟TIM1周期相同,但是PWM的值是TIM1的一半的波形,这里我选择的是TIM15,因此需要保证TIM15的CCR寄存器的值为TIM1的一半,因此,可以直接在TIM1的溢出中断的回调函数中更新TIM15的CCR寄存器的值:



       接下来就是要保证TIM1与TIM15同步了,因为TIM1是TIM3(霍尔定时器)的从定时器,那么,将TIM15也配置为TIM3的从定时器就可以了,由寄存器参考手册可知,TIM15的触发源是ITR1:



然后将CUBEMX的触发源选择为ITR1,并且选择复位模式,选择内部时钟:



在配置好触发源之后,我们希望的是使用TIM15的PWM结束的时候,这样讲有些歧义吧,换个说法就是咋TIM15的计数值CNT达到CCR的值的之后,触发ADC开启采集,那也就是说TIM15需要开启主从模式,并且需要发送一个OC1REF信号(因为使用的是1通道):



        在这里需要说明一下这个OC1REF信号的产生必须是在PWM模式下的,最开始我也不清楚,连同公司的软件大佬一起搞这个问题搞了两天,依旧是发送不出来这个OC1REF信号,最后还是看到了一篇博客:http://blog.sina.com.cn/s/blog_155ff95b20102wwen.html,里面最后一段话有提到这个:

我之前没有配置PWM模式的CUBEMX是这样的:



一个原因是因为我不知道这个姿势点,另一个原因是因为确实我的引脚资源不够用了,已经没有引脚给我配置PWM了,后来看了那篇博客之后,将TIM15配置改为:



当然理论上,配置成Output Compare No Output模式,然后TIM15的TRGO信号使用OC1信号也是可以的,这个我没有测试。也是参考了那篇博客,我将ADC改为了上升沿触发,而要使用上升沿触发,那么只需要将TIM15改为PWM2模式就可以了:



          接下来就是ADC那边的配置了,因为我们是要在PWM高电平的中间采集一次,下一次PWM再采集下一次,因此需要将ADC配置为单次采集,至于DMA配置的话,正常模式与循环模式都是可以的,只不过是多一句重新启动的问题,我采用的是DMA循环模式,而触发信号就选择TIM15的处罚信号,上升沿触发,配置如下:

实际用示波器的电流如图:



方框内为发波时的电流波形,我现在把负载调小了些,所以电流小了些。


实际STM32读出来的电流波形如图:(使用了串口打印出来,每个PWM周期采集一次,即66us采集一次)


推荐阅读

史海拾趣

上海晶岳(AFSEMI)公司的发展小趣事

为了保持技术领先和市场竞争力,晶岳电子一直注重研发团队的建设。目前,公司在上海、深圳及台湾均建有成熟的产品研发团队,核心功率器件及集成电路设计人员均拥有15年以上的设计研发经验。这些优秀的研发人员不仅为公司带来了源源不断的技术创新,也确保了公司在激烈的市场竞争中始终保持领先地位。此外,晶岳电子还积极与高校和研究机构合作,共同开展前沿技术的研发和应用。

Fischer Elektronik公司的发展小趣事

为了更好地服务全球客户,Fischer Elektronik积极实施国际化战略。公司在全球范围内建立了多个生产基地和销售网络,以确保能够快速响应市场需求并提供高质量的产品和服务。通过多年的努力,Fischer Elektronik已经成功进入了众多国际市场,并与众多知名企业建立了长期合作关系。这些合作不仅提升了公司的品牌知名度,也为其带来了更多的商业机会和发展空间。

HTSEMI( Jin Yu Semiconductor )公司的发展小趣事

随着技术实力的不断提升,金宇半导体开始积极拓展国内外市场。公司制定了详细的市场拓展计划,通过参加国际电子展、举办技术研讨会等方式,加强与客户的沟通和交流。同时,金宇半导体还加大了品牌建设的力度,通过广告宣传、媒体合作等多种方式提升品牌知名度和美誉度。这些努力使得金宇半导体的市场份额逐年攀升,品牌影响力也日益增强。

EICHHOFF公司的发展小趣事

随着全球化趋势的加强,EICHHOFF公司意识到必须加快国际化步伐以拓展更广阔的市场。XX年代初,公司开始在欧洲其他国家设立销售和服务机构,并逐步将业务拓展到亚洲和北美地区。为了更好地适应不同地区的市场需求和文化差异,EICHHOFF公司积极招聘本地人才,并加强与当地企业和机构的合作。

通过实施国际化战略,EICHHOFF公司的品牌影响力得到了显著提升,市场份额也不断扩大。同时,公司也积累了丰富的国际运营经验和管理经验,为未来的发展奠定了坚实基础。

Brainboxes公司的发展小趣事

Brainboxes拥有一流的内部制造设施和全球供应链,这使得公司在产品研发和生产方面具有极大的灵活性。内部制造设施保证了产品的高品质和快速交付,而全球供应链则确保了公司能够及时获取所需的原材料和零部件。这种高效的生产模式使得Brainboxes能够迅速响应市场需求,为客户提供优质的产品和服务。

聚辰(Giantec)公司的发展小趣事

港源公司在国内外市场的拓展上取得了显著成就。公司在全国设有多个销售公司和分支机构,并在国外如日本、韩国、马来西亚、巴西等地设立了分公司和销售总代理,形成了完善的销售网络。这种全球化布局不仅使港源公司能够更好地服务全球客户,还为公司带来了更多的国际合作机会和市场资源。通过参加国际展览会等方式,港源公司全方位地展示了自身的研发、制造、销售和服务实力,进一步提升了品牌知名度和市场影响力。

问答坊 | AI 解惑

买数码相机的几大误区

[][]买数码相机的几大误区  高像素等于高品质照片?     许多初次购买数码相机的用户都会把像素做为考虑的首要因素,在他们看来像素是判定数码相机品质高低的基础,似乎高像素的数码相机就必然会得到高品质的拍摄效果,事实上像素和品质之 ...…

查看全部问答>

高性能的廉价锂电池充电器电路

这个电路是原来给别人设计的,成本很低,充电效果很好,供一节锂电池充电使用。近几天看到很多朋友制作的简易充电器,效果不尽人意,不是电流限制不好就是电压不准!而这个电路是由一个抵压差恒流电路与一个由TL431组成的抵压差线形稳压电源的结合 ...…

查看全部问答>

恩智浦LPCXpresso之LPC1343开发板申请,成功获得LPC2148之PCB后。

成功获得LPC2148之PCB后,希望有机会接触到LPC1xxx系列。在上次的《lpc2148使用问题探讨:“新版主chenzhufly LPC2000 PCB 大放送”成果研究专用贴》中与论坛的好友们分享与交流了个人的使用经验,同时也附带的表述个人对LPC22xx与LPC21xx使用的不同 ...…

查看全部问答>

香港中文大学-ADS仿真电路

香港中文大学-ADS仿真电路…

查看全部问答>

总线选型请教

我们最近要为工厂开发一设备,每个车间大概有500以上节点,全厂最多可能有5000个节点左右。 节点和服务器通讯比较简单没有大量数据传输。 这种情况用485还是用CAN? 485和CAN成本大概差多少? 谢谢…

查看全部问答>

50分求单片机入门知识

我本来是从事web开发的,但是想想后决定选择单片机,希望大家能给过入门知识…

查看全部问答>

eZ430-RF2500无线通信模块试用申请

eZ430-RF2500无线通信模块试用申请…

查看全部问答>

求推荐功率分配芯片(power spliter)

将天线下来的射频信号等分成多路。射频范围为800M-1GHz之间哪些公司有这样的芯片?市场比较容易买到的。…

查看全部问答>

8位宽、16深度同步FIFO的设计

(1)ALU译码器(2)用LFSR设计一个20分频的简单分频器;(3)FSM设计,设计“101001”的序列检测器;(4)8位宽、16深度同步FIFO的设计4个入门级问题,告诉我编写的代码就OK了。Thx.…

查看全部问答>

dspic33fi128gp306 很多io口悬空会烧坏单片机吗?

最近用的别人设计的一个原理图,单片机dspic33fi128gp306 ,好多io口都悬空了。因为时间关系没有进行修改。自己做了个pcb,发现除开最开始的几个板子之一是正常的。其他板子在用icd3烧写程序的时候都是正常的,然后上电运行。立马短路了,vss和vdd ...…

查看全部问答>