完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 一只耳朵怪 于 2018-6-14 10:39 编辑
利用机组末端的光电编码器获取转速信息 利用Brush-Less DC Motor的霍尔传感器信号获取换相码 对于换相码的获取,在TMS320F2812中,首先将对应的GPIO设置为捕获功能,要同时捕获霍尔传感器信号的上升沿和下降沿。当捕获到边沿信号后,在捕获中断服务子程序中将对应的管脚设置为GPIO功能,读取IO状态,获取换相码。退出中断服务程序之前恢复GPIO的捕获功能。 在利用TMS320F28335实现Brush-Less DC Motor控制时,对于霍尔传感器信号的捕获,该芯片的eCAP单元与TMS320F2812的捕获单元存在一定区别。TMS320F28335的捕获单元似乎更偏向于对捕获管脚输入信号变化时间的计算,我在手册中没有想到如何用TMS320F28335的捕获单元实现类似TMS320F2812捕获单元的功能。因此,我才用了GPIO外部中断方式获取换相字: GPIO24 as source of XINT1 (source: GPIO0 ~ GPIO31) to capture Hall U GPIO25 as source of XINT2 (source: GPIO0 ~ GPIO31) to capture Hall V GPIO48 as source of XINT3 (source: GPIO32 ~ GPIO63) to capture Hall W 需要特别注意的是TMS320F28335的外部中断有7个:XINT1~XINT7,其中XINT1和XINT2只可以GPIO0 ~ GPIO31作为中断源,XINT3~XINT7只可以GPIO32 ~ GPIO63作为中断源。 还有一点需要注意,由于同一桥臂的一个开关管处于工作状态时,令一个开关管应处于关闭的状态,关闭开关管利用TMS320F28335 ePWM单元的AQCSFRC寄存器实现,该寄存器包含一个shadow寄存器,其装载条件由AQSFRC. RLDCSF(AQCSFRC Active Register Reload From Shadow Options)决定: RLDCSF = 00 Load on event counter equals zero RLDCSF = 01 Load on event counter equals period RLDCSF = 10 Load on event counter equals zero or counter equals period RLDCSF = 11 Load immediately 在代码中,应将RLDCSF设置为11,以避免出现同一桥臂两个开关管同时导通的现象。 以上观点欢迎大家指正。 利用TMS320F28335实现Brush-Less DC Motor控制的main函数源码如下: 以上代码截屏缺少的行为空行。 |
|
相关推荐
1个回答
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
TMS320F28377D:新做了以377d为芯片的板子,上电后芯片复位引脚出现方波请问如何解决?
1433 浏览 0 评论
TPS55340通电后输入端保险丝烧断,芯片输入和GND之间短路
3427 浏览 4 评论
4888 浏览 0 评论
请问如何用DM368对RGB格式的图片数据进行编码生成JPEG格式图片?
1587 浏览 1 评论
8921 浏览 8 评论
2569浏览 4评论
CC3100BOOST使用CC3200lunchXL进行烧录
270浏览 1评论
1052浏览 1评论
4356浏览 1评论
1949浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 粤ICP备14022951号 )
GMT+8, 2023-10-9 12:39 , Processed in 0.355122 second(s), Total 41, Slave 36 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 深圳华秋电子有限公司
电子发烧友 (电路图) 粤公网安备 44030402000349 号 电信与信息服务业务经营许可证:粤 B2-20160233 工商网监 湘ICP备2023018690号