0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Ubuntu一条命令下载MCU固件

Rice嵌入式开发技术分享 来源:Rice 嵌入式开发技术分享 作者:Rice 嵌入式开发技 2023-05-15 09:27 次阅读

现在很多项目开发都逐渐的迁移到Linux环境下。但是Linux开发单片机就没有像Windows下开发那么方便,它没有对应开发工具(KEIL,IAR等),它们自带烧录等功能。所以在Linux上开发单片机需要安装下载固件的工具--JLink。

b152076c-f2bf-11ed-a6d0-dac502259ad0.png

JLink环境搭建

  1. 我的开发环境是Ubuntu 20.04
  2. JLink环境搭建比较简单,安装包下载链接:https://www.segger.com/downloads/jlink/JLink_Linux_V788b_x86_64.deb
  3. 在Ubuntu的terminal中执行如下命令:
rice@rice:~/jlink_test$wgethttps://www.segger.com/downloads/jlink/JLink_Linux_V788b_x86_64.deb
--2023-05-1111:51:48--https://www.segger.com/downloads/jlink/JLink_Linux_V788b_x86_64.deb
Resolvingwww.segger.com(www.segger.com)...195.122.144.65
Connectingtowww.segger.com(www.segger.com)|195.122.144.65|:443...connected.
HTTPrequestsent,awaitingresponse...200OK
Length:unspecified[text/html]
Savingto:‘JLink_Linux_V788b_x86_64.deb’

JLink_Linux_V788b_x[<=>]44.19K27.4KB/sin1.6s

2023-05-1111:51:52(27.4KB/s)-‘JLink_Linux_V788b_x86_64.deb’saved[45248]

rice@rice:~/jlink_test$
  1. 安装JLink:
rice@rice:~/jlink_test$sudodpkg-iJLink_Linux_V788b_x86_64.deb

JFlash下载固件

  1. 创建新的project
b16c62c4-f2bf-11ed-a6d0-dac502259ad0.png
  1. 选择Target device
b17f7346-f2bf-11ed-a6d0-dac502259ad0.pngb18f8f56-f2bf-11ed-a6d0-dac502259ad0.png
  1. 打开固件文件
b1a7bea0-f2bf-11ed-a6d0-dac502259ad0.png
  1. 下载固件

b1c20c2e-f2bf-11ed-a6d0-dac502259ad0.pngb1fa8d56-f2bf-11ed-a6d0-dac502259ad0.png

命令行下载固件

JLinkExe提供了一系列批处理命令,详细命令参考JLink官网:https://wiki.segger.com/J-Link_Commander#Batch_processing。我们通过JLinkExe命令行下载固件:

  1. 在terminal中执行如下命令,进入JLink下载界面。选择设备类型,接口类型,接口速度,自动连接选择:
b21110c6-f2bf-11ed-a6d0-dac502259ad0.png
  1. 在JLink下载界面中执行下载命令,执行loadbin命令:
b229d58e-f2bf-11ed-a6d0-dac502259ad0.png

一条命令下载固件

上面的两种方式都繁琐,在实际场景中,更佳倾向一条命令就完成下载功能,无需任何的交互。JLinkExe也提供了方案,批处理脚本 + 命令文件的方式解决,详细命令文件使用方法参考JLink官网:https://wiki.segger.com/J-Link_Commander#Using_J-Link_Command_Files。

  1. 因为loadbin不能通过直接通过批处理命令执行,它需要放在命令文件中。创建CommandFile.jlink文件。并将命令(loadbin ./test.bin 0x08000000)写入文件中。
b23ac448-f2bf-11ed-a6d0-dac502259ad0.png
  1. 执行一下命令,便可以下载文件了。
b24ac5d2-f2bf-11ed-a6d0-dac502259ad0.png

总结

  1. 可以不需要开发环境,通过一条命令解决了我们的烧录问题。
  2. 在Linux下开发,大部分也是通过命令的形式做一些操作,所以符合我们的开发需求。
b261aec8-f2bf-11ed-a6d0-dac502259ad0.png


审核编辑黄宇


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17117

    浏览量

    350933
  • 固件
    +关注

    关注

    10

    文章

    555

    浏览量

    23016
