
STM32
文章平均质量分 65
一只爱做笔记的码农
这个作者很懒,什么都没留下…
展开
-
【STM32】cmsis-dap调试器-OpenOCD功能集成进CubeIDE中
被自己买的Jlink真是要整烦了一下连不上,一下固件掉升级,一下说是D版不给调试MDZZ于是乎决定,我买了个CMSIS-DAP调试器,决定放弃JLink这等烂货…原创 2023-03-01 21:54:23 · 3560 阅读 · 0 评论 -
【Jlink & C#】通过C#实现Jlink RTT上位机的功能
某天看到安富莱家的自己开发的调试器可以实现输出中文调试信息到自己编写的Jlink RTT上位机上,觉得无比神奇,略好奇到底是如何做的,找了很久,发现其上位机的对应的实现好像也没有完全开源出来。后来经过很多搜索确认,知道了几个事实:那么有没有可能用C#来控制Jlink呢?答案是,有!!!解决思路在于,C#调用JLinkARM.dll里面的函数这里转载下我认为很有意义的发现结合以上的几个发现,加上我自己的测试,我把我对接JLinkARM.dll的C#接口分享出来,不保证都能用,我只是测试了几个常用的功能,R原创 2022-08-22 21:54:12 · 6678 阅读 · 26 评论 -
【STM32】H743的25MHZ外部晶振下480MHz时钟的CubeMX配置图
备忘有时候临时调一个外设做实验需要快速搭建工程的时候,老忘记配置的数据再补一段代码格式的void SystemClock_Config(void){ RCC_OscInitTypeDef RCC_OscInitStruct = {0}; RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0}; /** Supply configuration up原创 2022-03-06 08:06:00 · 2557 阅读 · 0 评论 -
【STM32】最近脑洞的一个前端监测系统
接上帖STM32H743IIT6开发板+LAN8720+W25Q128移植RT-Thread(包含文件系统+TFTP+web服务器+AJAX前端与服务器CGI联动)上次已经搞清楚了RTT下Web服务器联动前端CGI的方法然后我进一步脑洞了一个基于前端的监测系统,下位机就是我上次用的H743板子下位机还是上次那个平台,就是RTT系统多装了一个cJSON,这里不过多讲cJSON的用法。主要讲讲套路下位机通过JSON把需要的数据包装好,通过CGI接口,响应前端AJAX的请求,将需要的数据以JSON发原创 2022-03-04 09:06:57 · 924 阅读 · 0 评论 -
【STM32 H7】H743各个内存块地址分布备忘
目的因为项目上链接时出现bug,没有考虑全面。故记录H743内存块地址分布备忘原创 2021-09-14 19:37:18 · 2873 阅读 · 0 评论 -
【W5500】STM32 H743驱动W5500进行UDP收发
前景提要STM32 H743确实是个好芯片,但是这个MAC只有一个真是让我觉得不太够,想整双MAC的A核芯片玩玩,奈何实在也是没得精力弄Linux,虽然imx6ull也是一个好芯片。。。。外挂MAC的方案有很多,最后还是选了W5500…SPI口还是可以的,即是速度拉跨,但是即使10M的以太网也是很不错了,相比串口,CAN啥的100M不指望了,这个SPI应该也跑不到那么高速吧,已经满足需求了实际操作芯片: STM32H743VIT6核心板X宝买的W5500模块自己画了个底板,不想用杜邦线,因为原创 2021-08-15 20:25:38 · 5755 阅读 · 5 评论 -
利用Jlink命令行进行程序下载和数据提取
前景提要有需求快速下载固件到板卡,然后回读出固件中存放的固件CRC32校验值进行版本检查,用JFlash操作太慢.了实现方式假若板卡为H743,在JLink安装目录打开命令行【后期可以通过编写一个上位机一键实现,很方便】//配置SWD接口,CPU为STM32H743VI,正常应该会返回JLink连接成功的信息.\JLink.exe -device STM32H743VI -Speed 4000 -IF SWD//连接,如果正常的话应该会显示出内核信息connect//回读指定地址的1个32位原创 2021-07-22 21:55:13 · 2205 阅读 · 5 评论 -
STM32 H743 ECC内存相关使用说明笔记
目的刚好有需要用到H743的这方面内容,截取核心内容,翻译看看。参考文档【ST官方】H743 参考手册-英文版V7.0【中文版的尚未更新ECC内存相关内容,建议直接看英文的】【ST官方】H743 ECC内存管理应用手册[编号AN5342]H7系列的芯片都是支持ECC【内存纠错】的,算法是SEC-DED啥是ECC内存请自行百度~支持情况汇总数据来自ST的AN5342原文如下:CPU系列支持情况H7X5 H7X7SRAM,I/D Cache都支持ECC保护,原创 2021-01-11 16:41:08 · 3160 阅读 · 1 评论 -
STM32 M7内核芯片【F7/H7】 DWT作延时功能的奇怪现象
有读过关于M核的芯片都可以使用内核DWT调试组件为整个系统提供时间基准的文章时间是很精确还能省掉一个定时器和对应的中断美滋滋但是很奇怪的现象是F7【M7内核】使用后会导致程序在上电以后不能正常运行会卡住,然后复位以后就能正常工作的奇怪现象但是很有意思的是在M4内核的芯片上同样的程序却没有这个现象能够正常的工作目前暂时还没有找到关于这个问题的解释...原创 2020-08-08 08:49:18 · 1385 阅读 · 0 评论 -
STM32H743 FDCAN双CAN过滤表设置
前景提示目前网上我看到的例子多是CAN1实现了过滤表功能,而且只是一个过滤表项,实际项目中肯定会有两个CAN一起开,同时用过滤表的情况的。H系列之前的ST芯片的CAN IP核都是bxCAN,那个的使用方法可以看我之前的写的帖子自己写的F7的CAN总线过滤帖子H系列的CAN升级了,多了TT CAN和FDCAN,然后它内部的设计也是翻天覆地的彻头彻尾改了H系列的CAN多了啥呢这个功能看着就很厉害,更厉害的在后面[ma fan]H743的CAN ID过滤功能【划重点】注意看黄色字的部分,后面原创 2020-09-01 22:30:17 · 6632 阅读 · 11 评论 -
STM32串口DMA做printf【ST Atollic环境】
一般来说重定向printf都是用轮询做的某些场景可能会太慢了,毕竟一个个字节发,不如一整包数据发直奔主题环境: ST的Atollic IDE+Cube MX生成底层驱动芯片: F407VET6+25MHz晶振+芯片运行在168Mhz频率这里就提供主要的源文件供参考使用串口1main.c/* USER CODE BEGIN Header *//** **********************************************************.原创 2020-07-03 09:36:02 · 1205 阅读 · 1 评论 -
STM32 F7的定时器PWM输出和输入捕获相关频率计算公式整理
项目用到了想做一个记录备忘定时器支持的频率默认情况下,都按最大接口时钟频率*2特殊情况请看这个寄存器做普通的定时做PWM输出做PWM输入捕获...原创 2020-04-19 20:43:50 · 2633 阅读 · 3 评论 -
STM32 F7的MAC层过滤使用+实例代码
前景描述我司的以太网实现是LAN8720搭配片上MAC层做的,协议栈用LWIP这种做法应该还是蛮常见的,反正不是LAN8720就是DP83864,再不然就是硬件协议栈的W5500了想想还是有MAC层过滤比较好,随手翻了翻它的手册,W5500好像是没得MAC层过滤的假如数据速率比较高,数据量大,而且外面还有乱七八糟无关的数据往板卡送,我也不知道用这个片子到底好不好LA...原创 2019-11-24 10:22:56 · 17547 阅读 · 2 评论 -
GNU编译器下,出现undefined reference to '__sys_write'等等类似问题的解决方法
在使用GNU编译器编译Cortex-M芯片时,偶尔会出现找不到‘__sys_XXXX’定义的问题如果你把找不到的函数名打出来例如 __sys_writevoid __sys_write(void),然后跳转到声明,你会看到它们都放在一个叫libconfig-arm的头文件里把缺少的函数和变量按照这头文件里的声明在自己写的源文件里补上定义应该就可以消除掉错误。...原创 2019-11-15 11:13:59 · 1061 阅读 · 0 评论 -
STM32的Atollic环境(GNU编译器)下将变量分配到指定的内存区域里
感谢这位老哥的文章,解决了我的疑惑https://blog.youkuaiyun.com/huan447882949/article/details/81081459希望使用STM32 F7的DTCM内存,然后查了查很多帖子都是keil/IAR环境下的因为用的是GNU编译器(Atollic环境),自己弄了弄,可以分配了,于是把它记录下来假如希望分配uint8_t array[10...原创 2019-11-05 19:14:03 · 680 阅读 · 0 评论 -
STM32 F765的CAN总线帧ID过滤的编写方法
项目上需要特定性过滤这样的帧ID板卡A 主CPU ---- 0x102板卡A 从CPU ---- 0x103板卡B主CPU ---- 0x202板卡B从CPU ---- 0x203板卡C主CPU ---- 0x302板卡C从CPU ---- 0x303就是板卡的帧的最低位用来区别主(0)/从(1)CPU,然后对应的高3位...原创 2019-10-26 11:39:26 · 1241 阅读 · 1 评论 -
STM32 F765的串口DMA+IDLE中断的发送接收不定长数据
项目上正好用到了这个功能,特此记录下来备忘,方便后人简单说要注意的几个点串口DMA的初始化 串口IDLE中断的处理 接收和发送的逻辑控制 F7的D-Cache一致性的问题串口DMA的初始化我这里用的是串口3对应的接收和发送DMA mode用的是Normal,不是Circle初始化完引脚,时钟,DMA后记得使能对应的串口中断然后还需要编写一个接收使能的函数,如下执...原创 2019-10-26 11:18:36 · 1241 阅读 · 0 评论 -
STM32 F7 RTC调试记录
外部32.768KHz晶振最好选官方御用晶振——爱普生MC-306 6pF的晶振,贵是贵了些,但是毕竟在官方推荐晶振名单中,可以减少很多不必要的麻烦 匹配电容和电阻这个因PCB设计而异,可能需要6p电容也有可能不需要6p电容,不能一概而论,我这里不焊匹配电容就可以正常起振并走时,焊了反而不准,这种四脚的贴片晶振,不用的引脚一定要接地,晶振下面请多打地过孔,下放尽可能不要有走线 现在的HAL库的...原创 2019-09-18 16:29:46 · 830 阅读 · 0 评论 -
STM32 F7xx + LAN8720+LWIP1.4.1调试坑点记录
最近项目组要用STM32F765开发一个UDP通信的项目PHY用的是LAN8720协议栈LWIP1.4.1HAL库版本为1.15.0网口用的是HR911105A电路图和这个博主一样STM32F407VGT6+LAN8720 调试笔记硬件问题由于一些原因,刚刚打板子回来以后发现有短路的问题,修修补补,然后芯片有虚焊的问题,HAL库中网卡初始化反反复复过不了,通过重新...原创 2019-08-25 19:39:49 · 6437 阅读 · 2 评论