近期做研究openpilot和crazyflie2.0,都须要在Linux进行代码的编写和烧录,所以研究了下Linux下如何使用Jlink,还有开源的支持多个仿真器的openocd,可是困难重重。总是出现错误。心灰意冷,之后沉下心来研究了下,记录下心得。

首先,openocd是个通用的烧录平台,支持多家的仿真器,比方Jlink,Ulink。ST-LINK等等。基本市面上的都支持,另外JLink本身也有DBG能够在线调试,所以刚開始我尝试用openocd,

环境例如以下:

1,Ubuntu1304

2,JLink和ST-LINK仿真器

步骤例如以下:

1,切换到root,插上JLink或者ST-LINK之后。使用lsusb命令能够查看到相应的仿真器usb信息

2,安装libusb-1.0.9,解压安装

./configure

make

make install

3,下载openocd0.9.0,解压安装,注意这里因为仅仅是用到jlink和stlink。所以configure的时候仅仅是enable了这两个仿真器

./configure --enable-jlink --enable-st-link

make

make install

cd tcl/

假设Jlink调试stm32f1x,使用例如以下命令:

openocd -f interface/jlink.cfg -f target/stm32f1x.cfg

假设Jlink调试stm32f4x。使用例如以下命令:(測试挂了)

openocd -f interface/jlink.cfg -f target/stm32f4x.cfg

假设ST-Link调试stm32f1x,使用例如以下命令:(我的ST-LINK是V2版本号的)

openocd -f interface/st-link-v2.cfg -f target/stm32f1x_stlink.cfg

假设ST-Link调试stm32f4x,使用例如以下命令:(我的ST-LINK是V2版本号的)

openocd -f interface/st-link-v2.cfg -f target/stm32f4x_stlink.cfg

不幸的是,红色部分的測试挂掉,Jlink总是找不到边界。而我终于要用的就是这样的组合。所以仅仅能寻找其它的方法。于是我又尝试了使用Jlink自带的工具。

4,下载JLink_Linux_V422解压

cd JLink_Linux_V422/

./start

Jlink插在STM32F4x的板子上,居然很顺利的通过了,至于openocd为什么不行?这个问题之后再尝试。

Ubuntu13.04使用Jlink和ST-Link V2烧写STM32F1x和STM32F4x的更多相关文章

  1. Jlink使用技巧之合并烧写文件

    前言 IAP(In-application-programming),即在应用中编程.当产品发布之后,可以通过网络方便的升级固件程序,而不需要拆机下载程序.IAP系统的固件一般由两部分组成,即Boot ...

  2. 使用st link v2向stm32下载和调试程序

    st官网 正版ST-link/V2引脚定义和注意事项 分为ST-LINK/V2和ST-LINK/V2-ISOL两种型号 是STM8和STM32微控制器(MCU)系列的在线调试器和编程器(还是下载器.仿 ...

  3. keil5配置ST Link v2 for STM32F10x

    请务必先安装MDKCM525.EXE,否则会找不到闪存编程算法

  4. ST Link 调试问题总结

    用过ST Link调试工具的同事都应该知道,ST Link是一个很不错的调试工具,它具有小并且功能齐全,价格便宜等特点,现在市场上普遍是下面这两种ST Link, 但如果用的比较多,会发现有时候会存在 ...

  5. 使用JLink间接烧写S3C2410、S3C2440开发板Nor、Nand Flash的方法

    1. 简要说明 JLink的调试功能.烧写Flash的功能都很强大,但是对于S3C2410.S3C2440的Flash操作有些麻烦:烧写Nor Flash时需要设置SDRAM,否则速率很慢:烧写Nan ...

  6. JLINK烧写BIN文件到nand、norflash、SDRAM

    1. 简要说明 JLink的调试功能.烧写Flash的功能都很强大,但是对于S3C2410.S3C2440的Flash操作有些麻烦:烧写Nor Flash时需要设置SDRAM,否则速率很慢:烧写Nan ...

  7. Jlink使用技巧之烧写SPI Flash存储芯片

    前言 大多数玩单片机的人都知道Jlink可以烧写Hex文件,作为ARM仿真调试器,但是知道能烧写SPI Flash的人应该不多,本篇文章将介绍如何使用JLink来烧写或者读取SPI Flash存储器, ...

  8. JLink间接烧写【转自armobbs】

    1. 简要说明 JLink的调试功能.烧写Flash的功能都很强大,但是对于S3C2410.S3C2440的Flash操作有些麻烦:烧写Nor Flash时需要设置SDRAM,否则速率很慢:烧写Nan ...

  9. 6.ST LINK 下调试异常

    ☆1.无法进入main函数(printf的影响)***为什么有时候可以进入main函数,有什么进入不了main函数?    <1> 因为C语言默认使用显示器作为标准输出的设备,所以如果想利 ...

随机推荐

  1. [转]mybatis 的简单使用

      需要用到的包:(这里只是其中一个版本,其他的百度) mysql-connector-java-5.1.6-bin mybatis-3.2.2 先看项目目录: 配置文件mybatisconfig.x ...

  2. [转]详解spring 每个jar的作用

    spring.jar 是包含有完整发布模块的单个jar 包.但是不包括mock.jar, aspects.jar, spring-portlet.jar, and spring-hibernate2. ...

  3. BabyLinux制作过程详解

    转:http://www.360doc.com/content/05/0915/14/1429_12641.shtml BabyLinux制作过程详解 作者:GuCuiwen email:win2li ...

  4. 【mybatis】mybatis多表联查,存在一对多关系的,实体中使用List作为字段接收查询结果的写法

    实体如下: IntegralGoods  积分商品 IntegralGoodsImg 积分商品图片 ShelfLog 积分商品自动上架记录 IntegralGoods :IntegralGoodsIm ...

  5. node.js创建并引用模块

    app.js var express = require('express'); var app = express(); var con = require('./content'); con.he ...

  6. Mac DBeaver Client home is not specified for connection解决办法

    问题: 一般出现这个问题是由于DBeaver 程序无法自动找到数据库的安装目录,在进行数据的导入导出时无法执行,这是因为执行指令需要数据库相关命令的支持. 解决办法: 我用的是mysql,这里拿mys ...

  7. vim的批量列编辑

    使用快捷键:control+v进入状态“VISUALBLOCK”,然后使用方向键向下选择,选择多行,向右选择,选择多列,使用快捷键d删除所选. 再次进入VISUAL BLOCK状态,选择多行多列, 使 ...

  8. Android MIFARE NFCA源码解析

    Android MIFARE NFCA源码解析TagTechnology定义了所有标签的共有接口类BasicTagTechnology 实现了TagTechnology的一些接口 再有具体的标签协议继 ...

  9. centos7搭建svn服务器并支持http方式访问

    因为公司其他人员需要,需要在服务器上搭建svn服务,途中遇到不少问题,做下记录 第一步,安装svn 默认centos7是已经安装了svn即subversion 检查是否安装 rpm -qa subve ...

  10. Tile based Rendering //后面一段是手机优化建议

    https://www.imgtec.com/blog/a-look-at-the-powervr-graphics-architecture-tile-based-rendering/ 一种硬件结构 ...