编程相关
文章平均质量分 86
Naisu Xu
这个作者很懒,什么都没留下…
展开
-
Golang笔记:使用serial包进行串口通讯
串口是非常常用的一种电脑与设备交互的接口。这篇文章将介绍golang中相关功能的使用。原创 2024-06-22 16:02:15 · 814 阅读 · 0 评论 -
CMake快速入门
CMake官方的渐进式教程从官方角度多的尽量介绍了官方提供的功能,不过对于入门来说稍稍生硬,对于入门使用来说可以有更快入门的方式的。这篇文章将介绍写更加简单的入门使用的方式。原创 2024-04-14 10:45:00 · 616 阅读 · 0 评论 -
Lua和C语言交互入门
Lua本身的设计时就有为了可以方便的嵌入到别的语言中使用的功能,主要来说就是可以方便的嵌入到C语言中,并和C语言进行交互。这篇文章将对相关内容进行介绍。原创 2024-02-07 12:45:00 · 1987 阅读 · 1 评论 -
纯C无操作系统轻量协程库Protothread使用记录
在单片机开发中很多时候都是无操作系统环境,这时候如果要实现异步操作,并且流程逻辑比较复杂时处理起来会稍稍麻烦。这时候可以试试 Protothread 这个协程库。原创 2024-01-21 20:39:52 · 1959 阅读 · 0 评论 -
Lua更多语法与使用
在前一篇文章: 《Lua入门使用与基础语法》 中介绍了一些基础的内容。这里将继续介绍Lua一些更多的内容。原创 2023-11-10 22:07:36 · 1906 阅读 · 1 评论 -
Lua入门使用与基础语法
Lua是一种非常小巧的脚本语言,基于C构建并且完全开源,可以方便的嵌入到各种项目中,当然也可以单独使用。Lua经常被用在很多非脚本语言的项目中,用来扩展脚本功能,提供一定的灵活性。最常见的应用场景就是各类游戏中(比如魔兽世界和愤怒的小鸟)。这篇文章将对相关内容做个入门介绍。原创 2023-10-23 21:26:47 · 7035 阅读 · 1 评论 -
Arduino MQTT客户端库PubSubClient快速入门
MQTT是比较常用在物联网设备中的通讯协议,这篇文章将使用 `Arudino ESP32` 作为MQTT客户端进行通讯使用演示。目前Arduino的MQTT客户端库中最常使用的是 `PubSubClient` ,所以本文也将以此进行说明。原创 2023-08-16 18:02:24 · 6072 阅读 · 2 评论 -
Golang笔记:使用json包处理JSON数据
JSON是一种非常流行的数据交换格式,是JavaScript中原生支持的一种数据,因为其简单方便,所以也经常用在不同程序、不同语言间数据交互。这篇文章将介绍在Golang中使用JSON相关内容。原创 2023-06-19 16:48:33 · 2778 阅读 · 0 评论 -
WebTerminal功能实现与代码演示(基于Golang和Xterm.js)
WebTerminal是一个比较有意思的功能,让我们可以脱离专门的软件,在浏览器中就可以与Linux设备进行交互。这篇文章将对这个功能做个简单的说明与演示。原创 2023-05-22 12:03:52 · 5402 阅读 · 0 评论 -
Golang笔记:使用melody包进行WebSocket通讯
WebSocket是Web开发应用中非常常用的功能,用于客户端和服务器间长时间的实时双向数据通讯。Golang中官方并没有实现这个功能,需要借助第三方的包来实现。这篇文章将简单介绍使用 `olahol/melody` 包(当前版本为 `v1.1.3` )进行WebSocket通讯。原创 2023-05-19 11:31:41 · 2275 阅读 · 1 评论 -
使用命令启动默认程序(例如启动系统默认浏览器打开指定网址)
通过命令调用系统默认应用程序打开对应格式的文件是比较常用的功能。这篇文章将介绍下相关内容。原创 2023-05-18 09:33:40 · 2044 阅读 · 0 评论 -
Golang笔记:使用embed包将静态资源嵌入到程序中
Golang编译程序默认是静态编译,会把相关的库都打包到一起,这在分发部署使用时非常方便。不过如果项目中用到的外部的静态资源文件,通常就需要将这些资源和程序一起拷贝分发了。现在可以使用标准库中 `embed` 包 [https://pkg.go.dev/embed](https://pkg.go.dev/embed) 将静态资源文件打包到一起。原创 2023-05-17 16:16:19 · 3215 阅读 · 0 评论 -
Golang笔记:使用http包实现基础WebServer功能
WebServer是一种非常常用的功能,Golang的高并发特性在处理此类工作中也有较大的优势,同时借助标准库中的 `net/http` 包可以非常快速的编写WebServer应用。这篇文章将简单记录下相关内容。原创 2023-05-17 11:30:48 · 1654 阅读 · 0 评论 -
Golang笔记:使用ssh包作为客户端与SSH服务器交互
Golang中可以使用 `golang.org/x/crypto/ssh` 包作为SSH客户端或者SSH服务使用。这篇文章将简单记录下作为客户端使用的一些内容。原创 2023-05-15 14:52:24 · 4654 阅读 · 0 评论 -
Golang笔记:使用os.Args和flag包编写命令行界面(CLIs)
命令行界面(Command-line Interfaces)是比较常用的一种软件形式。对于大部分开发运维人员来说很多时候CLIs可能比图形界面更加方便。软件开发时也经常会有需要开发命令行界面形式软件的情况,使用Golang来开发是一种比较不错的选择。这篇文章将简单介绍使用Golang标准库中os.Args和flag包编写命令行界面。原创 2023-05-12 15:01:33 · 1870 阅读 · 1 评论 -
Golang笔记:使用exec包执行外部程序与Shell命令
程序中执行外部程序是比较常用的功能,Golang执行外部程序可以使用标准库中的 `os/exec` [https://pkg.go.dev/os/exec](https://pkg.go.dev/os/exec) 。这个包默认是用来执行外部程序的,可以通过调用Shell程序来执行Shell命令。这篇文章将对相关使用做个记录,方便自己查阅。原创 2023-05-11 15:54:38 · 2545 阅读 · 3 评论 -
Python3语法笔记(后篇)
这篇文章主要用于记录Python3相关语法,方便自己查阅使用。原创 2023-04-28 11:53:43 · 1030 阅读 · 0 评论 -
Python3语法笔记(前篇)
这篇文章主要用于记录Python3相关语法,方便自己查阅使用。原创 2023-04-25 14:32:50 · 1087 阅读 · 0 评论 -
Python3基础入门
Python是目前非常流行的编程语言,这篇文章将对其相关入门内容进行说明。原创 2023-04-10 11:34:39 · 1865 阅读 · 0 评论 -
Golang笔记:UDP基础使用与广播
UDP是比较基础常用的网络通讯方式,这篇文章将介绍Go语言中UDP基础使用的一些内容。原创 2023-01-18 10:06:10 · 5819 阅读 · 0 评论 -
Go语言语法笔记
这篇文章主要用于记录Go语言相关语法,方便自己查阅使用。原创 2023-01-14 20:17:28 · 938 阅读 · 0 评论 -
Android Native APP开发笔记:双击返回键退出应用&单击返回键返回桌面
双击返回键退出应用 很早之前就是Android中非常常见的一种功能,而目前好多安卓应用为了应用常驻都改为使用 单击返回键返回桌面 ,这篇文章将对相关内容做个简单记录。原创 2022-12-05 14:28:50 · 1535 阅读 · 0 评论 -
Android Native APP开发笔记:多线程编程
Android中UI线程对于开发者和用户来说都是最主要接触到的线程。一般来说为了UI流畅、不卡顿,耗时操作是不推荐放在UI线程中的。但是耗时操作的需求又是存在的,这时候就需要用到多线程编程了,新建一条子线程去处理耗时操作。这篇文章将对相关内容进行简单介绍。原创 2022-10-31 17:11:11 · 1142 阅读 · 0 评论 -
Java笔记:UDP基础使用与广播
UDP是比较基础常用的网络通讯方式,这篇文章将介绍Java中UDP基础使用的一些内容。原创 2022-10-27 16:16:31 · 1483 阅读 · 0 评论 -
Android Native APP开发笔记:文件存储与访问
APP开发与使用过程中免不了和文件打交道,对于Windows或Linux而言文件的存储与访问操作都很方便,直接通过文件系统路径和文件接口操作就行。在Android中因为安全原因,这方面变得有些复杂,这篇文章将对相关内容做个梳理记录。原创 2022-10-26 13:53:37 · 2522 阅读 · 0 评论 -
Java语法笔记
以前做东西都赶时间需要什么百度什么,很多时候因为这种方式导致学的东西太片面,总体下来反而花了很多冤枉时间,在语法方面这个情况更加明显。这次趁着项目中再一次用到Java,就花点时间对相关语法做个记录,方便自己后期查阅。原创 2022-10-20 13:43:02 · 562 阅读 · 0 评论 -
Android Native APP开发笔记:使用WebView控件加载网页
WebView是一个比较常用的控件,功能上也比较单一,就是用来加载网页的,可以加载远程的网页,也可以加载本地网页文件。简单来说就相当于一个浏览器。这篇文章将对WebView使用相关内容做个简单记录。原创 2022-10-17 16:04:15 · 4844 阅读 · 1 评论 -
UDP IPv4广播地址计算(附Node.js示例代码)
UDP广播是比较常用的一种功能,应用方面来说经常用在设备发现等功能中。UDP广播需要知道广播地址,这篇文章将介绍通过IPv4地址和子网掩码来计算广播地址。原创 2022-10-09 10:35:10 · 1757 阅读 · 5 评论 -
Android Native APP开发笔记:从新建到打包流程记录
安卓是现在移动端平台占有率最大的平台,如果进行移动端用户应用开发大多数时候都避不开它。这篇文章将记录下安卓原生应用开发整个流程步骤,方便自己以后查询使用。原创 2022-09-29 15:31:51 · 2262 阅读 · 0 评论 -
Go语言与C语言相互调用
现代的各种高级的编程语言很多都是在C语言之上构建的,基本上也都能够调用C语言,并且这个在某些情况下也是有这个需求和存在的意义的。Go语言对这方面支持的挺不错,不光可以调用C语言,还能给C语言调用。这篇文章将对相关的内容做个说明。原创 2022-09-27 10:47:36 · 4873 阅读 · 0 评论 -
Go语言基础入门
Go是由谷歌支持的开源编程语言,属于编译型语言,对并发编程有较好的支持。这篇文章将介绍Go语言基础入门相关内容。原创 2022-09-19 14:28:05 · 4184 阅读 · 2 评论 -
编译工具链和交叉编译工具链简易说明
文章目录编译工具链交叉编译工具链编译工具链做C/C++开发特别是嵌入式方向的肯定会涉及编译工具链和交叉编译工具相关内容。C/C++的程序需要经过 gcc 等编译成二进制程序才能被计算机使用,这里的 gcc 通常是泛指,包括 gcc 、 g++ 、ar 、as 、ld 等一系列工具,这些工具用在程序文件的预编译、编译、链接等整个过程中,这整一套工具就被称为 编译工具链(Toolchain)。通常我们说gcc、g++是具体某一个功能的工具,事实上通常它完整的名称都比较长:上图是两个不同的编译工具链,原创 2022-02-14 11:09:48 · 22501 阅读 · 0 评论 -
Make和Makefile快速入门
文章目录目的基础入门Makefile语法基础杂项变量条件选择函数文件引用嵌套执行make使用使用进阶总结目的我们可以在终端中通过命令来使用GCC编译代码生成可执行文件,对于实际的项目因为涉及的文件通常会比较多一些,情况也会复杂些。如果每次修改代码后都在终端中一行行输入命令来操作就比较麻烦了,这个时候可以把这些命名都写入一个shell脚本文件中,每次执行这个脚本就可以完成相应的工作。当然实际操作中有比shell脚本更加合适运用到这个场景中的东西,那就是Make和Makefile。Make是一个程序,最常原创 2022-02-11 10:12:34 · 1677 阅读 · 0 评论 -
使用VS Code开发Arduino
文章目录目的软件安装快速使用更多说明编译输出时中文乱码Arduino扩展配置说明使用 arduino-cli总结目的Arduino官方的IDE作为编辑器的功能挺简陋的,用起来并不是很舒服,相比较之下用VS Code(Visual Studio Code)作为编辑器来说就好用多了。现在我们可以在VS Code中安装Arduino插件来开发Arduino。这篇文章将对相关内容做个说明。软件安装虽然可以使用VS Code开发Arduino,但是Arduino相关的包管理、库管理、编译上传等功能都得由Ard原创 2021-09-09 20:19:28 · 13820 阅读 · 7 评论 -
C++ Json库ArduinoJson介绍及使用说明
文章目录介绍与下载使用说明使用ArduinoJson助手生成代码总结介绍与下载ArduinoJson是一个纯由C++编写的Json库,支持大部分常用的Json数据操作;ArduinoJson比较小巧(目前v6.9版本文件约160K左右大小),只有一个.h文件,使用时只需引用它即可;虽然小巧但官方页面一点不含糊,排版合理,资料详细,还提供了一个非常方便的工具;虽然名字里有Arduino但...原创 2019-03-12 12:28:51 · 26339 阅读 · 4 评论 -
在Arduino中使用DS18B20温度传感器(基于OneWire和DallasTemperature库)
文章目录目的快速使用相关库引入使用说明使用演示相关库说明OneWire库DallasTemperature库总结目的快速使用相关库引入两个库均在GitHub上,可以在release标签页中下载最新项目文件。OneWire库项目地址:https://github.com/PaulStoffregen/OneWire使用时需要包含OneWire.h 文件、OneWire.cpp 文件...原创 2019-03-14 10:51:42 · 24467 阅读 · 16 评论 -
Windows下如何方便的运行py脚本
一个纠结的问题在Windows下直接使用Python比较纠结,有很多问题让你不爽,比如下面这些: - 同时装了Python2和Python3,怎么选择对应的版本启动; - 双击无法直接运行.py文件; - 右击.py文件竟然也没有合适的打开方式(-.-!);如果只是自己用或者给会的人用其实也不算太大问题,只要win+R cmd 回车或是shift+右键……然后打点什么总能运行了...原创 2018-06-13 22:53:16 · 45856 阅读 · 2 评论 -
GCC快速入门
文章目录目的总结目的总结原创 2021-06-04 13:18:50 · 10635 阅读 · 8 评论 -
GNU ARM 汇编基础笔记
文章目录目的汇编基础说明基础语法常用指令ARM汇编演示模拟器 VisUAL使用演示与C语言混合使用总结目的汇编的核心就是使用各种指令来编码完成需求,而指令这个东西其实就是最底层二进制的机器码的基础上做了一层语义化的替换,比如用 ADD 代表数字逻辑上的加减,用 MOV 代表数据传递等等,方便程序员进行阅读和编写。不过对于现在的各种高级语言而言汇编已经不怎么方便了。现在还在用汇编的主要是底层开发中一些特定需求的实现必须用到汇编。对于嵌入式开发而言了解汇编特别是ARM汇编还是有实际需求的。汇编基础说明汇原创 2021-06-04 13:05:13 · 4105 阅读 · 21 评论 -
CRC校验关键点说明(内附C语言CRC校验库)
文章目录目的CRC校验关键点参数模型计算方式CRC校验库源文件使用测试项目地址总结目的CRC即循环冗余校验码(Cyclic Redundancy Check):是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。循环冗余检查(CRC)是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似的算法,以保证数据传输的正确性和完整...原创 2019-03-22 17:59:36 · 6487 阅读 · 5 评论