完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
大家好!我把一些代码从一个DSIC33 F移植到一个DSPIC33,我从一个微芯片项目开始三相功率表。我在微芯片上的代码最初是用2006的C30编译器为P33 FJ128GP206编写的。所有的计算(平方根、DFT、计算能力等)都是在DSP上用a s m代码完成的。我正在从原始设计的dsPIC33F转移到定制板上的dsPIC33E,不知道是否有人把DFT.s(a s m代码)移植到那个设备上?我一直在尝试自己的港口,但我不能让它工作…我继续触发地址错误陷阱。我在ASM中没有足够的信心去调试它。谢谢!ASM代码:
|
|
相关推荐
6个回答
|
|
有一个DSP库,你可以从微芯片上下载DSPIC33设备。我自己用过,所以我知道它存在。或者至少它存在,因为我只是试着在“新”微芯片网站上查找它,却一无所获。许多链接带您回到您开始的地方;有对dsPIC33 DSP库的引用,但我肯定不能再找到下载链接-它曾经是非常容易的!不管怎么说,图书馆确实存在,看看你能否找到Microchip藏在哪里!(我知道的没多大帮助-对不起)苏珊
|
|
|
|
你能在这里显示“构建”输出吗?使用所有的地址?期待。。。。
|
|
|
|
为了调试,可以在每个函数的开始和结束处(一个接一个地)设置断点,以找出地址错误陷阱在哪里发生。这很容易将问题缩小到错误发生的代码行。祝你好运。。。。
|
|
|
|
嗨,我相信它存在,但是我从微芯片上找不到DSP库……dsp.h显示有一个库,但是它只给出可用函数的原型,并且它们只包括FFT函数。以下是构建中使用的地址:我用PSVPAG替换了所有PSVPAG自从PSVPAG被从dsPIC33F改为dsPIC33E以来,汇编代码中的DSRPAG。我还把其中一个大缓冲器的地址从地址0x070改为0x1070,以便与dsPIC33E兼容。我试图找出这个问题的原因,但我不知道在调试模式下查看Wx寄存器中存储的值的方法。
|
|
|
|
对于0x8000及以上的EA,DSRPAG[8:0]与EA的LS 15位连接,以形成24位扩展数据空间(EDS)地址。使用MS位DSRPAG[9]作为PS/DS选择,在DS和PS中复制地址空间。因此DSRPAG仅是一个10位寄存器,因此使用PSV读的Flash中访问常量所需的修改页地址应该设置DSRPAG[9],因此为0 x270。尝试用0x1070加载它将导致DSRPAG=0x070,它将解决未实现的DS并导致地址陷阱。
|
|
|
|
你好!非常感谢你的帮助。我试图将0x1070改为0x270,但是现在没有触发中断……上面的两个变量用于计算DFT。有没有人可以得到样本代码,我可以研究它来修正DSP函数对E系列变量的访问?或者一些关于如何将ASM代码移植到E-Seri中的提示?
|
|
|
|
只有小组成员才能发言,加入小组>>
5166 浏览 9 评论
2000 浏览 8 评论
1928 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3174 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2226 浏览 5 评论
734浏览 1评论
615浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
506浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
631浏览 0评论
528浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 21:19 , Processed in 1.326911 second(s), Total 87, Slave 70 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号