自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

木子皿--啥都不会的菜鸟

努力学习,希望有朝一日能够从事后台服务器开发相关工作!

  • 博客(17)
  • 资源 (4)
  • 收藏
  • 关注

原创 音频编码的基本概念

文章目录1 音频编码的基本概念1.1 常见的音频编码格式1.2 AAC简介1 音频编码的基本概念1.1 常见的音频编码格式原始的 PCM 音频数据也是非常大的数据量,因此也需要对其进行压缩编码。和视频编码一样,音频也有许多的编码格式,如:WAV、MP3、WMA、APE、FLAC、AAC 等等,音乐发烧友应该对这些格式非常熟悉,特别是后两种无损压缩格式。1.2 AAC简介本节以 AAC 格式为例,直观的了解音频压缩格式。AAC 是新一代的音频有损压缩技术,一种高压缩比的音频压缩算法。在 MP4 视

2020-10-24 17:40:02 2525

原创 视频编码的基本概念

文章目录1 视频编码的基本概念1.1 为什么需要压缩编码?1.2 常见的视频编码格式1 视频编码的基本概念1.1 为什么需要压缩编码?我们知道,在计算机的世界中,一切都是 0 和 1 组成的,音频和视频数据也不例外。由于音视频的数据量庞大,如果按照裸流数据存储的话,那将需要耗费非常大的存储空间,也不利于传送。而音视频中,其实包含了大量 0 和 1 的重复数据,因此可以通过一定的算法来压缩这些 0和 1 的数据。特别在视频中,由于画面是逐渐过渡的,因此整个视频中,包含了大量画面/像素的重复,这正好提供了

2020-10-24 17:22:17 2539

原创 正则表达式基本概念

文章目录1 正则表达式基本概念1.1 元字符1 正则表达式基本概念1.1 元字符元字符解释:^表示规则字符串的开始$表示规则字符串的结束+表示匹配次数≥1次*表示匹配任意次数(可为0次){n,m}表示匹配次数至少n次,至多m次下面为正则验证邮箱地址的示例,用户名@域名 80808080@qq.com: QRegExp rx("^[A-Za-z0-9]+([_\.][A-Za-z0-9]+)*@([A-Za-z0-9\-]+\.)+[A-Za-z]{2,6}$");...

2020-10-23 17:32:37 250

原创 字符串类String

文章目录1 字符串类的初步设计1.1 历史遗留问题1.2 字符串类的初步设计1.3 代码实现1 字符串类的初步设计1.1 历史遗留问题C语言不支持真正意义上的字符串。C语言用字符数组和一组函数实现字符串操作。C语言不支持自定义类型,因此无法获得字符串类型。从C到C++的进化过程中引入了自定义类型,在C++中可以通过类完成字符串类型的定义。1.2 字符串类的初步设计类的声明如下:实现时的注意事项:无缝实现String对象与char*字符串的互操作。操作符重载函数需要考虑是否支持

2020-10-22 14:44:01 298

原创 QueueToStack

文章目录1 使用队列实现栈1.1 问题分析1.2 解决方案设计1.3 实现思路1.4 代码实现1.5 分析1 使用队列实现栈1.1 问题分析本质为,用队列“先进先出”的特性实现栈“后进先出”的特性!1.2 解决方案设计1.3 实现思路1.4 代码实现QueueToStack.h:#ifndef QUEUETOSTACK_H#define QUEUETOSTACK_H#include "LinkQueue.h"#include "Stack.h"namespace LemonL

2020-10-20 16:34:32 437

原创 StackToQueue

文章目录1 使用栈实现队列1.1 问题分析1.2 解决方案设计1.3 实现思路1.4 代码实现1.5 分析1 使用栈实现队列1.1 问题分析用栈实现队列等价于用“后进先出”的特性实现“先进先出”的特性。1.2 解决方案设计1.3 实现思路1.4 代码实现StackToQueue.h:#ifndef STACKTOQUEUE_H#define STACKTOQUEUE_H#include "LinkStack.h"#include "Queue.h"namespace Lemo

2020-10-20 16:27:57 486

原创 LinkQueue

文章目录1 链式队列的概念1.1 队列的链式存储实现1.2 链式队列的设计要点2 使用LinkList实现链式队列2.1 继承关系图2.2 代码实现1 链式队列的概念对于StaticQueue,当数据元素为类类型时,StaticQueue的对象在创建时,会多次调用元素类型的构造函数,影响效率。我们需要链式队列来解决这个问题。1.1 队列的链式存储实现1.2 链式队列的设计要点类模板,抽象父类Queue的直接子类。在内部使用链式结构实现元素的存储。只在链表的头部和尾部进行操作。2 使用

2020-10-20 10:52:48 632

原创 StaticQueue

文章目录1 StaticQueue实现1.1 队列的顺序实现1.2 StaticQueue设计要点1.3 StaticQueue实现要点(循环计数法)2 StaticQueue实现3 小结1 StaticQueue实现1.1 队列的顺序实现1.2 StaticQueue设计要点类模板使用原声数组作为队列的存储空间。使用模板参数决定队列的最大容量。1.3 StaticQueue...

2020-10-19 09:10:54 401

原创 Queue

