EDA365电子论坛网

标题: JTAG 口下载程序到 ARM 中,不能运行! [打印本页]

作者: Dollche    时间: 2022-10-14 10:39
标题: JTAG 口下载程序到 ARM 中,不能运行!
我直接通过 JTAG 口下载 EasyArm 板带的 Ext1_test 程序到 ARM 中,出现中断向量的告警: interrupt vector is not correct arm is not running freely.
, ]6 Y3 W) x7 Q7 a3 s* ^8 m8 y果然复位后芯片不能运行。但是我用串口下载后,芯片能正常工作,中断也行的。并且我用 JTAG 仿真的话,芯片能正常工作,中断也行的,唯独 JTAG 口下载不行。
; X4 _" K. @& J( c" \不知道是什么原因?
" q: k( Y4 E# q7 m: s  y. D4 O
4 B0 K" ?- R2 E  T. m" c0 ^+ R  i
作者: 521li    时间: 2022-10-14 13:14
看看JTAG连接的管脚对着没有
作者: VIC56    时间: 2022-10-14 13:40
仿真器配置中要设置 Erase Flash when need。
" V* k0 m% b7 s0 x5 y" h- ^# ~! K也可以这样试试:
7 P; d, q- A. L! n- A3 U& v/ a& C可以先打开一个工程在 RAM 中调试运行; 然后stop 程序; 最后使用 File->Load Image…重新加载 Ext1_test 生成的*.axf 文件.
作者: Dollche    时间: 2022-10-14 14:01
VIC56 发表于 2022-10-14 13:40/ u4 ?7 l" w( t/ z1 R
仿真器配置中要设置 Erase Flash when need。
* O2 M* x9 E' ^- p也可以这样试试:
9 y8 a" d7 t* K: n; J( s! t% u可以先打开一个工程在 RAM 中调试运行;  ...

9 c& ~, H: R! v7 P, @仿真器配置中我是设置了 Erase Flash when need,但照你说的话,那不是在 RAM 下调试吗?在 RAM 下调试我是可以的,但是下载后出现 interrupt vector data is not correct。. O7 B  p9 E* w2 ]' o+ f5 a. h! V
我又看了几篇文章,是不是跟中断向量表的累加和不为零有关系啊! 7 }! k/ ~2 F3 l" F0 }

* y7 ?  Y' ]( A4 R8 t' n: I
作者: CRAZY_argentina    时间: 2022-10-14 14:15
Dollche 发表于 2022-10-14 14:01/ M. u4 m5 T4 V+ u
仿真器配置中我是设置了 Erase Flash when need,但照你说的话,那不是在 RAM 下调试吗?在 RAM 下调试我 ...

  S! `0 K' m0 ^. L; I是的,是向量表的累加和不为零。因为,如果用 ISP 下载能运行,说明向量表的累加和已为零,而用 JTAG 下载不能运行的情况可能是:没有正常下载代码。先在 RAM 中调试,目的是为了后面正确下载程序到8 W; U3 g; T) o$ R: y: M
FLASH。
3 ]2 r! X5 F' g* d5 Q0 }6 v. F; q4 P0 _1 C' C: a1 N





欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2