STM32 FLASH 写入不成功问题


遇到一个很奇怪的问题,我从STM32FLASH的0x08024000开始往进些数据,每包1000个字节,前两包写入正常,但是到第三包写入数据的时候发现写入falsh的数据不完整,到0x0247fB这块后后面都是ff没写进去数据......
遇到一个很奇怪的问题,我从STM32FLASH的0x08024000开始往进些数据,每包1000个字节,前两包写入正常,但是到第三包写入数据的时候发现写入falsh的数据不完整,到0x0247fB这块后后面都是ff没写进去数据......
除了在智能卡模式下以外,传送期间 TE 位上的“0”脉冲(“0”后紧跟的是“1”)会在当前字的后面发送一个报头(空闲线路)。
一直以来都是使用正点原子的板子,所以一旦换了板子,就要考虑到新板子的晶振问题......
在原子哥的PWM输出例程中,感觉对捕获/比较寄存器(CCR)的设置不太合理。
编码器的种类有很多,什么增量式编码器、绝对值编码器,有轴或者无轴编码器,电压输出、推拉输出、集电极开路输出等等。但不管什么类型的编码器,其目的都类似,得到转动的角度,角速度、位移等。
先说说我今天讲的内容吧,首先:如何用P1口(只有八个引脚哟)实现八个流水灯,然后:如何用P1口实现十六个流水灯。最后,如何用32个引脚,P1,P2,P3,P4实现1024个流水灯呢?
在最近的项目测试中发现,SPI 通信总是莫名其妙的失败,查看寄存器发现 SPI 已经被停止了。根据手册,SPI 在异常情况下会被强制停止(SPI 的使能为被清零),而根据波形显示通信过程没有问题。
首先说一下,我之前的开发流程是:VSCode 编辑代码 + Keil 编译及调试。Keil 的调试功能虽然很强大,但是多数功能需要配合 ARM 自家的 ULINKpro 才可以用,例如 Performance Analyzer、Event Viewer 等。而我手头只有Jlink 和 ULINK 非 pro 版的…
在最近的项目中,随着代码量的不断增加,Keil 的编译速度瓶颈越来越明显!有的问题往往是调试一分钟,编译半小时!编译过慢的问题已经严重影响工作效率,于是开始寻找一个替代品!
Ozone 调试
起初,在 SEGGER 官网发现了一个名为 Ozone 的 Jlink 专用的调试器,非常小巧,调试也挺好用。不过,它仅仅就是个 Jlink 配套的调试器,不能编译代码。如果使用它,开发流程就是:VSCode 编辑代码 + Keil 编译 + Ozone 调试。
SPI 主机要求只发送数据,不进行接收(主机只有数据输出引脚)! 这就要求在从机 SPI 可以不发送数据,节省一个 MCU 的 IO。
本文主要介绍在嵌入式开发中用来输出log的方法,这些方法都是在实际开发过程中使用过的。