收藏 人收藏

    评论

    相关推荐

    如何给CyBootProgrammer.Img这个固件添加一条控制led状态的指令?

    我想对CyBootProgrammer.Img这个固件添加一条控制led状态的指令,我是小白,我想知道怎么写配置能控制引脚的高低电平
    发表于 05-27 08:28

    Core 3308Y固件ROC RK3308B CC PLUS Ubuntu Desktop固件

    电子发烧友网站提供《Core 3308Y固件ROC RK3308B CC PLUS Ubuntu Desktop固件.txt》资料免费下载
    发表于 09-13 09:53 0次下载
    Core 3308Y<b class='flag-5'>固件</b>ROC RK3308B CC PLUS <b class='flag-5'>Ubuntu</b> Desktop<b class='flag-5'>固件</b>

    Core 3399KJ固件Ubuntu(GPT)

    电子发烧友网站提供《Core 3399KJ固件Ubuntu(GPT).txt》资料免费下载
    发表于 09-14 10:09 0次下载
    Core 3399KJ<b class='flag-5'>固件</b><b class='flag-5'>Ubuntu</b>(GPT)

    Core 3399J固件Ubuntu(GPT)分享

    电子发烧友网站提供《Core 3399J固件Ubuntu(GPT)分享.txt》资料免费下载
    发表于 09-14 09:33 2次下载
    Core 3399J<b class='flag-5'>固件</b><b class='flag-5'>Ubuntu</b>(GPT)分享

    Core 3288J固件Ubuntu文档分享

    电子发烧友网站提供《Core 3288J固件Ubuntu文档分享.txt》资料免费下载
    发表于 09-16 11:08 1次下载
    Core 3288J<b class='flag-5'>固件</b><b class='flag-5'>Ubuntu</b>文档分享

    Core 3128J固件Ubuntu系统

    电子发烧友网站提供《Core 3128J固件Ubuntu系统.txt》资料免费下载
    发表于 09-16 10:57 2次下载
    Core 3128J<b class='flag-5'>固件</b><b class='flag-5'>Ubuntu</b>系统

    Core 1808 JD4固件Ubuntu18.04

    电子发烧友网站提供《Core 1808 JD4固件Ubuntu18.04.txt》资料免费下载
    发表于 09-20 17:03 0次下载
    Core 1808 JD4<b class='flag-5'>固件</b><b class='flag-5'>Ubuntu</b>18.04

    AIO 3566JD4固件Ubuntu

    电子发烧友网站提供《AIO 3566JD4固件Ubuntu.txt》资料免费下载
    发表于 09-20 10:19 0次下载
    AIO 3566JD4<b class='flag-5'>固件</b><b class='flag-5'>Ubuntu</b>

    ROC RK3568 PC固件Ubuntu

    电子发烧友网站提供《ROC RK3568 PC固件Ubuntu.txt》资料免费下载
    发表于 09-20 09:47 16次下载
    ROC RK3568 PC<b class='flag-5'>固件</b><b class='flag-5'>Ubuntu</b>

    ROC RK3566 PC固件Ubuntu

    电子发烧友网站提供《ROC RK3566 PC固件Ubuntu.txt》资料免费下载
    发表于 09-21 14:50 11次下载
    ROC RK3566 PC<b class='flag-5'>固件</b><b class='flag-5'>Ubuntu</b>

    AIO 3568J固件Ubuntu

    电子发烧友网站提供《AIO 3568J固件Ubuntu.txt》资料免费下载
    发表于 09-21 10:53 12次下载
    AIO 3568J<b class='flag-5'>固件</b><b class='flag-5'>Ubuntu</b>

    AIO 3399ProC固件Ubuntu(GPT)

    电子发烧友网站提供《AIO 3399ProC固件Ubuntu(GPT).txt》资料免费下载
    发表于 09-21 09:56 1次下载
    AIO 3399ProC<b class='flag-5'>固件</b><b class='flag-5'>Ubuntu</b>(GPT)

    Ubuntu一条命令下载MCU固件

    现在很多项目开发都逐渐的迁移到Linux环境下。但是Linux开发单片机就没有像Windows下开发那么方便,它没有对应开发工具(KEIL,IAR等),它们自带烧录等功能。所以在Linux上开发单片机需要安装下载固件的工具--JLink。
    的头像 发表于 05-12 11:54 867次阅读
    <b class='flag-5'>Ubuntu</b><b class='flag-5'>一条</b><b class='flag-5'>命令</b><b class='flag-5'>下载</b><b class='flag-5'>MCU</b><b class='flag-5'>固件</b>

    Ubuntu一条命令下载MCU固件

    现在很多项目开发都逐渐的迁移到Linux环境下。但是Linux开发单片机就没有像Windows下开发那么方便,它没有对应开发工具(KEIL,IAR等),它们自带烧录等功能。所以在Linux上开发单片机需要安装下载固件的工具--JLink。
    的头像 发表于 05-24 15:57 843次阅读
    <b class='flag-5'>Ubuntu</b><b class='flag-5'>一条</b><b class='flag-5'>命令</b><b class='flag-5'>下载</b><b class='flag-5'>MCU</b><b class='flag-5'>固件</b>

    ubuntu网络配置命令

    Ubuntu种广泛使用的开源操作系统,其网络配置相对来说比较简单和直观。在本文中,我将向您介绍如何使用命令行设置和管理Ubuntu的网络配置。
    的头像 发表于 11-27 17:02 3100次阅读