有的时候,在调试代码的时候,往往会借助一些硬件调试工具,JTAG就是很好的调试工具。下面来详细介绍一下如何在树莓派上使用JTAG进行调试。
博客地址 : http://blog.csdn.net/shulianghan/article/details/42239705
单片机一般使用Jlink通过SWD或者JTAG接口直接在IDE中在线调试,Linux应用程序通常是加printf输出log去调试,这种方式简单,但是有些隐藏的程序bug只通过加打印信息不那么容易定位,这时可以通过类似单片机调试的gdb调试来实现,本篇为大家介绍linux环境下在线调试环境的搭建,希望对大家有所帮助。
用于arm裸机程序开发的IDE基本有MDK,IAR,还有ADS,也可以选择在linux下安装交叉编译链来进行开发。笔者选择的是MDK作为我进行开发的IDE。下面介绍笔者搭建开发环境的过程。
安装 gcc-arm-none-eabi-5_4-2016q3-20160926-win32(这只是当时我配置时候用的版本,其他版本也是可以的) 记得最后的第3选项打钩,因为自动添加环境变量( 估计是因为自动添加,所以会添加到用户的环境变量下面去,一样可以用,如果自己添加,可以添加到系统的环境变量中去 ) 最后,只要是在你的终端(终端可以使window自带的cmd,也可以是你配置过的模拟linux的终端) ,能够查询到arm gcc的版本,就算是正常安装了,如下所示:
本章主要为大家讲解V7开发板的开发板环境搭建,涉及IDE,下载器和相关小软件的驱动安装。
同样的工程和调试器,换 Win 10 系统,下载调试完美运行。两者的差别就是J-Link 的驱动程序版本问题。原来系统上的驱动程序版本是V6.32i,而现在的驱动程序是 V6.14b,所有很有可能是因为驱动程序版本过低导致的。
平台:stm32,可以推广到其他32位单片机中 开发软件:keil、IAR、SEGGER Embedded Studio for ARM 调试仿真器:stlink、jlink
完整教程下载地址:http://forum.armfly.com/forum.php?mod=viewthread&tid=86980 第7章 STM32H7下载和调试方法(IAR8) 本章教程为
本章教程为大家介绍如何通过MDK5下载程序到芯片里面以及MDK5的调试和配置方法。
随着ARM公司对Cortex系列的推出,采样SWD方式调试成了大家的首选。SWD不仅速度可以与JTAG媲美,而且使用的调试线少得多。很多人在采样SWD方式进行调试时,一般都是采用4线:
我们买开发板的目的就是把电脑上编写编译好的程序烧写到板子上验证学习。因此开发板上一定有个烧写口,例如JTAG烧写口。但电脑上是不会有这个JTAG口的,因此需要一个USB烧写器将两者连接,例如Jlink、OP/EOP。Jlink本来用的人很多,但随着版权意识的提高以及Jlink公司对盗版的打击,Jlink现在用得越来越少了。EesyOpenJtag是OpenJtag的便宜版本,他和我们的开发板是绝配,他可以直接烧写Nand Flash和Nor Flash,操作简单,价格便宜。
现在很多项目开发都逐渐的迁移到Linux环境下。但是Linux开发单片机就没有像Windows下开发那么方便,它没有对应开发工具(KEIL,IAR等),它们自带烧录等功能。所以在Linux上开发单片机需要安装下载固件的工具--JLink。
在上一篇文章中,我们已经可以在Eclipse成功编译工程了。对于一些传说中的大神,这也就够了,他们写完代码,编译,下载看看,不行再来两遍,OK了。但是对于像小编这样的凡夫俗子,程序不调试一下,肯定是不行地。我们来看看Eclipse中如何调试代码。在此我们以STM32F030为例。
最近要使用stm32f103c8t6最小系统板,直接ISP串口下载程序太麻烦,就想着使用swd接口来调试。
通过strongerHuang的教程,实现了SWO的两种调试方法, 1、在keil调试的过程中,使用debug printf viewer打印信息, 2、在STM32 ST-LINK Utility中烧写程序并打印信息。
说明: 1、串口作为经典的调试方式已经存在好多年了,缺点是需要一个专门的硬件接口。现在有了SEGGER的RTT(已经发布有几年了),无需占用系统额外的硬件资源,而且速度超快,是替代串口调试的绝佳方式。 2、RTT的API可以在中断和多任务环境中正常调用。并且JLINK处于MDK或者IAR的调试状态,RTT功能依然可以正常使用。最重要的是速度非常快,普通的JLINK也可以飙到几百KB/S。 3、当前版本的JLINK都支持此功能,含V8,V9和V10。 4、RTT Viewer小软件支持多个虚拟端口消息展示,比如用户可以一个用于标准输出,一个用于错误输出,另一个用于调试输出。根据需要还可以再增加输出窗口。
之前的TWR-K64板子openSDA被同事刷成了jlink固件,估计这哥们喜欢用Jlink呵呵,如果想刷回PEmicro固件,我们该如何做呢,首先先了解下,OpenSDA是一种内置在多款恩智浦评估板中的串行调试器。它是计算机(或其他USB主机)和嵌入式目标处理器之间的桥梁,只需通过一根简单的USB线缆,便可用它进行调试、闪存编程和串行通信。OpenSDA硬件包含一个采用Kinetis® K2x微控制器的电路和一个集成式USB控制器。在软件方面,它集成了大容量存储设备引导加载程序,可以快速、轻松地加载Ope
第一次学习STM32的时候,不知道有调试器这个东西,所以一直是通过串口来给STM32下载程序,下载速度也还算可以,一般是几秒钟完成。后来用了调试器,可以直接在Keil环境下进行下载,而且还可以进行在线调试,所以后来就很少使用串口来下载程序了。前几天在uFUN试用群里看到有几个朋友在使用串口下载程序时,遇到了各种各样的问题,所以在这里简单介绍一下如何通过串口来给STM32下载程序。
趁着前段时间嘉立创和捷配打价格战,一天之内,多次降价,看着真是热闹。捷配降到最低3元一款,而嘉立创降到最低5元一款,都是顺丰包邮,不过嘉立创免颜色费,而捷配不免,本着吃瓜群众的态度,赶紧薅了一把羊毛,做毕业设计时买的元器件还剩一些,就把之前练手画的一块JlinkOB小板投出去了,之前都是用的嘉立创,这次尝试一下捷配,关键是便宜!现在价格战已经结束了,刚才又去两家的官网看了一下,捷配又恢复了30元一款,而嘉立创还是保持5元。用的是网上开源的JlinkOB方案,主控STM32F103C8T6,下载Segger官方的JlinkOB固件,用了一段时间了,还算比较稳定。现在分享给大家,包含Altium版本的PCB文件、原理图文件、固件等,下载链接在文章末尾。
前面两篇文章介绍了边界扫描的基本原理和BSDL文件,本文文章介绍边界扫描测试实际使用的两款软件工具,在后面的实战应用部分,会演示基于STM32和FPGA的边界扫描测试应用。
openocd(http://openocd.org)全名叫做Open On-Chip Debugger,是一个自由开放的片上调试工具和编程工具,目前已经发布到0.10.0版本,目前主流调试器几乎都支持,具体可以查看Open On-Chip Debugger:OpenOCD User’s Guide(http://openocd.org/doc/pdf/openocd.pdf),它的项目托管在sourceforge(https://sourceforge.net/projects/openocd)上,点击下载即可~ 注:ubuntu软件源中也有openocd,但是版本到0.9.0,所以使用拉取源码手动安装。
刚到一个新公司的第一个礼拜。通过web界面更新app总是导致bios失效。又因为是接手一个离职人的项目,调试线已经找不到,所以需要自己做一个。由于自己是个菜鸡,所以做出来的东西也是比较难看,由此记录一下,希望下次能做的美观一点。
JTAG主要使用的有:TRST,TDI,TMS,TCLK,TDO,RESET,GND,(VCC可不连接) SWD主要使用的有:VCC,SWDIO,SWCLK,GND
听卖家介绍说,这是之前挖矿盛行时,定制矿机中的一块HASH算力卡,主要功能是通过串口接收数据,FPGA计算出HASH值,再通过串口输出,由于工作频率较高,还外加了散热器,后来由于矿难,就把矿机中的板卡都处理掉了,遗憾的是没有留下任何软硬件资料。
想要打印调试信息,发现串口不够用了,手边没有USB转TTL模块?代码自己测试好好的,屏蔽了打印信息之后,代码运行异常了,咋整?EASY!今天小飞哥教你如何让你手中的JLINK成为调试利器,10分钟搞不定,你打我~
教程更新中:http://www.armbbs.cn/forum.php?mod=viewthread&tid=108546 第1章 ThreadX USBX初学准备工作 俗话说万事开头难,学习一
详细的记录JLink-V8仿真器刷固件的具体过程,照着做即可成功。持续更新,原创不易!
stlink能干什么? 最基本的功能:下载程序。 一般STM32支持ISP串口下载,也支持stlink、jlink等下载器下载 。 使用stlink、jlink下载要比串口方便很多,在keil里直接点击下载就行了,不需要去选择hex文件,速度上要快很多,主要一点,jlink、stlink能实现硬件仿真调试,程序出问题了可以单步调试找问题。
常见到的电子元器件不为人熟知的内部结构,以下是这些元器件经过切割研磨后的横截面照片,多图预警!
论坛原始地址(持续更新):http://www.armbbs.cn/forum.php?mod=viewthread&tid=99710 第2章 初学RL-USB准备工作 俗话说万事开头难,学习一
论坛原始地址(持续更新):http://www.armbbs.cn/forum.php?mod=viewthread&tid=99514 第2章 初学ThreadX准备工作 俗话说万事开头难,学习
这块板子上的主芯片是一颗 Arm Cortex M3 + DSP 的异构芯片,结构大概是这样的:
本来做的是M484,看好了它的片上高速USB、双SDHC、QSPI FLash等,结果入了新塘第一坑:LQFP64封装是.4间距的,偶直接拖了个STM32F205的封装过来,.5间距的,结果就是下面这样:
7. Segger Embedded studio(个人感觉从V2.0.0之后nrf官方不推SES开发方式了)
stm32下载程序,实用JLink的JTAG下载座,分为实现JTAG的下载和SW的下载
最新教程下载:http://www.armbbs.cn/forum.php?mod=viewthread&tid=95243 第3章 初学RL-TCPnet的准备工作及其快速上手 俗话说万事开头难
完整教程下载地址:http://forum.armfly.com/forum.php?mod=viewthread&tid=86980 第8章 STM32H7的终极调试组件Event Record
该系列博客的应用场景是 Android Studio 下 NDK 编程 , 使用 CMake 构建 C/C++ 工程 ;
JTAG(Joint Test Action Group;联合测试行动小组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试及对系统进行仿真、调试。
俗话说万事开头难,学习一门新的知识,往往难的不是知识本身,而是如何快速上手,需要什么资料和开发环境,一旦上手后,深入的学习相对就要容易些了。
论坛原始地址(持续更新):http://www.armbbs.cn/forum.php?mod=viewthread&tid=93149 第2章 初学RTX5准备工作 俗话说万事开头难,学习一门新
领取专属 10元无门槛券
手把手带您无忧上云