如何解决在 ESP32 和 esptool 选项 --no-stub 的上下文中,“存根”是什么意思?
我想使用 esp-prog 和 esptool 对带有 esp32 的电路板进行编程。当我这样做时,我收到以下错误:
...
Crystal is 40MHz
MAC: c8:2b:96:b8:e7:e0
Uploading stub...
Running stub...
Traceback (most recent call last):
File "/home/martin/workspace/esp/esp-idf/components/esptool_py/esptool/esptool.py",line 3470,in <module> _main()
...
但是如果我使用带有选项 --no-stub 的 esptool,我可以毫无错误地对电路板进行编程。那么这个存根是什么?使用 --no-stub 是什么意思?
解决方法
在软件开发中,存根是一段代码或一个程序,用来代替另一个。它们经常模拟原始功能的行为,有时它们被用作未开发代码的临时替代品。
在esptool的情况下,它使用一个存根加载器,它基本上取代了ESP中使用的原始引导加载程序,通过串口将您的程序加载到ROM中您的 ESP32 设备。
基本上这个存根引导加载程序与原始引导加载程序具有相同的行为,但它 使用一些 UART 例程,这些例程经过更多优化以加载 ROM 代码。
使用 public void ConfigureServices(IServiceCollection services)
{
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme).AddJwtBearer(options => {
options.Authority = "https://securetoken.google.com/<PROJECT ID>";
options.TokenValidationParameters = new TokenValidationParameters {
ValidIssuer = "https://securetoken.google.com/<PROJECT ID>",ValidateIssuer = true,ValidateAudience = true,ValidAudience = "<PROJECT ID>",ValidateLifetime = true
};
});
}
public void Configure(IApplicationBuilder app,IWebHostEnvironment env)
{
app.UseAuthentication();
}
您将使用原始的 ESP32 引导加载程序,众所周知,它在刷新程序和其他一些操作时速度较慢。有些命令只能在 esptool 引导加载程序中使用,但如果您不使用任何可选命令来引导代码,则使用 --no-stub
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。