cathy的博客

STM32单片机编程用库函数好还是寄存器好?

库函数和寄存器操作的区别可能和 C 语言与汇编语言的区别差不多吧,都是跟效率有关,但有时候效率并不是唯一指标。

如何写一个健壮且高效的串口接收程序?

学单片机的大概最先、最常写的通信程序应该就是串口程序了,但是如何写出一个健壮且高效的串口接收程序呢?接下来将根据多年的开发经验教你如何编写串口接收程序。

C语言的程序怎么烧进STM32里?

当你用 C 语言写好你的程序之后,如果你想把它运行在 51 单片机中,那么你就要通过具备 51 内核编译能力的编译器去编译成 51 汇编代码。

【MCU】移植AT32库&FreeRTOS教程

随着全球晶圆缺货,ST疯狂涨价,也是时候把目光放到国产 MCU 上。

普通单片机如何实现远程程序升级功能?

随着芯片集成度越来越高,芯片的体积也越来越小,贴片的小封装就不方便放在编程工具上,所以芯片直接焊在电路板上编程,在线编程功能随即流行起来。

单片机IO口模式汇总分析

IO也叫GPIO,即通用输入输出端口,主要有一下几种模式:1、浮空输入模式;2、上拉输入;3、下拉输入;4、模拟输入;5、 推挽输出;6、 开漏输出;7、 复用推挽输出;8、 复用开漏输出。

STM32 | MCU错误代码自动追踪库的使用经验分享

针对HardFault问题的定位,网上有几种方法,大概都是围绕着:在debug模式下,查看一些地址,分析寄存器、函数调用栈等,这是很让人头疼的事情。

STM32输入捕获实验示例详解

我们知道“输入捕获的原理就是:当有效的脉冲变化被捕获那么计数器的值就会自动被捕获/比较寄存器捕获“。

单片机串口接收不定长数据的通用方法

接收完一个字节以后,如果超过了一定的时间,就认为是接收完一帧数据了。首先我们要知道,串口是接收一个字节,就会发生一次中断,如果一帧数据包含10个字节,就会发生10次中断。在接收一个字节以后,会紧跟着接收下一个字节,如果时间超了一定值,就代表一帧数据已经发完了。

STM32串口接收不定长数据原理与源程序

今天说一下STM32单片机的接收不定长度字节数据的方法。由于STM32单片机带IDLE中断,所以利用这个中断,可以接收不定长字节的数据,由于STM32属于ARM单片机,所以这篇文章的方法也适合其他的ARM单片机。