STM32下载调试驱动问题

No Cortex-m SW device found解决办法

16.07.14

今天工作,遇到一个问题:用jlink采用SW下载模式时,一直显示No Cortex-m SW device found。驱动都是装好的,之前采用20pin的jtack下载模式都是好好的,换装了好几次驱动,因为本机是win10,以为可能是win10的兼容性问题,就换用win XP虚拟机,但还是未能解决这一问题。直到老板说在他电脑上可用,我灵机一动,合不把他的驱动拷过来?

Jlink的驱动一般网上下载为宜安装包,就和正常安装软件一样,但安装后的文件可以自由拷贝,不涉及注册表。大多数驱动都是如此。

使用jink下载器,进行SW下载模式进行下载。

  1. keil设置:右键单击工程名->

  2. 驱动设置,将压缩包解压,复制如下文件

    到keil安装目录下的ARM->segger下:

放在我的百度云软件->驱动文件夹下:http://pan.baidu.com/s/1nuX8yRR

关于win10自动安装驱动

按网上教程,没有很好的解决win10自动安装驱动的问题。

后探索到如下办法:

大多数可移动设备驱动的本质就是一个.sys文件,无论是我们自动安装还是浏览本机文件安装,最终window都会自动下载或拷贝一份该驱动对应的.sys文件到C:\Windows\System32\drivers文件夹下。

以及一份详细的驱动文件到C:\Windows\System32\DriverStore\FileRepository文件夹下

若要拒绝自动安装驱动,首先断网,这样windows就无法从互联网下载驱动,然后再上述两个文件下把对应驱动的.sys文件和备份文件夹删了

注:删.sys文件前首先要卸载设备,并删除设备文件;

若FileRepository文件夹下的驱动备份文件夹无法删除,提示需要某某权限,可参照本人的另一篇教程:

WIN10删除或更改需要SYSTEM或ADMINISTRATORS权限的文件夹

之后,连接设备,或"扫描检测硬件改动",设备出现感叹号,右键更新设备驱动,定位到自己下载好的驱动目录下。

此法也可用于处理当某一个设备安装多个驱动时,删除无用的驱动文件,防止无用的驱动文件干扰有用的驱动文件

JTAG与SW下载

SW连接模式:

JTAG连接模式:

Serial Wire Mode Interface

The MCBNUC1xx board also supports the Serial Wire Mode of Cortex-M0 based devices. In Serial Wire mode, only the pins TCLK and TMS are used. TDO is an optional trace data output pin.

串行接口线模式
MCBNUC1xx板的同时也支持了串行线模式的基础Cortex-M0设备。在串行线模式,只有针TCLK和TMS使用。TDO数据输出引脚是一个可选。

现在可以做成这种模式:

参考文章:ARM菜鸟:JLINK与JTAG的区别

SWD与JTAG之间的区别

附:

调试工具

link仿真器

  [1] J-LinkJ-Link是SEGGER公司为支持仿真ARM内核芯片推出的JTAG仿真器。配合IAR EWAR,ADS,KEIL,WINARM,RealView等集成开发环境支持所有ARM7/ARM9内核芯片的仿真,通过RDI接口和各集成开发环境无缝连接,操作方便、连接方便、简单易学,是学习开发ARM最好最实用的开发工具。产品规格:电源USB供电,整机电流 <50mA 支持的目标板电压 1.2 ~ 3.3V,5V兼容目标板供电电压 4.5 ~ 5V (由USB提供5V) 目标板供电电流最大300mA,具有过流保护功能工作环境温度 +5℃~ +60℃存储温度 -20℃~ +65℃湿度 <90%尺寸(不含电缆) 100mm x 53mm x 27mm 重量(不含电缆) 70g 电磁兼容 EN 55022, EN 5502 。

JTAG

JTAG是英文"Joint Test Action Group(联合测试行为组织)"的词头字母的简写,该组织成立于1985 年,是由几家主要的电子制造商发起制订的PCB 和IC 测试标准。JTAG 建议于1990 年被IEEE 批准为IEEE1149.1-1990 测试访问端口和边界扫描结构标准。该标准规定了进行边界扫描所需要的硬件和软件。自从1990 年批准后,IEEE 分别于1993 年和1995 年对该标准作了补充,形成了现在使用的IEEE1149.1a-1993 和IEEE1149.1b-1994。JTAG 主要应用于:电路的边界扫描测试和可编程芯片的在线系统编程。

时间: 2024-10-10 14:41:08

STM32下载调试驱动问题的相关文章

如何使用串口来给STM32下载程序

