自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(110)
  • 资源 (2)
  • 收藏
  • 关注

原创 inux 设备树 (一) 初探

Linux设备树最初是由Grant Likely于2007年提出的,作为一种描述硬件信息的机制。在此之前,Linux内核通常使用硬编码的硬件信息,这样很难支持多种配置。然而,硬件的发展和复杂性不断增加,这导致了内核中硬件描述信息的不断增加和混乱。因此,Linux社区开始着手制定一种更好的方式来描述硬件信息。这便是Linux设备树的雏形。最初,设备树是作为PowerPC架构上的一种机制,用于描述Open Firmware标准下的硬件配置信息。

2023-11-20 21:00:00 216

原创 nodejs调用python 实现方案整理

这种特性使得在浏览器中的 JavaScript 可以直接访问和操作在 Python 解释器中创建的多维数组,实现了 Python 和 JavaScript 之间的数据共享。在这个例子中,我们创建了一个 HTTP POST 服务,该服务接收一个 JSON 对象,该对象中包含一个名为“string”的字段,该字段包含要处理的字符串。然后,服务处理这个字符串并返回一个包含处理过的字符串的 JSON 对象。在这个例子中,我们使用 spawn 方法创建了一个 Python 进程,并指定要运行的 Python 脚本。

2023-10-09 09:46:29 820

原创 profinet实现方案整理

Profinet 是一种基于以太网技术的自动化总线标准,由 PROFIBUS 国际组织(PROFIBUS International,PI)推出。它是一种用于工业自动化领域的总线标准,提供了实时以太网、运动控制、分布式自动化、故障安全和网络安全等方面的解决方案。Profinet 完全兼容工业以太网和现有的现场总线(如 PROFIBUS)技术,保护现有投资。它能够适应较高的网络负载和较长的距离,适用于较高的网络速度和较大的网络规模,具有较高的灵活性和适应性。

2023-08-23 09:14:34 1265

原创 nodeRed-源码分析10-从node.send到‘input‘回调

消息路由是 NodeRed 中的重要一部分,通过 Hook 方式在消息生命周期节点上进行扩展, 增强了系统可扩展性。

2023-07-21 10:54:09 442

原创 三菱 PLC MC 协议开发总结

三菱 PLC MC 协议是一种用于三菱 PLC 与上位机之间进行数据通信的协议,也称为 Mitsubishi Communication Protocol。该协议支持串口、以太网等多种通讯方式,可实现实时数据的采集和交换。MC 协议包含两种通信方式:ASCII 码方式和二进制方式。其中,ASCII 码方式使用英文字符进行编码传输,通讯速率较慢;二进制方式则使用二进制进行编码传输,通讯速率更快。同时,MC 协议也支持多个 PLC 之间的通信,可实现分布式控制和数据共享。

2023-06-19 21:00:00 5807 6

原创 AB PLC协议开发总结

AB PLC 协议是指可编程逻辑控制器(Programmable Logic Controller,PLC)厂商 Rockwell Automation 公司所研发的一系列通信协议。AB 是 Rockwell Automation 公司旗下品牌 Allen-Bradley 的缩写,因此也被称为 Allen-Bradley 协议。AB PLC 协议主要包括以下几种:ControlNet 协议:用于高速、实时的控制和数据采集。

2023-06-05 09:54:09 3023

原创 SQLite三种事务状态: DEFERRED 、IMMEDIATE和EXCLUSIVE说明

基于nodejs库Sequelize过程中,提供了Sequelize.Transaction.TYPES参数。

2023-04-20 08:45:04 404 1

原创 JS设计模式-08-享元模式

意图:运用共享技术有效地支持大量细粒度的对象。分类:对象结构型模式动机: 了如何共享对象,使得可以细粒度地使用它们而无需高昂的代价。适用性:• 一个应用程序使用了大量的对象。• 完全由于使用大量的对象,造成很大的存储开销。• 对象的大多数状态都可变为外部状态。• 如果删除对象的外部状态,那么可以用相对较少的共享对象取代很多组对象。

2023-04-11 22:00:00 83

原创 JS设计模式-07-模版模式

定义:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。TemplateMethod 使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。分类:行为型模式。

2023-03-31 21:00:00 213

原创 JS设计模式-06-命令模式

