logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

从串口丢数据说起——环形缓冲区的几个实战心得

先说最基本的东西。环形缓冲区本质上就是一个定长数组,加上两个索引——head(写指针)和 tail(读指针)。写数据时 head 往前走,读数据时 tail 往前走。关键在于:走到数组末尾时,绕回开头。这就是"环"的由来。上图画的不太对,应该是head在前,tail在后,先写后读。和普通队列比,环形缓冲区最大的好处是不需要搬移数据。普通数组队列读完前面的数据后,要么整体前移,要么浪费空间。环形缓冲

#单片机#c语言#c++
结构体传参,到底该传值还是传指针?

"结构体一律传指针"是一个流传很广的经验,但经验不等于教条。嵌入式开发里,栈空间可能只有几百字节,CPU 周期要精打细算,代码可能跑在中断上下文里——这些约束决定了不能无脑套用桌面开发的习惯。建议很简单:小结构体传值,大结构体传指针,只读加 const,需要改就用指针。适合你项目的,就是对的。

#c++#单片机
裸机也能玩转多任务——单片机并行处理的实用技巧

本文介绍了一种轻量级的多任务处理方法,适用于资源有限的嵌入式系统。针对不使用RTOS时面临的任务调度问题,提出了三种解决方案: 时间片轮询法:通过记录任务上次执行时间,实现周期性任务调度,确保各任务按设定间隔执行。 任务表驱动:将任务统一管理为数组形式,便于维护和扩展,增删任务只需修改任务表。 状态机编程:将耗时任务分解为多个状态,每次只执行一小步,避免阻塞其他任务。 此外还建议采用"中

#单片机#数据库#嵌入式硬件
在嵌入式系统中,结构体的这 5 种高级玩法

结构体不仅仅是数据的集合,更是内存布局的蓝图和软件架构的基石。掌握这些技巧,你的嵌入式代码将更加优雅高效。

#单片机
在嵌入式系统中,结构体的这 5 种高级玩法

结构体不仅仅是数据的集合,更是内存布局的蓝图和软件架构的基石。掌握这些技巧,你的嵌入式代码将更加优雅高效。

#单片机
裸机也能玩转多任务——单片机并行处理的实用技巧

本文介绍了一种轻量级的多任务处理方法,适用于资源有限的嵌入式系统。针对不使用RTOS时面临的任务调度问题,提出了三种解决方案: 时间片轮询法:通过记录任务上次执行时间,实现周期性任务调度,确保各任务按设定间隔执行。 任务表驱动:将任务统一管理为数组形式,便于维护和扩展,增删任务只需修改任务表。 状态机编程:将耗时任务分解为多个状态,每次只执行一小步,避免阻塞其他任务。 此外还建议采用"中

#单片机#数据库#嵌入式硬件
从串口丢数据说起——环形缓冲区的几个实战心得

先说最基本的东西。环形缓冲区本质上就是一个定长数组,加上两个索引——head(写指针)和 tail(读指针)。写数据时 head 往前走,读数据时 tail 往前走。关键在于:走到数组末尾时,绕回开头。这就是"环"的由来。上图画的不太对,应该是head在前,tail在后,先写后读。和普通队列比,环形缓冲区最大的好处是不需要搬移数据。普通数组队列读完前面的数据后,要么整体前移,要么浪费空间。环形缓冲

#单片机#c语言#c++
面经——嵌入式软件工程师2021面试指南【转】

作者简介2021应届本二,目前年薪20,在某行业头部大厂从事嵌入式多媒体开发(音视频应用方向)。由于没有耀眼的学历,学习的资料和企业实际应用有些偏差,2020年大三时秋招处处碰壁,当时最高只有10k,于是抛开薪资选择了一个自认为不错的方向进行实习。努力终有回报,实习半年,......

#面试#华为#职场和发展
PID算法实现温控

传统位控制算法(二位式)PID概述及公式推导算法的基本结构比例控制及公式推导积分控制及公式推导实现温度读取及显示PID实现温控

#算法
音频应用编程

ALSA 概述alsa-lib 简介sound 设备节点alsa-lib 移植编写一个简单地alsa-lib 应用程序一些基本概念打开PCM 设备设置硬件参数

#linux
    共 103 条
  • 1
  • 2
  • 3
  • 11
  • 请选择