从零开始嵌入式

Thinking will not overcome fear but action will.

markdown 使用 mermaid 绘制图表

介绍一种易上手的 markdown 图表

文章中出现的图表代码在 web 页面中可能无法正常显示为图表,要查看效果请拷贝图表代码内容到 Windows Typora 应用程序中的代码框,并选择语言为 mermaid; mermaid 介绍 官网 mermaid 是一个基于 Javascript 的图表工具,可以使用特定 markdown 标记动态创建和修改图表; 支持的图表 饼图 以下是一个简单饼图代码: 1 ...

最常见的排序算法——归并排序

介绍一种采用分治法的典型排序算法

介绍 归并算法指的是将两个顺序序列合并成一个顺序序列的方法。 假设开始有数列 {6,202,100,301,38,8,1} 需要按照从小到大的顺序进行重新排列; 初始单个数:6, 202, 100, 301, 38, 8, 1 第一次归并:{6, 202}, {100, 301}, {8, 38}, {1},本轮比较的次数:3; ...

bRPC 的使用

介绍百度的工业级 RPC 框架

介绍 bRPC bRPC 是百度开源工业级 RPC 框架,很多知乎牛人评价 bRPC 比 gRPC 接口更友好; 官网 中文文档 编译 bRPC 安装依赖 如果需要静态连接 leveldb 库就安装 snappy 依赖: 1 sudo apt-get install -y libsnappy-dev 如果需要在 bR...

ROS 的安装使用

初步体验 ROS

建议跳过 ROS,直接学习使用 ROS2; 介绍 ROS ROS(Robot Operating System,机器人操作系统)是一系列程序库和工具的集合。它提供了硬件抽象、设备驱动、函数库、可视化工具、消息传递和软件包管理等诸多功能。 官网 中文文档 安装 ROS 选择一个 ROS 版本 选择 ROS 版...

gRPC 的使用

介绍一种语言中立的远程过程调用工具 gRPC

介绍 gRPC gRPC 是由 google 开发的一款语言中立、平台中立、开源的远程过程调用(RPC)系统。 定义一个服务,指定其能够被远程调用的方法(包含参数和返回类型); 在服务端实现这个服务接口,运行一个 gRPC 服务器来处理客户端调用; 在客户端调用服务端的方法,就像调用本地函数一样。 官网 下载 中文文...

protobuf 的使用

介绍序列化和反序列化工具 protobuf

建议继续看下一篇 grpc 的使用介绍,在编译安装 grpc 时会自动编译安装依赖项(包括 protobuf);可以直接安装 grpc,这里就不用单独安装 protobuf; 介绍 protobuf Protocol Buffers,是 Google 公司开发的一种数据描述语言,类似于 XML 能够将结构化数据序列化,可用于数据存储、通信协议等方面。 ...

解决 github 克隆慢的问题

git clone 以及 git submodule update --init 不成功的解决方法

仓库主体部分 以 https://github.com/grpc/grpc 仓库为示例; 方法一:Gitee 克隆 github 仓库; 方法二:使用替换网址的加速服务 1 2 3 4 5 6 7 # 原网址 git clone https://github.com/grpc/grpc.git # 加速服务网址 git clon...

golang 入门

从零学习 go 语言

go 语言介绍 go 是 Google 开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。具有简单、可靠、高效的特点。 go 语言官网 代码示例: 1 2 3 4 5 6 7 package main import "fmt" func main() { fmt.Println("Hello, 世界") } 安装 linux 安装 下载...

搭建本地 Git 服务器

基于 WSL2 后端 docker 搭建 GitLab、Gitea

搭建 GitLab 社区版 以下两种方式的环境均为 Docker Desktop(WSL2 后端); docker run 方式安装 建立用于容器挂载的目录; 也可不主动创建,运行第 2 步的 docker run 会自动创建这些目录; 1 2 3 4 mkdir ~/gitlab mkdir ~/gitlab/con...

uboot 流程分析

配置 uboot 的 vscode 工程以及流程分析

配置 uboot 的 vscode 工程 准备工作 对 uboot 进行一次编译; 在 vscode 的 remote-wsl 的状态下打开 u-boot-2020.07 目录; 屏蔽多余目录 在工程根目录新建 .vscode 目录 在 .vscode 目录中新建 “settings.json” 文件 ...