ADUC7023 无法连接上jtag,因为之前MCU是下载过程序的,jtag的端口给占用了,
而且也无法进入到I2C 升级模式 0x80014 位置为0x12345678
现在即使把mcu 的TRST / TDI / TMS /RTCK / TDO /RESET 都连接上也是始终无法连接上mcu(非常小概率能连上)
JLINK V8 /JLINK V9 /ULINK 2都使用过了,还是一样。
有没有了解这个mcu的,怎么样来连接上这个mcu,清空资料呢
上面是我画的一个小板子,只连接了JTAG,还有预留了I2C, loader 接口
本帖最后由 weizhongc 于 2021-4-19 10:06 编辑引用: dcexpert 发表于 2021-4-16 11:04 没有用过这个,应该是GPIO功能复用造成的,可以试试先点连接,然后快速按复位键。
问题是我的 RESET 也连接上去了啊。不需要手动去快速复位啊
测量一下复位信号看看过去没
软件里设置硬件复位
JTAG引脚复用以后,MCU无法连上JTAG的情况
很早以前看到过一个方法,MCU复位以后,JTAG口在使用复用功能前,加入延时,有一个窗口期后JTAG功能可以使用。这个方法通过检测其他IO的方式,来判断是否加入延时来避免JTAG锁死
如果已经发生你这种情况,好像不同的芯片并没有统一的方法
上楼的方法应该可以试试,大致意思就是使得芯片一直处於复位状态,不运行
看来楼主对这个芯片好熟悉!我特意下了这个芯片资料,是arm7,非常早了!如果以后还要使用这个芯片,需要把占用jtag引脚的代码删除掉。可以使用jlink,看看按住复位引脚能不能连接jtag,另外你确定i2c接口不能使用擦除芯片代码。现在还有办法就是把这个芯片去掉,重新焊接一个。你这个芯片还倒罢了,德州仪器c2000芯片是非常恶劣的!和波音公司的飞机设计有一比!
本帖最后由 大秦正声 于 2021-4-16 15:06 编辑引用: 大秦正声 发表于 2021-4-16 15:03 看来楼主对这个芯片好熟悉!我特意下了这个芯片资料,是arm7,非常早了!如果以后还要使用这个芯片,需要把 ...
还有一点,连接jtag的时候需要保持p0.0引脚为高电平。
引用: 大秦正声 发表于 2021-4-16 15:03 看来楼主对这个芯片好熟悉!我特意下了这个芯片资料,是arm7,非常早了!如果以后还要使用这个芯片,需要把 ...
以前看到的锁死问题是TI收购的m3芯片,怎么都是TI
不过据说LM3S系列的设计与TI的工艺不太兼容,后来不太推了
引用: weizhongc 发表于 2021-4-16 11:23 问题是我的 RESET 也连接上去了啊。不需要手动去快速复位啊
需要按住复位,然后松手,快手连接jtag就是让里边的代码来不及运行。
大秦正声 发表于 2021-4-16 17:01 需要按住复位,然后松手,快手连接jtag就是让里边的代码来不及运行。
for (time = 0; time < 100; time++)
{
JLINKARM_Reset();
JLINK_ClrRESET();
Thread.Sleep(20);
JLINK_SetRESET();
Thread.Sleep(time);
button1.Text = "断开";
snr = JLINKARM_GetId();
if (snr == 0x4f1f0f0f)// ADUC7023 ID
{
str = snr.ToString("X");
richTextBox1.Text = richTextBox1.Text + "ARM core ID: " + str;
richTextBox1.Text = richTextBox1.Text + "(ARM7)\n";
break;
}
Thread.Sleep(100);
}
有个回帖说查找 jtag 在复位后的窗口期,
我改了个C# 的jtag程序,一直还是没有连接上,
用stm32 的开发板,程序已运行就连接上了。
芯片是拆机的,里面程序占用了JTAG ,有连接上过,但是概率好小,几天可能连接上一次。
引用: 大秦正声 发表于 2021-4-16 15:03 看来楼主对这个芯片好熟悉!我特意下了这个芯片资料,是arm7,非常早了!如果以后还要使用这个芯片,需要把 ...
在原来的pcb上,jtag 是用作了普通的gpio 了。