-
看原理图,每个MOS都没有并联续流二极管,板子上外接一个试试看呢?
-
一直在搞伺服驱动的软硬件,属于闭门造车的那种,目前做的是方波BLDC的三闭环,用的MCU是DSPIC33EP,准备开始搞正弦的,担心DSPIC33EP做正弦再跑三闭环计算不过来,前几天又做了个兼容PIC32MK电机系列和TMS320F28335的功率板子,玩起来:pleased:
-
本帖最后由 asdmaill 于 2018-12-5 11:11 编辑
因为C2000的片子烧写和仿真期间如果电源电压波动大,或者烧写不正确容易挂片子这么个特性,所以就很少用它,然后几乎都是在用dsPIC的东西,dsPIC呢是随便折腾,除非电源短路啥的才会挂片子,和C2000相比,dsPIC的FLASH速度很快,不像C2000跑实时性的代码还的搬移到RAM运行,缺点就是主频速度慢了些而且还是16位的鸡鸡,所以鱼和熊掌不可兼得啊
-
本帖最后由 asdmaill 于 2018-12-5 11:01 编辑
所以不在有侥幸心理了,片子就是挂了:Cry:前前后后挂了三片,前两片是我尝试修改CMD文件,想把代码搬移到RAM运行,结果操作不正确,把代码烧到密码区了,这第三片是我前些天借给一个同学,不知道他当时具体怎么操作的
-
检查了的,补焊了,调试器在另一个上面烧写仿真都没有问题,这块有问题的板子,在connected
的时候CCS提示MCU possibly locked
-
选对了的,另一块一样的板子跑的好好的,所以推测是片子挂了
-
不过在keil里可以这么干
-
楼主,在官网买的吗,多少钱,一直在用PIC的东西,运放,数字电位器,16位的dsPIC单片机,32位PIC32MZ单片机,前段又买了几片LAN9252,成PIC粉了
-
另外,在如下代码中,我用分号屏蔽的那些全局变量是什么作用,我不屏蔽的话,要报错。这个段拷贝汇编代码是代码搬移必须用到的
;############################################################################
;
; FILE: DSP28xxx_SectionCopy_nonBIOS.asm
;
; DESCRIPTION: Provides functionality for copying intialized sections from
; flash to ram at runtime before entering the _c_int00 startup
; routine
;############################################################################
; Author: Tim Love
; Release Date: March 2008
;############################################################################
.ref _c_int00
.global copy_sections
;.global _cinit_loadstart, _cinit_runstart, _cinit_size
;.global _const_loadstart, _const_runstart, _const_size
;.global _econst_loadstart, _econst_runstart, _econst_size
;.global _pinit_loadstart, _pinit_runstart, _pinit_size
;.global _switch_loadstart, _switch_runstart, _switch_size
.global _text_loadstart, _text_runstart, _text_size
***********************************************************************
* Function: copy_sections
*
* Description: Copies initialized sections from flash to ram
***********************************************************************
.sect "copysections"
copy_sections:
;MOVL XAR5,#_cinit_size ; Store Section Size in XAR5
;MOVL ACC,@XAR5 ; Move Section Size to ACC
;MOVL XAR6,#_cinit_loadstart ; Store Load Starting Address in XAR6
;MOVL XAR7,#_cinit_runstart ; Store Run Address in XAR7
;LCR copy ; Branch to Copy
;MOVL XAR5,#_const_size ; Store Section Size in XAR5
;MOVL ACC,@XAR5 ; Move Section Size to ACC
;MOVL XAR6,#_const_loadstart ; Store Load Starting Address in XAR6
;MOVL XAR7,#_const_runstart ; Store Run Address in XAR7
;LCR copy ; Branch to Copy
;MOVL XAR5,#_econst_size ; Store Section Size in XAR5
;MOVL ACC,@XAR5 ; Move Section Size to ACC
;MOVL XAR6,#_econst_loadstart ; Store Load Starting Address in XAR6
;MOVL XAR7,#_econst_runstart ; Store Run Address in XAR7
;LCR copy ; Branch to Copy
;MOVL XAR5,#_pinit_size ; Store Section Size in XAR5
;MOVL ACC,@XAR5 ; Move Section Size to ACC
;MOVL XAR6,#_pinit_loadstart ; Store Load Starting Address in XAR6
;MOVL XAR7,#_pinit_runstart ; Store Run Address in XAR7
;LCR copy ; Branch to Copy
;MOVL XAR5,#_switch_size ; Store Section Size in XAR5
;MOVL ACC,@XAR5 ; Move Section Size to ACC
;MOVL XAR6,#_switch_loadstart ; Store Load Starting Address in XAR6
;MOVL XAR7,#_switch_runstart ; Store Run Address in XAR7
;LCR copy ; Branch to Copy
MOVL XAR5,#_text_size ; Store Section Size in XAR5
MOVL ACC,@XAR5 ; Move Section Size to ACC
MOVL XAR6,#_text_loadstart ; Store Load Starting Address in XAR6
MOVL XAR7,#_text_runstart ; Store Run Address in XAR7
LCR copy ; Branch to Copy
LB _c_int00 ; Branch to start of boot.asm in RTS library
copy:
B return,EQ ; Return if ACC is Zero (No section to copy)
SUBB ACC,#1
RPT AL ; Copy Section From Load Address to
|| PWRITE *XAR7, *XAR6++ ; Run Address
return:
LRETR ; Return
.end
-
好了,可以了,是自己没注意{:1_138:}
-
这个是有四个的
-
另外,导师那边有个师兄带我,用的STM32,他们全部用的固件库,而我一直以来都是直接读写寄存器,固件库我完全是一脸茫然。然后看文档,找资料,我把师兄给的例程,逐步的全部改成了寄存器读写的方式。:titter::titter:
-
哈哈哈,可以结贴了。前段一直忙导师给的任务,然后有天回家敲PIC32的代码,突然想到把所有中断服务代码单独写到一个C文件里面,取名就叫interrupt.C,然后发现,不需要配置什么中断向量偏移地址,同时开了四个中断进行了验证,都跑的好好的。PIC3就打算自己写代码了,完全不用那个harmony。哈哈哈哈哈哈哈!!!
-
我是指这方面没什么可用信息,别断章取义
-
看了PIC32的数据手册和参考文档,没有具体说中断向量的地址偏移量是怎么得来的
-
没有用过ARM,但PIC32使用的人,貌似确实很少,或许就是因为PIC用起来比较难吧
-
不知道啊,还不知道harmony怎么玩,但要写一些涉及到状态机的东西,所以我有顾虑,PIC32让人爱让人恨得东西。我是自己玩,用来做个三轴伺服的运动控制器
-
操作系统是XP,这个有影响吗
-
XIDE是V4.1版,harmony是v2_05_01版
-
harmony在XIDE里面启动的时候一直提示初始化失败