草庐IT

STM32L4 Keil ST-Link 连接失败

ST-LINK连接失败的因素,以我个人的经历而言有两种:一个是驱动问题,一个是插线问题。连接正常的情况如下图所示,SWDIO能显示你的设备信息:注意使用SW端口,JTAG端口导致无法识别设备。还有一个注意点:使用STM32CubeMX配置工程的时候要把SYS->Debug设置成SerialWire。1️⃣驱动问题:ST-Link是否闪烁红灯?如果你的ST-Link插上电脑之后闪烁红灯,说明你的驱动出现了问题。打开计算机管理->设备管理:解决办法:“其他设备”是否显示STM32STLink。如果显示,代表你没有安装驱动;如果没有,证明你已经成功安装驱动,再检查下一步。“通用串行总线设备”是否显示

STM32L4 Keil ST-Link 连接失败

ST-LINK连接失败的因素,以我个人的经历而言有两种:一个是驱动问题,一个是插线问题。连接正常的情况如下图所示,SWDIO能显示你的设备信息:注意使用SW端口,JTAG端口导致无法识别设备。还有一个注意点:使用STM32CubeMX配置工程的时候要把SYS->Debug设置成SerialWire。1️⃣驱动问题:ST-Link是否闪烁红灯?如果你的ST-Link插上电脑之后闪烁红灯,说明你的驱动出现了问题。打开计算机管理->设备管理:解决办法:“其他设备”是否显示STM32STLink。如果显示,代表你没有安装驱动;如果没有,证明你已经成功安装驱动,再检查下一步。“通用串行总线设备”是否显示

Palindrome Linked List

SourceGivenasinglylinkedlistofcharacters,writeafunctionthatreturnstrueifthegivenlistispalindrome,elsefalse.题解1-使用辅助栈根据栈的特性(FILO),可以首先遍历链表并入栈(最后访问栈时则反过来了),随后再次遍历链表并比较当前节点和栈顶元素,若比较结果完全相同则为回文。又根据回文的特性,实际上还可以只遍历链表前半部分节点,再用栈中的元素和后半部分元素进行比较,分链表节点个数为奇数或者偶数考虑即可。由于链表长度未知,因此可以考虑使用快慢指针求得。Java/***Definitionfors

Palindrome Linked List

SourceGivenasinglylinkedlistofcharacters,writeafunctionthatreturnstrueifthegivenlistispalindrome,elsefalse.题解1-使用辅助栈根据栈的特性(FILO),可以首先遍历链表并入栈(最后访问栈时则反过来了),随后再次遍历链表并比较当前节点和栈顶元素,若比较结果完全相同则为回文。又根据回文的特性,实际上还可以只遍历链表前半部分节点,再用栈中的元素和后半部分元素进行比较,分链表节点个数为奇数或者偶数考虑即可。由于链表长度未知,因此可以考虑使用快慢指针求得。Java/***Definitionfors

关于在iar+j-link上的坑坑洼洼

引言iar版本为8.32,j-link驱动版本为4.34,对应的是stm32ARMcortex-m3,文末有本文的软件和工具,以及需要的文件的链接(免费)第一坑:iar注册机不能注册iar9解答:iar的注册机目前并不支持iar9,只支持iar8注册成功后:第二坑:j-link无法被设备识别解答:是否安装j-link驱动j-link版本是否正确---版本太高也会出现识别不出来,我的是4.34,官网最低版本为5.0j-link是否是好的---当初我拿到一个坏的j-link弄半天如果j-link是坏的,需要自己重新刷新固件---具体教程查询其他博客,我只有软件成功检测到j-link第三坑:j-li

关于在iar+j-link上的坑坑洼洼

引言iar版本为8.32,j-link驱动版本为4.34,对应的是stm32ARMcortex-m3,文末有本文的软件和工具,以及需要的文件的链接(免费)第一坑:iar注册机不能注册iar9解答:iar的注册机目前并不支持iar9,只支持iar8注册成功后:第二坑:j-link无法被设备识别解答:是否安装j-link驱动j-link版本是否正确---版本太高也会出现识别不出来,我的是4.34,官网最低版本为5.0j-link是否是好的---当初我拿到一个坏的j-link弄半天如果j-link是坏的,需要自己重新刷新固件---具体教程查询其他博客,我只有软件成功检测到j-link第三坑:j-li

Delete Node in the Middle of Singly Linked List

SourceImplementanalgorithmtodeleteanodeinthemiddleofasinglylinkedlist,givenonlyaccesstothatnode.ExampleGiven1->2->3->4,andnode3.return1->2->4题解根据给定的节点并删除这个节点。弄清楚题意很重要,我首先以为是删除链表的中间节点。一般来说删除单向链表中的一个节点需要首先知道节点的前一个节点,改变其指向的下一个节点并删除就可以了。但是从这道题来看无法知道欲删除节点的前一个节点,那么也就是意味着无法改变前一个节点指向的下一个节点,强行删除当前节点将导致非法内存访问

Delete Node in the Middle of Singly Linked List

SourceImplementanalgorithmtodeleteanodeinthemiddleofasinglylinkedlist,givenonlyaccesstothatnode.ExampleGiven1->2->3->4,andnode3.return1->2->4题解根据给定的节点并删除这个节点。弄清楚题意很重要,我首先以为是删除链表的中间节点。一般来说删除单向链表中的一个节点需要首先知道节点的前一个节点,改变其指向的下一个节点并删除就可以了。但是从这道题来看无法知道欲删除节点的前一个节点,那么也就是意味着无法改变前一个节点指向的下一个节点,强行删除当前节点将导致非法内存访问

OpenOCD + DAP-LINK调试ESP32的失败经历(2)

背景https://www.cnblogs.com/liteng0305/p/17018299.html上次使用乐鑫编译好的OpenOCD失败,可能是因为没有开启CMSIS-DAP支持,手动开启编译试一下平台UbuntuLinux5.4.0官方OpenOCD直接下载的OpenOCD没有打开CMSIS-DAP支持aptinstallopenocd下载官方OpenOCD源码打开CMSIS-DAP支持,编译安装可以正常识别CMSIS-DAP调试器,确定硬件没有问题乐鑫魔改OpenOCD下载乐鑫魔改OpenOCD源码打开CMSIS-DAP支持,编译安装运行指令执行失败Error:CMSIS-DAPco

OpenOCD + DAP-LINK调试ESP32的失败经历(2)

背景https://www.cnblogs.com/liteng0305/p/17018299.html上次使用乐鑫编译好的OpenOCD失败,可能是因为没有开启CMSIS-DAP支持,手动开启编译试一下平台UbuntuLinux5.4.0官方OpenOCD直接下载的OpenOCD没有打开CMSIS-DAP支持aptinstallopenocd下载官方OpenOCD源码打开CMSIS-DAP支持,编译安装可以正常识别CMSIS-DAP调试器,确定硬件没有问题乐鑫魔改OpenOCD下载乐鑫魔改OpenOCD源码打开CMSIS-DAP支持,编译安装运行指令执行失败Error:CMSIS-DAPco