文章目录1 队列的概念1.1 队列的概念1.2 队列的特性1.3 队列的操作1.4 继承关系图1.4 队列的实现2 代码实现1 队列的概念1.1 队列的概念队列是一种特殊的线性表。队列仅能在线性表的两端进行操作:队头(Front):取出数据元素的一端。队尾(Rear):插入数据元素的一端。1.2 队列的特性先进先出(First In First Out):1.3 队列...

2020-10-19 09:10:40 247

原创 LinkStack

1 LinkStack的实现1.1 StaticStack的缺陷由于StaticStack内部使用了原声数组,当存储的元素为类类型时,StaticStack的对象在创建时,会多次调用元素类型的构造函数,影响效率。因此,我们需要链式栈来避免这种缺陷。1.2 链式栈的存储实现1.3 链式栈的设计要点类模板,抽象父类Stack的直接子类。在内部组合使用LinkList类,实现栈的链式存储...

2020-10-17 09:38:52 694

原创 StaticStack

文章目录1 栈的顺序实现1.1 示意图1.2 StaticStack设计要点1.3 继承关系图1.4 接口实现2 代码实现1 栈的顺序实现1.1 示意图1.2 StaticStack设计要点类模板:使用原声数组作为栈的存储空间。使用模板参数决定栈的最大容量。1.3 继承关系图1.4 接口实现2 代码实现StaticStack.h#ifndef STATICSTAC...

2020-10-16 09:21:31 237

原创 Stack

文章目录1 栈的概念1.1 栈的定义1.2 栈的特性1.3 栈的操作2 栈的实现2.1 继承关系图2.2 类的实现3 代码实现1 栈的概念1.1 栈的定义栈是一种特殊的吸纳行表。栈仅能在线性表的一端进行操作。栈顶(Top):允许操作的一端。栈底(Bottom):不允许操作的一端。1.2 栈的特性后进先出(Last In First Out)。1.3 栈的操作创建栈...

2020-10-16 08:52:49 241

原创 Linux内核对设备树的处理

文章目录1 内核对设备树的处理1.1 dtb 中每一个节点都被转换为 device_node 结构体1.2 哪些设备树节点会被转换为 platform_device1.3 怎么转换为 platform_device2 platform_device 如何与platform_driver 配对3 内核里操作设备树的常用函数3.1 内核中设备树相关的头文件介绍3.1.1 处理 DTB3.1.2 处理 device_node3.1.3 处理 platform_device3.2 platform_device 相

2020-10-15 14:34:24 1786

原创 设备树的引入及简明教程

文章目录1 设备树的引入与作用2 设备树的语法2.1 设备树语法概览2.2 Devicetree 格式2.2.1 DTS 文件的格式2.2.2 node 的格式2.2.3 properties 的格式2.3 dts 文件包含 dtsi 文件2.4 常用属性2.4.1 #address-cells、#size-cells2.4.2 compatible2.4.3 model2.4.4 status2.4.5 reg2.4.6 name(过时了,建议不用)2.4.7 device_type(过时了,建议不用)

2020-10-14 17:14:31 1910 1

原创 LED 模板驱动程序的改造:总线设备驱动模型

文章目录1 概述2 代码实现3 代码分析3.1 注意事项1 概述原来的框架:要实现的框架:2 代码实现代码结构如下:board_A_led.c:#include <linux/module.h>#include <linux/fs.h>#include <linux/errno.h>#include <linux/miscdevice.h>#include <linux/kernel.h>#include &lt

2020-10-12 14:37:48 264

原创 驱动进化之路:总线设备驱动模型

文章目录1 驱动编写的3种方法1.1 传统写法1.2 总线设备驱动模型1.3 设备树2 在 Linux 中实现“分离”:Bus/Dev/Drv 模型2.1 模型2.2 driver和device的匹配规则2.3 函数调用关系2.4 常用函数2.5 如何写程序1 驱动编写的3种方法以 LED 驱动为例:1.1 传统写法特点如下:使用哪个引脚,怎么操作引脚,都写死在代码中。最简单,不考虑扩展性,可以快速实现功能。修改引脚时,需要重新编译。1.2 总线设备驱动模型先看一下相关结构体定义:

2020-10-08 15:00:48 539

原创 DualCircleList

文章目录1 双向循环链表的实现1.1 继承层次图1.2 双向循环链表的设计思路2 代码实现3 思考1 双向循环链表的实现直接使用Linux内核链表实现双向循环链表。1.1 继承层次图1.2 双向循环链表的设计思路数据结点之间在逻辑上构成双向循环链表,头结点仅用于结点的定位。实现思路:通过模板定义DualCircleList类,继承自DualLinkList类。在DualCir...

2020-10-08 13:57:01 215

STM32F103C8T6_GRBL 1.1f 移植

STM32F103C8T6_GRBL 1.1f 移植,最新版本的GRBL,STM32F103C8T6,拿过去改一改便可以使用,非常实用!

2019-12-17

0.96LCD显示屏技术资料.zip

中景园电子0.96LCD显示屏技术资料,其中有完整的参考参考程序,硬件原理图,可以很方便的进行移植,使用起来很方便!

2019-12-09

【小项目】简易计算机等级考试模拟练习

【小项目】简易计算机等级考试模拟练习

2018-11-02

条码和二维码生成的DLL

这两个DLL可以用来生成条码和二维码

2018-10-29

空空如也

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

TA关注的人

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