完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
目前,我在一个高级设计项目,我们使用的是无刷直流电机。我们使用的是dsPIC30F2010和一个外部8MHz振荡器,锁相环为x8(我的理解是这给了我们16MHz的时钟)。那部分似乎起作用了。我所面临的问题是,我似乎无法让ADC正常工作。我认为这是我在代码中设置的错误,因为这个问题在将物理微处理器换出之后仍然存在。反电势用分压器(两个20千欧电阻)和33 NF电容器滤波,以滤除20 kHz PWM。电机驱动电压为11.1伏。在代码中,我试图通过开环方法使电机升压,然后用ADC切换到闭环控制。ADC中断执行,因为我能够在ADC ISR中设置断点。但是问题是,即使在连续运行和电力循环期间,ADCBUF寄存器也总是包含完全相同的值(ADCBUF3=0x6700,ADCBUF4=0x5DC0,ADCBUF5=0x4480)。即使我把一个ADC输入作为测试带到地面,它仍然会读取相同的值。所以我的问题是,在设置这个输入时我犯了什么错误?代码附在下面。先谢谢你。
|
|
相关推荐
6个回答
|
|
检查,ASAM=1与注释不匹配。这个寄存器很重要。检查家庭参考手册(FRM第17节)。需要确定ADC采样和转换时间等。在论坛上有很多例子。-找到指令周期时间-来自正在使用的振荡器的Tcy。-从数据表电规范部分找到:--- TAD(ADC时钟周期)--最小采样时间(x TAD)--转换时间(X TADS)然后算出ADCON3寄存器位以适应PWM的速度要求。祝你好运,迈克。
|
|
|
|
看来你不能张贴链接由于论坛限制。再试着把一些空白放在…之间
|
|
|
|
AburnS2,你确保反向MOSFET切换的死区时间了吗?
|
|
|
|
嗨,在RDS(on)的差异?检查两个数据表,祝你好运,迈克
|
|
|
|
|
|
|
|
DUH成员之间放置空格…
|
|
|
|
只有小组成员才能发言,加入小组>>
5166 浏览 9 评论
2000 浏览 8 评论
1929 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3175 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2227 浏览 5 评论
736浏览 1评论
618浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
507浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
633浏览 0评论
530浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 01:57 , Processed in 1.233040 second(s), Total 59, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号