近期做研究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. [百度之星2014资格赛] Disk Schedule 报告

    Disk Schedule Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) To ...

  2. Codeforces Beta Round #3 A. Shortest path of the king 水题

    A. Shortest path of the king 题目连接: http://www.codeforces.com/contest/3/problem/A Description The kin ...

  3. 技术分享:杂谈如何绕过WAF(Web应用防火墙)(转)

    0×01开场白 这个议题呢,主要是教大家一个思路,而不是把现成准备好的代码放给大家. 可能在大家眼中WAF(Web应用防火墙)就是"不要脸"的代名词.如果没有他,我们的" ...

  4. 1前端案例-tag标签+随机位置

    tag标签随机位置+js数组随机+js添加一段html代码段 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN ...

  5. C# base64编码的字符串与图片互转

    protected string ImgToBase64String(string Imagefilename) { try { Bitmap bmp = new Bitmap(Imagefilena ...

  6. MFC进度条刷新处理

    m_p.SetRange(0,1000); m_p.SetStep(1); for (int i=0;i<1001;i++) { m_p.SetPos(i); Sleep(10); MSG ms ...

  7. JS中eval函数的使用

    /*************************************************注册用户证件号 复选框 combox循环赋值**************************** ...

  8. JS,jquery动态向已经存在的css文件中添加class样式

    $("h1,h2,p").addClass("blue") $(".class")addClass("class_name&quo ...

  9. 如何 RESTFul 你的服务(译)

    原文:http://reynders.co/how-restful-is-your-service/发表于:2013年9月 如今无论是社交媒体平台还是企业解决方案,Web services都不出不在. ...

  10. iOS:quartz2D绘图(绘制渐变图形)

    quartzD可以用来绘制渐变图形,即图形向外或向内发散,会变得越来越模糊. 渐变分为线性渐变和径向渐变,所谓线性渐变,就是图形以线的方式发散,发散后一般呈现出矩形的样子:而径向渐变,就是以半径的大小 ...