前言 第一次学习STM32的时候,不知道有调试器这个东西,所以一直是通过串口来给STM32下载程序,下载速度也还算可以,一般是几秒钟完成.后来用了调试器,可以直接在Keil环境下进行下载,而且还可以进行在线调试,所以后来就很少使用串口来下载程序了.前几天在uFUN试用群里看到有几个朋友在使用串口下载程序时,遇到了各种各样的问题,所以在这里简单介绍一下如何通过串口来给STM32下载程序. STM32的启动模式介绍 从STM32参考手册上,可以查阅到,STM32的启动模式,共有下列三种,可以通过BO

STM32 USB转串口驱动移植到SylixOS中遇到的问题总结

1. 简介         由于客户项目需求,需要在STM32的硬件平台上实现USB转串口的功能,由于ST公司基于STM32硬件平台实现了相应的USB库以方便开发者进行开发,因此,在SylixOS下实现USB转串口功能时对该USB库进行了移植.由于该USB库的实现是基于STM32的裸机代码实现,因此在移植的过程中,不需要做过多的修改.         下面章节主要介绍在移植STM32的USB转串口驱动到SylixOS下遇到的问题以及对应的解决方法.对于其中的有些解决方法在移植STM32其他外设驱

Window10中利用Windbg与虚拟机(window7)中调试驱动建立方法

想起自己的windbg配置就转载:eqera的windows内核调试配置,真的是获益良多希望他不会介意我转载他的博客,帮了我很多,记录下来给我也给大家, 其中我主要看的是VMWare的pipe建立,而我有些分享是在vs2015中打上DDK,然后在开始菜单window kits下找见windbgx86或者是你想要用的类型,然后 发送快捷方式到桌面利于以后用.发到桌面后,在属性插入你放置的的符号的路径,让然最后别忘了在windbg检查路径是否正确. eqera他的解述给了我很多帮助,可以耐心解读.下

kobox: key_proc.c -v1 如何使用proc文件系统调试驱动

使用proc文件系统可以很方便调试驱动,查看驱动中的一些数据 平台:TQ2440 系统版本: [email protected]:/mnt/shared/kobox# uname -a Linux ubuntu 3.11.0-12-generic #19-Ubuntu SMP Wed Oct 9 16:12:00 UTC 2013 i686 i686 i686 GNU/Linux 其实在3.x中创建proc文件系统和在2.x中创建是有所区别的,这里需要注意下,在2.6.x中创建起来更加方便 这里

STM32硬件IIC驱动设计(转)

源: STM32硬件IIC驱动设计 参考: STM32—硬件IIC主机通信 STM32’s I2C 硬件BUG引发的血案(qzm) 解决STM32 I2C接口死锁在BUSY状态的方法讨论 原文地址:https://www.cnblogs.com/LittleTiger/p/10142844.html

实战windbg调试驱动例子

关于VM和WINDBG的基本配置请参考相关的文档.(在这里给各位一篇不错的文章,就是jiurl老大写的<  利用VM使用windbg  >) 好了,废话少说,让我们整点干的 :-)既然我们要分析的是sr.sys,当然我们先要看的就是目标机加载的驱动程序的位置了,sr.sys是XP系统系统还原的主体部分,它是建立在NTFS文件分区格式下的一个驱动,说白了 sr.sys其实就是ntfs.sys的filter driver.kd>!driversBase       Code Size    

stm32下载程序,拔了调试器不能运行程序

A:肯定是只拔了仿真器与电脑连接的那端,然后把另外端依然接在板子上.我说的没错吧 B: 对的,这样就会一直复位吗 这是复位的问题,当JLINK在板子上连接的时候,断电情况下,会一直把RESET拉低,导致芯片一直处在复位状态,所以不能正常工作. 把jlink或stlink和stm32板的的连接排线(jtag 接口)也拔掉,这个时候主板就可以工作了. https://www.amobbs.com/thread-5332856-1-1.html http://bbs.21ic.com/icview-4

SWD模式下下载调试STM32程序的方法

http://wenku.baidu.com/link?url=pI-XqLASLa_DYQl95OvsE-TGjfu_orN_qukqSdT7nTQzSzZpGfYbEwkEWOOsNk8bLKxFhWxhgNwBSf_ba7GT14zGRGt9pjTsDfXOocfj-rq

STM32下载报错invalid rom table

stm32单片机也用了蛮长时间了,这次遇到的小问题还是蛮有趣的,在这里分享给大家.一起共勉: 今天调试一个stm32板子和往常的习惯一样,会一部分一部分的焊接,今天调试发现下载程序时候报错:invalid rom table.复制到百度里面搜索发现 不是我第一个遇到这样的问题,请参考如下网页: http://blog.csdn.net/yufengzheyang/article/details/76954121 他们遇到超频的时候死掉的问题,我试了是拉高boot1,boot0低电平可以clear