完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,
当我使用较旧的SPC5 Studio版本处理SPC56EL时,仅当内部计数器溢出时才调用溢出回调。这对于检测无法测量的太低频率是完美的。 在SPC564B和SPC5 Studio V3.7上,与旧版本相比,驱动程序被重新加工,并且现在在输入上检测到边缘时始终调用过低回调。 你能否确认这个bug或新行为...... 第二个问题是频率范围:我必须在1Hz分辨率的不同信道上测量4Hz和5kHz之间的频率。由于eMIOS时钟对于所有通道都是相同的,我怎么能实现呢? 我实际上使用的是120MHz / 2/256 = 234375 Hz的时钟。它允许低至3.5Hz的周期测量,具有高精度。但是在5kHz时,计数器达到234375/5000 = 46,这相当于234375/46 = 5095Hz,远离5000Hz。 为了能够在其他微处理器上达到1Hz的分辨率,我通常有两种方法。边缘检测仅适用于低频。对于高频,我使用的计时器在另一个计时器确定的固定时间段内对所有边进行计数。 以上来自于谷歌翻译 以下为原文 Hello, when I was working on SPC56EL with older SPC5 Studio versions, the overflow callback was called only when the internal counter was overflowing. This was perfect to detect too low frequency which can't be measured. On SPC564B and SPC5 Studio V3.7, the driver is reworked compared to older versions and the overlow callback is now called all the time, when edges are detected on the input. Can you please confirm this bug or new behaviour... Second problem is the frequency range: I have to measure frequencies between 4Hz and 5kHz on different channels with 1Hz resolution. Since the eMIOS clock is the same for all channel, how could I achieve that? I actually use a clock of 120MHz/2/256=234375 Hz. It allows period measurement down to 3.5Hz with high precision. But at 5kHz, the counter reaches 234375 / 5000 = 46 and this corresponds to 234375 / 46 = 5095 Hz which is far away from 5000Hz. To be able to reach 1Hz resolution on other micros, I usually have two methods. The edge detection for low frequencies only. For high frequencies, I'm using a timer that counts all edges during a fix period of time determined by another timer. |
|
相关推荐
6个回答
|
|
你好Aurelien,
该驱动程序来自SPC5-HAL sourceforge存储库: https://sourceforge.net/projects/spc5-hal/?source=directory 在SPC5STudio的不同版本中,我们正在推出一个SVN标签。 eMIOS驱动程序有一些差异 对于您的问题,我正在与eMIOS专家核实。 最好的祝福 二万 以上来自于谷歌翻译 以下为原文 Hello Aurelien , the driver is coming from SPC5-HAL sourceforge repository : https://sourceforge.net/projects/spc5-hal/?source=directory within different version of SPC5STudio, we are putting a SVN Tags. there are some few differences on eMIOS drivers for your problem, i am checking with eMIOS experts. Best regards Erwan |
|
|
|
你好,
来自eMIOS专家的任何消息? HAL在我的2发展之间发生了很大的变化,但事实是,在''之前'版本中,溢出回调是功能性的。 以上来自于谷歌翻译 以下为原文 Hello, any news from eMIOS experts? The HAL changed a lot between my 2 developpement but the fact is that with the ''previous'' version the overflow callback was functionnal. |
|
|
|
你好Aurelien,
我很抱歉延误了 你能增加eMIOS的eTimerX优先级吗? 你应该检查icu_lld.c / icu_lld.h。 2015年2次修订 修订:1142 作者:lzambrano 日期:mercredi 23 septembre 2015 11:11:22 信息: 修改故障单ER328822的修改。 ---- 修订版:890 作者:lzambrano 日期:jeudi 12février 2015 15:20:43 信息: 修改Velvety时钟树并添加对Velvety的eTimer支持 最好的祝福 二万 以上来自于谷歌翻译 以下为原文 Hello Aurelien , i am back sorry for the delay could you increase eTimerX priority for eMIOS ? you should check icu_lld.c / icu_lld.h. 2 revisions in 2015 Revision: 1142 Author: lzambrano Date: mercredi 23 septembre 2015 11:11:22 Message: Modifications to fix the ticket ER328822. ---- Revision: 890 Author: lzambrano Date: jeudi 12 février 2015 15:20:43 Message: Modify the Velvety clock tree and add the eTimer support for Velvety Best Regards Erwan |
|
|
|
对不起Aurelien,
我在EL Side而不是B Side。 对于B设备, for icu_lld。* 2015年没有更新 你能给我们你的配置吗? (如果你想通过电子邮件) 最好的祝福 二万 以上来自于谷歌翻译 以下为原文 Sorry Aurelien , I was on EL Side not B Side. for B Devices, for icu_lld.* there is no update in 2015 could you give us your configuration ? (by email if you want) Best Regards Erwan |
|
|
|
你好Aurelien,
您可以使用输入期间测量。 (G型通道和H型通道) (参考手册) 你试过这个吗? 最好的祝福 二万 以上来自于谷歌翻译 以下为原文 Hello Aurelien , You can use Input Period Measurement. (Type G Channel and Type H channel) (Cf reference manual) Did you try this ? Best regards Erwan |
|
|
|
你好,Erwan,
我在11月9日通过邮件发送了我的configuration.xml。我的所有频率输入都映射到IPM兼容引脚(G和H型)。我确认溢出回调正在EL上运行,而在B上行为发生了变化。 关于我的第二个问题,频率范围,就像我在论坛中提到的,我实际上使用120MHz / 2/256 = 234375 Hz的时钟来为eMIOS计时。它允许低至3.5Hz的周期测量,具有高精度。但是在5kHz时,计数器达到234375/5000 = 46,这相当于234375/46 = 5095Hz,距离5000Hz是95Hz。 为了能够在其他微处理器上达到1Hz的分辨率,我通常有3种方法。 - 低频率:基于边缘检测(IPM使用的边缘)计算边缘之间的时间。 - 高频率(> 1kHz):在另一个定时器确定的固定时间段内对所有边缘进行计数的定时器。 - 通用方法:混合使用,计算16个周期的时间。 如何使用IPM输入实现最后一种方法? 如果不可能,我会尝试将eMIOS时钟增加到60MHz,允许测量高于60000000/65535 = 916的频率。 我希望使用我的方法更灵活。 感谢您的帮助! 以上来自于谷歌翻译 以下为原文 Hello Erwan, I sent you my configuration.xml on the 9th of Nov. by mail. All my freq inputs are mapped to IPM compatible pins (type G and H). I confirm that the overflow callback was working on EL and that on B the behavior changed. Regarding my second problem, the frequency range, like I mentioned in the forum, I actually use a clock of 120MHz/2/256=234375 Hz to clock both eMIOS. It allows period measurement down to 3.5Hz with high precision. But at 5kHz, the counter reaches 234375 / 5000 = 46 and this corresponds to 234375 / 46 = 5095 Hz which is 95 Hz away from 5000Hz. To be able to reach 1Hz resolution on other micros, I usually have 3 methods. - Low freq: counting the time between edges based on edge detection (the one used by IPM). - High freq (>1kHz): a timer that counts all edges during a fix period of time determined by another timer. - Universal method: a mix of that, it counts the time of 16 periods. How could I achieve this last method using IPM inputs? If it’s not possible I will try to increase the eMIOS clock to 60MHz allowing to measure frequency higher than 60000000 / 65535 = 916 only… I would like to be more flexible using my methods. Thank you for helping! |
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2719 浏览 1 评论
3236 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1807 浏览 1 评论
3645 浏览 6 评论
6033 浏览 21 评论
1334浏览 4评论
208浏览 3评论
196浏览 3评论
对H747I-DISCO写程序时将CN2的st-link复用为usart1,再次烧录时无法检测到stlink怎么解决?
350浏览 2评论
STM32G474RE芯片只是串口发个数据就发烫严重是怎么回事?
441浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 16:41 , Processed in 1.037643 second(s), Total 58, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号