完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
求助:TMS570 NHET 如何利用HAL Code Generatr 实现输入捕捉程序??
|
|
相关推荐
3 个讨论
|
|
|
Hi WDY,
发现两个问题: 1. 您调用capGetSignal的方式不正确。 570系列中一般需要指定哪个het单元,所以参数中应该有hetRAM1或hetRAM2. 如 pulse = capGetSignal(hetRAM1, cap0); 2. capGetSignal自身的问题 的确,HALCoGen的捕获Capture功能接口是针对双pin捕获设计的。 也就是说,举个例子,测量从pin0输入的脉冲,HALCoGen生成的HET程序使用了一条汇编来测量pin0上的duty,而用另外一条语句来测量pin1上的period。 (可能是出于兼容旧方案的考虑吧,以前很多老的MCU都需要两个pin才能同时测量一个信号的周期和占空比。) 实际上,这样做没有必要,在HET中使用两条PCNT指令可以完成同一个引脚上的周期和占空比的测量。 解决眼下的问题,需要稍微修改HET的汇编指令,您可以在het.c的const hetINSTRUCTION_t het1PROGRAM[]数组中找到对应的PCNT指令位置。 比如,您使用cap0的指令应该是第25和26条指令。 如图: 可以看到,第26条指令在测量pin1而不是pin0上的信号........这样导致capGetSignal不能正常工作。 我们可以把这个1U去掉,让这条指令针对pin0. 另外,(0U<<6U)这里,是在配置目标脉冲的"极性",这里我把它改成"3U",即上升沿到上升沿之间的宽度。 而第25条指令处,这里我改为"1U",即上升沿到下降沿之间的宽度。 这样,就相当于对一个"正极性"的脉冲进行测量了。 修改之后如图 这样修改之后就可以正常使用了。 附件是我这个用来测试的例子。 需要注意的是,由于修改了HET的汇编代码,每次HALCoGen中有设置变化并生成源文件时,这部分的修改会被覆盖掉,所以用户要自己保存一下。 |
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
590 浏览 0 评论
1645 浏览 0 评论
2084 浏览 0 评论
为啥BQ7693003DBTR芯片在和BQ769X0盒子通讯时收不到信号?
1537 浏览 0 评论
DSP 28027F 开发板 XDS100v2调试探针诊断日志显示了 Error -150 (SC_ERR_FTDI_FAIL)如何解决
1376 浏览 0 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
1788浏览 29评论
2816浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
1746浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
1662浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
1676浏览 13评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-11 22:24 , Processed in 0.823025 second(s), Total 63, Slave 49 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3418