定义:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤消的操作。分类:行为型模式适用性。

2023-03-17 22:00:00 62

原创 用setTimeout实现循环,并增加最小循环周期配置

【代码】实现一个循环,若循环内部异步函数执行时间大于3秒,则在所有内部异步函数执行完成后再次执行循环;否则3秒执行循环。

2023-03-05 22:51:50 152

转载 (转载)RK3588 开发板上根文件系统导出并制作 img 镜像

转载地址: https://blog.csdn.net/qq_37596943/article/details/127340405来源: csdn著作权归作者所有,任何形式的转载都请联系作者。

2023-03-01 17:31:27 1527

原创 JS设计模式-05-观察者模式

定义:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新分类:行为型模式。

2023-02-27 22:00:00 206

原创 JS设计模式-04-迭代器模式

定义:迭代器模式(iterator Pattern)提供一个对象来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示分类:行为型模式。

2023-02-20 22:00:00 121

原创 JS设计模式-03-策略模式

分类:行为型模式关键点: 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。

2023-02-17 21:00:00 65

原创 JS设计模式-02-代理模式

分类:结构型关键点: 代理模式又叫 委托模式 ,是为某个对象提供一个代理对象,并且由代理对象控制对原对象的访问。代理模式通俗来讲就是我们生活中常见的中介。

2023-02-06 09:59:36 75

原创 JS设计模式-01-单例模式

JS设计模式 单例模式

2023-02-02 10:58:50 66

原创 2023年规划

2023年规划

2023-01-09 09:06:05 77

原创 Nestjs中利用nestjs-config模块实现多运行环境配置

在做 Nestjs 开发时,会涉及开发环境、生产环境等切换,可以通过nestjs-config进行配置文件统一管理,通过向启动命令传参的方式运行不同环境下的 Nest 应用。使用 Git 做版本管理测试脚手架curl 127.0.01:3000得到结果2.2. 安装并配置 nestjs-config安装 nestjs-config创建配置文件src/config/environment.ts,新增两个模式(此处为数据库配置,可根据业务增删)在 Nest 应用中

2022-06-02 20:45:00 2173

原创 Nodejs中TCP(MQTT等)在断网的超时处理

