
嵌入式C语言程序调试宏使用技巧!
在Linux中使用gcc编译程序时,对于调试目的的语句有一些特殊的语法。编译器在进行编译过程中会生成一些宏,我们可以利用这些宏来打印当前源文件的相关信息,主要包括当前文件名、当前运行的函数和当前程序行号。这些宏可以在调试过程中提供有用的信息。

一种串口命令控制台的实现!
对于那些曾经体验过Linux强大串口Shell命令控制台的朋友们来说,是否非常羡慕它的功能?如果我们的低端MCU,比如STM32F系列,也能拥有这样的交互能力,将会大大简化调试、维护和配置的繁琐工作。

嵌入式BootLoader与APP固件如何合并?
嵌入式固件通常分为BootLoader和App两个部分。BootLoader主要用于启动校验、App升级、App版本回滚等功能,它在CPU上电的第一阶段中运行,并在完成相关任务后跳转至App地址执行应用程序。

单总线的抽象分层!
onewire(单总线)是由DALLAS公司推出的一种外围串行扩展总线技术。如其名,它采用一条信号线进行通信,能够同时传输时钟信号和数据,并支持双向通信。单总线具有节省I/O口线、资源结构简单、成本低廉、易于扩展和维护等优点。

基于RT-Thread的智能指纹门锁
该项目使用W600的TW-03 WIFI模组作为主控芯片,使用FPC1020A作为指纹识别模块。门锁的开启动作使用MG996R舵机来实现。W600运行RT-Thread操作系统,并通过OneNET连接进行数据交互。

一些Makefile通用模板!
在Windows下进行开发时,许多集成开发环境(IDE)都内置了编译器,如Visual Studio,它提供了”一键编译”的功能。完成代码编写后,只需点击一次操作,就可以完成编译、链接并生成目标文件。

一个实用的单片机软件框架
这是一种无操作系统的微控制器单元(MCU)实用软件框架,包括任务轮询管理、命令管理器、低功耗管理、环形缓冲区等实用模块。该系统广泛采用自定义段技术,以减少模块之间的耦合关系,从而大大提高程序的可维护性。