IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 【STM32】(二)使用拾遗 -> 正文阅读

[嵌入式]【STM32】(二)使用拾遗

前言

??这篇博客主要是记录使用STM32过程中的一些问题与经验。

一、仿真器STLink&JLink的使用

??仿真器可以说是开发STM32非常有用的工具之一了,之前我一直是在用那种十几块钱的STLink v2模块,如下图所示。
请添加图片描述
但是最近在使用它的时候,直接不能识别USB设备了。。。。在这里插入图片描述
说实话,看到这个我基本觉得这个STLink寄了,上网一搜,发现这种STLink是盗版的,稳定性不行,可能今天用着明天就坏了。。。但是,我还是本着好奇的想法,把这个STlink拆开了,直接拔掉它外表的套子就行。
请添加图片描述
然后意外发现其核心芯片竟然就是STMF103C8U6(和常见的C8T6不一样的地方只有封装,它的焊盘相对更短),而且还预留了四个引脚,(用万用表的通断档对照C8T6的引脚测了一下,发现就是VCC,SWIO,SWCLK,GND四个引脚)感觉和一般的单片机开发板没什么区别,于是就想着用另一个好的STLink来下载程序,于是,一晚上的折腾就开始了。。。
??首先是发现新买的STLink竟然显示无法连接!一开始以为是坏STlink导致的,然后插回好的C8T6的开发板,竟然还是无法连接!!!当时就觉得是不是这个新的STLink也有问题,然后照着报错信息(包括没有检测到目标板、内部指令错误等问题)在网上找了一通,各种教程都试了,都不好使,于是又试了一下另一个Jlink,发现可以检测到,但是无法下载程序,当时就懵逼了,以为这些仿真器都坏掉了。。。总之当时心情非常糟糕,也就没再研究了。第二天白天脑子清醒了再去试,这才基本搞懂了之前遇到的问题。
??故事到此结束,接下来是总结部分:

  • 1. 如果实在解决不了问题,建议和朋友一起看或者等自己脑子清醒、心态平和的时候再仔细研究一下,这点很重要!

  • 2. 网上买的那种便宜的STLink确实稳定性不好,(也不保证贵的一定好)很有可能突然就出现类似于我遇到的问题,所以最好有备件可用。

  • 3. STLink和Jlink似乎都不能为芯片供电,因此,烧写程序时,STM32芯片要单独供电,但那种便宜的STLink似乎反而可以,这一点倒是影响不大,记住就行了,不要被VCC引脚电压不是3.3V惊到就行了。

  • 4. 选择一个仿真器之后,一定要先在Keil里面设置一下。 以STlink为例。
    在这里插入图片描述
    如果你①插上了STLink;②安装了STLink的驱动;③STLink与目标板接线没有问题;④目标开发板上电了,那么在settings中就能看到检测到的目标板芯片的型号。如果没有的话,就按照上面的顺序依次检查吧。
    在这里插入图片描述
    另外,还需要注意的是下面的port选项,到底是选择SWD协议还是JTAG协议,这个和使用的仿真器有关,比如STLink似乎就只支持SWD协议,但是我用的JLink支持两种协议,而且这两种协议对应的引脚也是一样的。

  • 5. 方便查阅起见,这里也放两张引脚图。
    在这里插入图片描述
    在这里插入图片描述
    其中,主要需要接的就是四根线:VCC,SWDIO(TMS),SWCLK(TCLK),GND(一般连20号引脚),注意缺口的位置就行。

  • 6. 程序烧入完成之后要按下复位键才能运行? 这个是我之前遇到的一个问题,在网上找到一个教程,即①Boot0和Boot1都接地;②在仿真器的settings中设置“Reset and run”及取消勾选Pack标签页下的Enable选项,参考下面两张图。
    在这里插入图片描述
    在这里插入图片描述

  • 7. 如何修复STLink或者自己自制一个STLink,在遇到前文提到的那个USB设备无法识别的问题之后,我当时有点不甘心,想着有没有什么方法可以复原它,在网上找了很多资料,这里简单总结一下,有兴趣的朋友可以按照教程试一下。

  • 8. 使用JLink提示“the connected j-link is defective” 这个问题也是那天测试JLink时遇到的,这个问题在于Jlink固件和驱动不匹配,一般是固件版本低于驱动版本,因此解决这个问题也是两种方法:升级固件或者降低驱动等级。但是听说升级Jlink固件可能会造成不可逆的后果,而且操作也比较麻烦,所以一般是采用降低驱动等级的方法。参考这个教程可以下载到更低版本的驱动,然后替换掉Keil安装目录下(Keil_v5/ARM)的Segger文件夹即可。
    ??但是!需要注意!!! 在替换根目录下的文件夹时,一定一定一定要先备份,因为很有可能替换之后你的Keil就打不开了,或者是闪退,这样你就得重装一遍,非常麻烦!
    ??相比于自己一个一个版本去试,更方便的还是在网上下载那种已经确定可以用的文件夹,这里推荐一个资源。没有币的可以考虑一下某宝。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-05-09 12:53:52  更:2022-05-09 12:55:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/30 0:57:12-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码