文章目录1. 问题2. 解决思路2.1. Linux TCP 参数2.1.1. TCP keepalive 机制2.1.2. TCP_USER_TIMEOUT2.2. 使用 NodeJS 接口测试,只适用于没有数据发送的时候,但有数据发送则不行2.3. 从网上找相关资料,出现关键信息2.4. NodeJS C++插件2.5. 测试两种场景3. 引申1. 问题在做 NodeJS 开发的过程中,碰到一个棘手的问题:已建立好的 TCP 连接,在网络异常情况下(拔网线),客户端无法及时的响应(close 或 e

2022-05-08 08:00:00 1523 1

原创 几种软件开发方法对比

综述软件开发方法是一种使用早已定义好的技术集及符号表示习惯来组织软件生产的过程。本文对净室方法、结构化方法、面向对象方法、原型法、逆向工程等方法进行梳理,并对各种开发方法特点、优点进行对比。净室方法特点净室软件工程(Cleanroom Software Engineering, CSE)是软件开发的一种形式化方法,可以开发较高质量的软件。它使用盒结构规约进行分析和建模,并且将正确性验证作为发现和排除错误的主要机制,使用统计测试来获取认证软件可靠性所需要的信息。CSE强调在规约和设计上的严格性,还强

2022-05-01 22:41:20 1153

原创 Nodejs模块加载研究

博客迁移:不恰饭的小站不恰饭的小站文章目录1. 这个功能是什么1.1. CommonJS1.2. ECMAScript modules2. 这个功能如何实现2.1. CommonJS2.1.1. 模块包装器3. 这个功能相关的参与者与接口3.1. CommonJS 接口3.1.1. \_\_dirname3.1.2. \_\_filename3.1.3. exports module.exports3.2. ES modules3.2.1. specifier (区分符)4. CommonJS 与 .

2022-04-13 09:13:33 961

原创 2022-03-28-Git detach head 分析

博客迁移:不恰饭的小站https://blog.buqia.fun/2022/03/28/2022-03-28-Git%20detach%20head%20%E5%88%86%E6%9E%90/1. Git detached head 的含义detached head 是一种 HEAD 指针指向了某一个具体的 commit id,而不是分支名称(master、…)的情况。2. Git detached head 的产生、操作与消亡产生:git checkout 到一个 commit I..

2022-03-28 17:34:57 861

原创 git永久删除远端的文件和提交

1. 问题在 remote 提交时,增加了一个文件,但这个文件不应该被提交,想删除文件,同时已经有了多次在这提交后的新提交,如何操作?原有链a==>b==>c==>d ^ |有问题的提交要做到a==>c==>d 2. 操作a==>b==>c==>d方法一:(推荐)git rebase -i a修改 b 为 dropgit reflog expire --expire-unreachable=now --all

2022-03-25 15:43:46 370

原创 带着问题看源码8-NodeRed中的Library模块

文章目录1. 此模块的意义2. NodeRed 此模块功能3. NodeRed 中此模块的实现及参与者packages/node_modules/@node-red/runtime/lib/library/index.js4. NodeRed 为什么这么设计,这种设计的优劣有哪些5. 应用场景分析6. 实践6.1. 存储1. 此模块的意义NodeRed Library 模块是一组前后端配合使用的模块。它可将运行数据序列化到磁盘,实现数据共享。2. NodeRed 此模块功能当前 NodeRed 提供

2022-03-25 09:11:25 311

原创 带着问题看源码7-NodeRed中的context模块

1. 此模块的意义NodeRed context 模块是运行期做数据保存及共享的一种机制。当节点间有相同内容时,可以考虑将相同的内容放入 context 以实现共享,既减少了空间,也有利于修改。2. NodeRed 此模块功能context 有三类:global、flow、node,其中 global 是随着 context 模块初始化时创建,全局唯一;flow context 以 flowId 为标识,为所有具有相同 flowId 的节点做记录;node context 以 flow:id 为标识。

2022-03-22 15:57:18 1901

原创 带着问题看源码6-NodeRed中的日志模块

博客迁移不恰饭的小站文章目录1. 日志系统的意义2. NodeRed 日志模块功能3. NodeRed 中日志模块及参与者4. NodeRed 为什么这么设计,这种设计的优劣有哪些5. 应用场景分析6. 实践6.1. 服务端代码6.2. NodeRed 配置 settings.js6.3. 服务端信息NodeRed 日志模块是基础的模块,负责运行期的信息打印,支持日志等级,同时提供了扩展机制,支持远程打印,打印另存等功能1. 日志系统的意义让我们回到计算机世界的远古时期或者我们刚刚接触计算机

2022-03-16 08:58:08 1647 4

原创 带着问题看源码5-NodeRed系统数据存储

文章目录1. NodeRed 系统数据有哪些2. NodeRed 中系统数据存储机制2.1. 源码分析2.2. API3. NodeRed 中系统数据存储机制有哪些参与者4. NodeRed 为什么这么设计,这种设计的优劣有哪些6. 相关知识7. 应用场景分析NodeRed 系统相关的配置文件会以 JONS 格式存储在本地,同时也提供了插件机制实现系统数据的自定义存储,本文从 Storage 模块出发,从源码分析下如何以插件形式实现自定义存储,也对这种方式的可能的用途进行分析。1. NodeRed

2022-03-15 16:24:45 2236

原创 带着问题看源码4-NodeRed中消息路由实现

文章目录0. 博客迁移1. 消息路由是什么? 有几种实现方式 ?2. NodeRed 中消息如何流转2.1. NodeRed 消息流转图2.2. SendEvent object2.3. ReceiveEvent object2.4. CompleteEvent object2.5. 有哪些参与者2.5.1. packages/node_modules/@node-red/util/lib/hooks.js2.5.2. packages/node_modules/@node-red/runtime/lib/

2022-03-10 08:38:10 409 1

原创 OpenHarmony编写第一个软件HelloWorld

文章目录1. 目的2. 官方开发文档2.1. 基本概念3. 源码实现3.1. 工程目录3.2. 源代码3.3. 源码见4. 编译与烧录4.1. 编译指令4.2. 镜像烧录4.3. 应用测试1. 目的编译命令行工具 HelloWorld,测试编译环境及项目配置开发硬件环境:树莓派 3B+2. 官方开发文档根据开发硬件,选择文档标准系统编译构建指导(在这费了半天劲,找错了相关文档)2.1. 基本概念平台开发板和内核的组合,不同平台支持的子系统和组件不同。平台基于硬件和内核,在项目中,~/oho

2021-12-03 09:25:05 697 2

原创 OpenHarmony使用TTL线连接树莓派打印输出

硬件串口/TTL款的,5V供电;实际接线图设置串口参数115200,n,8,1

2021-12-01 17:28:51 2815 2

原创 OpenHarmony搭建开发环境

文章目录1. 编译环境准备2. 安装虚拟机2.1. 安装扩展插件3. 编译镜像3.1. 搭建编译环境3.2. 下载编译内核需要的工具链3.3. 编译 OpenHarmony3.4. 打补丁3.5. 开始编译3.6. 烧录到 SD 卡1. 编译环境准备Ubuntu 18.04http://old-releases.ubuntu.com/releases/18.04.4/ubuntu-18.04-desktop-amd64.iso2. 安装虚拟机VirtualBox2.1. 安装扩展插件3. 编译

2021-11-30 15:14:44 3523

原创 OpenHarmony介绍及相关资料

1. OpenHarmonyOpenHarmony 是由开放原子开源基金会(OpenAtom Foundation)孵化及运营的开源项目,目标是面向全场景、全连接、全智能时代,基于开源的方式,搭建一个智能终端设备操作系统的框架和平台,促进万物互联产业的繁荣发展。openharmony开发资料2. 实验环境2.1. 概述利用手里一块树莓派 3B+开发板,跑 openharmony 系统,编写应用:命令行应用和带应用界面应用。2.2. 硬件树莓派 3B+2.3. 软件2.3.1. 开发环境

2021-11-29 17:06:15 3541

原创 策略路由实战

IPwwan0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500inet 10.164.219.2 netmask 255.255.255.252 destination 10.164.219.2wlx08beac133294: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 172.168.111.115 netmask 255.

2021-11-01 14:07:59 216

原创 debian10 卸载openjdk11并安装 openjdk8

0. 博客迁移也可访问 不恰饭的小站1. debian10 卸载openjdk11并安装 openjdk81.1. 卸载openjdk11apt-cache search java | awk '{print($1)}' | grep -E -e '^(ia32-)?(sun|oracle)-java' -e '^openjdk-' -e '^icedtea' -e '^(default|gcj)-j(re|dk)' -e '^gcj-(.*)-j(re|dk)' -e 'java-common'

2021-10-21 22:00:00 1544

原创 网络控制报警灯

1. 博客迁移非vip可访问 不恰饭的小站2. 设备报警灯a. 购买链接BBJ-三色灯 24V工业网络 IO 模块a. 购买链接ZHC1921(继电器输出)b. 资料ZHC1921电源模块0 ~ 24V,直流3. 连线4. 盒子配置文档ZHC1921 应用指导流程a. 访问地址(192.168.0.65)b. 配置 TCP 服务端c. 配置 ModBusTCP5. 控制报警灯5.1. 通讯协议modbusRTUa. 指令说明文档b.

2021-10-20 08:50:00 3380

原创 linux 安装与卸载 miniKube

确保禁止掉 swap 分区sudo swapoff -a#修改/etc/fstab,注释掉swap那行,持久化生效sudo vi /etc/fstab安装 kubelet kubeadm kubectlapt-get update && apt-get install -y apt-transport-httpscurl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -.

2021-09-07 08:24:41 1952

原创 docker 一条指令删除所有none镜像

docker rmi $(docker images | grep "none" | awk '{print $3}')

2021-08-16 15:17:32 76

原创 博客迁移啦~

欢迎访问我的blog(不恰饭的小站)~~~

2021-07-08 08:33:52 81

原创 Linux 脚本删除目录下指定类型的文件

find . -type f | grep XXX | xargs rm -f

2021-07-05 11:38:01 250

OpenHarmony 树莓派 3B+ helloworld程序

OpenHarmony 树莓派 3B+ helloworld程序

2021-11-29

mosquitto.conf

mosquitto配置文件

2020-05-26

空空如也

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

TA关注的人

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