Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
Su1kAze opened this issue Nov 15, 2022 · 29 comments
Open

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

Su1kAze opened this issue Nov 15, 2022 · 29 comments
Labels
enhancement New feature or request

Comments

@Su1kAze
Copy link

Su1kAze commented Nov 15, 2022

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

@windowsair
Copy link
Owner

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

@Su1kAze
Copy link
Author

Su1kAze commented Nov 16, 2022

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

@windowsair
Copy link
Owner

抱歉,没注意看是elaphureLink。

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

@windowsair windowsair added the enhancement New feature or request label Nov 16, 2022
@windowsair
Copy link
Owner

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

@Su1kAze
Copy link
Author

Su1kAze commented Nov 16, 2022

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

@LDEDA4587
Copy link

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

@windowsair
Copy link
Owner

@LDEDA4587
Copy link

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

@Su1kAze
Copy link
Author

Su1kAze commented Nov 21, 2022

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

@windowsair
Copy link
Owner

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

@Su1kAze
Copy link
Author

Su1kAze commented Nov 21, 2022

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

@windowsair
Copy link
Owner

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

@Su1kAze
Copy link
Author

Su1kAze commented Nov 21, 2022

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

@windowsair
Copy link
Owner

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

@LDEDA4587
Copy link

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

@Su1kAze
Copy link
Author

Su1kAze commented Nov 29, 2022

不好意思,这两天比较忙,今天才试。
使用了新版的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显示正常,误认为复位也正常了。

@windowsair
Copy link
Owner

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

@windowsair
Copy link
Owner

windowsair commented Dec 4, 2022

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

image

@windowsair
Copy link
Owner

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

@Su1kAze
Copy link
Author

Su1kAze commented Dec 7, 2022

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

@Su1kAze
Copy link
Author

Su1kAze commented Dec 7, 2022

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

@windowsair
Copy link
Owner

真奇怪昂,我再检查检查

@LDEDA4587
Copy link

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

@LDEDA4587
Copy link

当然,我用的是STM32.

@windowsair
Copy link
Owner

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

@LDEDA4587
Copy link

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

@badboyhuan
Copy link

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
Copy link

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

@windowsair
Copy link
Owner

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 windowsair pinned this issue Nov 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants