wireless-esp8266-dap icon indicating copy to clipboard operation
wireless-esp8266-dap copied to clipboard

关于ESP32C3的硬件复位nReset(GPIO05)

Open Su1kAze opened this issue 3 years ago • 29 comments

esp32c3的硬件复位似乎无效。 示波器无法看到nReset引脚被拉低。 板子用的是合宙的简约版开发板,esp32c3与被调试芯片用5根10cm的高温线连接,算上接触电阻不超过5Ω。 下载的3个固件均无法拉低nReset。 固件1:通过源码还原工程,编译并下载; 固件2:您这边提供的编译好的esp32c3固件文件夹,wireless_esp_dap_full.bin; 固件3:合宙编译好的soc 三个固件下载后,现象一致,使用elaphureLin,在keil5.35环境下,勾选Reset and Run。 被调试芯片选择stm32f103、stm32f107、gd32f407和air32f103,均可以找到被调试芯片,下载速度设为1M。 image 强制使用硬件复位选项,会提示RDDI-DAP Error,无法下载或擦除。 image image 使用自动或软件复位,可以擦除下载程序,会提示RDDI-DAP Error,无法正常软复位,需要手动复位被调试芯片。 但是可以直接Debug被调试芯片,可完成擦除下载复位操作。 image

Su1kAze avatar Nov 15 '22 16:11 Su1kAze

如果我没有记错的话,keil的cmsis dap的硬复位本身是有问题的,不会有任何动作

windowsair avatar Nov 16 '22 01:11 windowsair

哦哦,那软复位提示RDDI-DAP Error您了解么。 这DAP下载完毕程序后有标志位或者其他可以判断的方法么。想在下载完毕后,增加对GPIO的复位置位指令。

Su1kAze avatar Nov 16 '22 13:11 Su1kAze

抱歉,没注意看是elaphureLink。

这个可能需要两边配合一下,我会在后续添加这个功能

windowsair avatar Nov 16 '22 13:11 windowsair

另外我想问一下,这边对于复位时序有什么特殊的要求吗?

windowsair avatar Nov 16 '22 13:11 windowsair

