自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 uboot编译运行应用程序笔记

uboot编译运行应用程序笔记前言​ uboot运行的应用程序通常是自己编写的裸机程序,最大的缺点是加载到内存运行后无法返回至uboot命令行。

2022-01-12 18:05:13 954

原创 Linux环境下移植LittleVGL

Linux frame buffer下移植LittleVGLLittleVGL是一个开源图形库,提供创建嵌入式GUI的各种元素。由于它是使用标准C语言所写,其具有精美的视觉效果和低内存占用,可以很轻松的移植到嵌入式设备上。本篇笔记分享基于framebuffer的LittleVGL的移植使用。准备工作LVGL官方提供了基于Linux frame buffer的移植工程:lv_port_linux_frame_buffer此工程还关联其他仓库,若是clone时下图红框圈起来的文件夹中无文件,须下载相关

2021-04-16 21:52:36 1885 1

原创 生产者消费者模型

生产者消费者模型概述生产者消费者模型通过一个缓冲区来解决生产者和消费者的强耦合问题。生产者和消费者彼此之间互不感知,而通过缓冲区来进行通讯,生产者线程产生数据放入缓冲区,消费者线程直接从缓冲区读取数据。在这种模型中,生产者产生的资源不易丢失,两线程通讯的速度不在取决于速度较慢的一方,平衡了生产者和消费者的处理能力。#mermaid-svg-2ymPoA9VWdw4UBYy .label{font-family:'trebuchet ms', verdana, arial;font-family:var

2021-04-12 08:26:23 123

原创 cJSON详解

cJSON详解(API手册)笔者在以前的博客中介绍了C语言的简单数据解析,此方法适用于一些简单封装的数据,如坐标信息,物体抽象信息等。并且解析后的数据结构也比较单一,只有字符型和整型基本数据类型。而在一些大型嵌入式工程中,单位传输数据的体量和数据类型的复杂度都是非常庞大的。这时,我们需要引入JSON这一适用广泛的数据格式。JSON数据格式简介JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,不是一种编程语言。JSON采用完全独立于编程语言的文本格式来存储和表示

2021-03-25 15:21:37 2528

原创 仿照Linux内核编写MCU的I2C驱动

仿照Linux内核编写MCU的I2C驱动I2C是很常用的串行通信接口,用于连接各种外设,传感器等器件。在单片机开发中,I2C驱动程序通常和硬件相关,不利于升级和代码复用。而Linux中I2C驱动的设计思想很值得借鉴,本文将刨除设备、总线等复杂概念,单从I2C驱动实现角度仿照Linux内核编写I2C驱动。I2C协议I2C 通讯协议(Inter- Integrated Circuit)是由Phiilps公司开发的,由于它引脚少,硬件实现简单,可扩展性强,不需要 USART、CAN 等通讯协议的外部收发设备

2021-03-17 22:52:25 560

原创 C++实现string类

C++实现string类string类相比于char*的字符串,在使用中不必担心内存是否足够、字符串长度等等。作为一个类出现,它集成的操作函数足以完成我们大多数情况下的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联等。C++提供的string类基本满足开发需要,而自己实现string类多在面试题中出现。限于时间,不可能要求具备 std::string 的功能,但至少要求能正确管理资源。函数声明函数功能String(const char *str = nullptr)

2021-03-13 14:35:49 370

原创 C语言简单数据解析

C语言简单数据解析​ 在嵌入式开发中通过串口等传输数据通常使用JSON解析,虽然JSON十分强大,但JSON耗费资源太多,数据的打包和解析都比较麻烦。有时我们只是传输一些简单的数据,没必要引入JSON。​ 下面我将介绍一种简单的数据解析方法,通过编写函数,将字符串解析取得目标数据。解析字符型数据函数原型/** * @brief 从一段字符串中解析期望的字符串 * @param pBuff: 要解析的字符串地址 * @param pLeft: 目标字符串左边的字符串 * @

2021-03-10 12:08:30 3996 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除