没有什么特殊需求,能跟普通带复位的daplink一样就好咯B`6} H5 {{0UR$N73MN8)61

Su1kAze avatar Nov 16 '22 14:11 Su1kAze

我也碰到同样的问题,用的是ESP8266。不过好在可以Debug->Run,然后再退出Debug先用着。

LDEDA4587 avatar Nov 17 '22 12:11 LDEDA4587

能否试一下以下这个版本

https://github.com/windowsair/wireless-esp8266-dap/actions/runs/3507915368

https://github.com/windowsair/elaphureLink/actions/runs/3508007303

windowsair avatar Nov 20 '22 12:11 windowsair

ESP8266已经成功复位运行,非常感谢。 20221120_Reset_Run

LDEDA4587 avatar Nov 20 '22 13:11 LDEDA4587

esp32c3刷入wireless_esp_dap_full.bin,使用elaphureLink_Windows_x64_release下的应用程序,设置仿真器会提示未实现此功能,确认后可以看到找到了被调试芯片,但无法下载和调试程序。 image image 此时下载按钮是禁用的。 image 启动调试会提示未实现此功能,连续确认后调试被放弃。 image image image image

Su1kAze avatar Nov 21 '22 13:11 Su1kAze

奇怪,没有pack选项卡。调试的是什么设备?

windowsair avatar Nov 21 '22 13:11 windowsair

合宙的air32f103,接在开发板上,上次测过这个设备,可以用; 刚刚换成了stm32l431 这个芯片硬复位和软复位都正常。 image image

Su1kAze avatar Nov 21 '22 13:11 Su1kAze

嗯嗯,目前这些没有PACK选项卡的设备暂时不支持,我会尽快支持他们

windowsair avatar Nov 21 '22 13:11 windowsair

好的,我明白了,麻烦你了。MSKR4F~GWU825@YP09{OH

Su1kAze avatar Nov 21 '22 13:11 Su1kAze

Hello,能否试下这个版本 https://github.com/windowsair/elaphureLink/actions/runs/3557761458

windowsair avatar Nov 27 '22 10:11 windowsair

简单试了下Release版本,下载复位没问题,打上断点第一次进去Debug的时候提示一个错误,没留意看报的是什么,以为可以复现,结果后面再也没有出现过,之前的版本是不是也有这样的没太留意,等会试下。

LDEDA4587 avatar Nov 27 '22 11:11 LDEDA4587

不好意思,这两天比较忙,今天才试。 使用了新版的elaphureLink之后,调试没有pack的air32f103芯片,选择硬复位,无法进行擦除和下载,会提示: image 选择自动检测复位下载程序会提示: image image 选择软复位只会提示自动检测复位提示的第二张图。 keil中的build output显示正常,出现了Application running ... image 但选择哪种复位还是不会自动复位芯片。 选择硬复位下无法进入调试模式,会提示: image 选择软复位第一次可以调试,但运行一小会后elaphureLink卡死了且无法结束进程,电脑WIFI和热点也崩了,重启后WIFI和热点恢复正常,也可能刚好是刚好PCIe转WLAN芯片崩了...。重启后软复位也无法进入调试模式了。 使用新版elaphureLink调试有pack的stm32f103,下载调试正常,keil中的build output显示正常,但软硬复位都无法自动复位芯片。 image 换回上一版本的elaphureLink,发现软硬复位也是无效的。上次看build output显示正常,误认为复位也正常了。

Su1kAze avatar Nov 29 '22 14:11 Su1kAze

奇怪的回归。我后续换个国产芯片继续完善下

windowsair avatar Nov 29 '22 16:11 windowsair

Hello @Su1kAze , 目前我试了下air32f103cbt6,至少软件复位是没问题的。 可以试下更新最新的keil pack。 https://github.com/openLuat/luatos-soc-air32f103

image

windowsair avatar Dec 04 '22 06:12 windowsair

还有就是合宙官方说air32f103的硬件复位有问题,所以改软件复位试试吧

windowsair avatar Dec 04 '22 06:12 windowsair

刚才试了下gd32,现象一样诶。 编译好程序,使用软件复位,按debug下载复位调试是可以复位的。 按download下载复位就不能复位了,软复位和硬复位在这个情况下都不能复位。( ・ั﹏・ั)

Su1kAze avatar Dec 07 '22 05:12 Su1kAze

下载stm32也是这样,debug可以复位,但download无法复位。

Su1kAze avatar Dec 07 '22 06:12 Su1kAze

真奇怪昂,我再检查检查

windowsair avatar Dec 07 '22 11:12 windowsair

ESP8266和ESP32C3我都做有,ESP8266完全正常,ESP32C3一共只用了3次,第一次Download提示错误,大概就是没有正确复位了,然后紧跟着又Download了两次,竟然都正常了.因为ESP32C3的那一块板别的电路还有问题没解决,目前没办法进一步确定到底是不是完全正常,只能确定正常Download过两次.另外,两块板的硬复位我都是接了的.

LDEDA4587 avatar Dec 07 '22 11:12 LDEDA4587

当然,我用的是STM32.

LDEDA4587 avatar Dec 07 '22 11:12 LDEDA4587

所以是ESP32C3上的硬件复位有问题?这个我再检查一下

windowsair avatar Dec 11 '22 14:12 windowsair

我不确定ESP32C3上的硬件复位是否有问题,因为自从22天前你修改了之后,ESP8266和ESP32C3的使用,包括Download都是正常的,当然这是在调试STM32的时候,air32的情况我没用过.5天前我说的第一次Download提示错误,是因为ESP32C3的WiFi信号极差,只能在几厘米的范围内联上AP,还经常掉线所导致.现在可以确定ESP32C3的复位在调试STM32的时候也是正常的.但是我不知道是软复位还是硬复位起的作用,没实际测量过.

LDEDA4587 avatar Dec 12 '22 09:12 LDEDA4587

image 同样是ESP32C3上,KEIL版本为5.37 Reset :SYSRESETREQ image

勾选了Reset and Run image

无法复位,但是通过Debug可以复位。 之前用stlink的时候勾选Pack的Enable也不能复位,我尝试取消勾选,如下图所示: image 但是也无法复位。 烧录的板子为:STM32F429BIT6 用的上位机为elaphureLink Version:1.2.0.0——2022-08-16

badboyhuan avatar Mar 21 '23 05:03 badboyhuan

似乎这个功能的修复在开发板中,发行版还没有更新,坐等更新,辛苦了,加油哦。

badboyhuan avatar Mar 21 '23 06:03 badboyhuan

image 同样是ESP32C3上,KEIL版本为5.37 Reset :SYSRESETREQ image

勾选了Reset and Run image

无法复位,但是通过Debug可以复位。 之前用stlink的时候勾选Pack的Enable也不能复位,我尝试取消勾选,如下图所示: image 但是也无法复位。 烧录的板子为:STM32F429BIT6 用的上位机为elaphureLink Version:1.2.0.0——2022-08-16

嗯,用的elaphureLink版本可以更新下看看

https://github.com/windowsair/elaphureLink/actions/runs/6614836721

windowsair avatar Nov 21 '23 14:11 windowsair