avatar
Articles
207
Tags
216
Categories
9

Home
Archives
Tags
Categories
Link
About
Regen
Search
Home
Archives
Tags
Categories
Link
About

Regen

0.96OLED玩法
Created2024-05-14|硬件技术
基于0.96寸OLED,主控ssd1306 显示原理基于数据手册 硬件特性每个像素点独立控制,通过写入现存的二进制数据进行每个像素的熄灭和点亮 像素 128*64 名词定义123456789# 0.96 OLED'''|********************************||********************************||********************************||********************************||********************************|'''# 模拟图 SEG 相当于一列:一列64个像素 COLOMN 相当于一行:一行128个像素 COMMON 相当于一行:一行128个像素 PAGE 相当于8行:128*8个像素 显示方式(ssd1306) There are 3 different memory addressing mode in SSD1306: page addressing ...
C/C++大型项目编程注意事项
Created2024-05-13|软件技术
C/C++大型项目编程规范 ​ 最近在参与(或者说使用)某些项目的代码时,感觉其代码之简洁精炼,语言习惯之规范,外观之整洁,可读性之高令人赏心悦目。 ​ 在其基础上进行增删改查后总是觉得自己的代码不够优雅,就好像一篇书法作品中掺杂几行我写的字。 ​ 于是打算学习C/C++项目编程规范,不求优雅,只求规整可读,结构合理。 ​ 基于华为C语言编程规范 在线wiki文档 代码总体原则1、清晰第一代码的可阅读性高于性能,只有确定性能是瓶颈时,才应该主动优化 优秀的代码可以自我解释(以我的水平可能做到比较难) 常写注释,并且注释写的清晰 2、简洁为美写的代码越多,意味着出错的地方越多,也就意味着代码的可靠性越低。 术语 原则:编程时必须坚持的指导思想。 规则:编程时强制必须遵守的约定。 建议:编程时必须加以考虑的约定。 说明:对此原则/规则/建议进行必要的解释。 示例:对此原则/规则/建议从正、反两个方面给出例子。 延伸阅读材料:建议进一步阅读的参考材料。 头文件原则不合理的头文件布局是编译时间过长的根因,不合理的头文件实际上 ...
大创项目《自动化农业无人机》记录
Created2024-05-09|软硬件技术
​ 记录一下大创项目《自动化农业无人机》。实现项目转化知识成果 硬件选型 实现思路PID算法三轴陀螺仪的使用(以mpu6050为例)[MPU6050 basic with Arduino](link to be added) PID算法数据传输mqtt协议简介esp8266连接服务器(基于mosquitto的mqtt server) | Regen (regenm.github.io) mqtt服务器搭建MQTT服务器搭建(mosquitto) | Regen (regenm.github.io) 传输系统1. 数据传输mqtt协议基于代理,订阅和发布。 因此在服务器里创建一个频道/topic/dataFromSensors用于各类传感器的数据传输 高度传感器 二氧化碳传感器 温湿度传感器 电池消耗 2. 命令传输在服务器里创建一个频道/topic/commandToDrone用于各类命令的传输 UP DOWM LEFT RIGHT SPIN 因为基于mqtt协议,因此自动化控制很简单,上位机很好写,也可以不用上位机,在服务器上写的shell脚本就能很好的完成自动化功能。 m ...
STM32 IIC with 0.96 OLED
Created2024-05-06|硬件技术
IIC 通信原理基本介绍点击跳转 原理介绍Init硬件层​ 需要接上拉电阻(保证传输稳定性) 代码1234void IIC_Init(){ IIC_SCL=1; IIC_SDA=1;} Start物理层​ IIC总线的SCL保持高电平,SDA由高电平变为低电平后,延时(>4.7us),SCL变为低电平。 步骤 SCL 高 SDA 高->低 + 延时(>4.7us) SCL 高->低 代码123456789void IIC_Start(){ IIC_SCL=1; IIC_SDA=1; delay_us(5); IIC_SDA=0; delay_us(5); IIC_SCL=0; } Tramsmit Data物理层 传输时,SDA的宽度应该大于SCL的宽度,在SCL为高时读取SDA,SCL为低时改变SDA的电平。 ==注意:==传输数据过程总不允许SDA变化(否则会被视为开始或停止信号) 步骤 拉低SCL进行数据传输 SDA传送高低电平(0或1) SCL在高电平时期读取SDA的数据 ...
mqttSender
Created2024-04-27|软件技术
用于记录项目mqttSender regenm/mqttSender MqttSenderdescriptionA Software For me to send message to my mqtt serverSo that I can contral my devices such as esp32 ,esp8266. Another purpose is to learn python tkinter(GUI lib) Technique python tkinter python pyinstaller python mqtt requirements analization v1.0GUIversion1.0 conponents 1 text call box(for output) 1 entry box (for input) a send button() features(or limits? qwq ) simple change server(ip address, password , topics) by editing sourc ...
《太阳照常升起》
Created2024-04-17|读书
《爱你就像爱生命》
Created2024-04-17|读书
《爱你就像爱生命》王小波 你相信吗?什么样的灵魂就要什么样的养料。……没有像样的精神生活就没有一代英俊的新人。 我非常憎恨那些浅薄的人和自甘堕落的人,他们要把世界弄到只适合他们生存。因此我“愤懑”,看不起他们,不想这样却毒害了自己,因为人不能总为自己活着啊。我应该爱他们。如果人们不懂友爱,爱正义,爱真正美的生活,他们就是畸形的人,也不会有太崇高的智慧,我们的国家也就不会太兴盛,连一个渺小的我也在劫难逃要去当生活的奴隶。如果我不爱他们,不为他们变得美好做一点事情的话。这就是我的忏悔。你宽恕我吗,我的牧师? 我真的不知怎么才能和你亲近起来,你好像是一个可望而不可及的目标,我捉摸不透,追也追不上,就坐下哭了起来。 人是轻易不能知道自己的,因为人的感官全是向外的,比方说人能看见别人,却不能看见自己;人可以对别人有最细微的感觉,对自己就迟钝得多。 一个像你这样的灵魂可以给人多么大的助力,给人多少温暖啊!你把你灵魂的大门开开,放我进去吧! 以后少写信多见面好不好?写信我爱瞎说,见面就敬重了。我愿意敬重你,再说我的字写得多寒碜哪!再见! 今天我过生日,徒长一岁何乐 ...
《人间天堂》
Created2024-04-17|读书
《人间天堂》菲茨杰拉德​ 我说不出为什么,其实比起来那本《了不起的盖茨比》,我更喜欢这本《人间天堂》。我也先是读完了《人间天堂》再去读的《了不起的盖茨比》。 ​ 这本书给我带来了太多的共鸣,即使我和Amory是两个来自截然不同世界的人。 ​ 电子笔记中的译文质量实在不如我纸质笔记本摘抄的高。下次再换个版本吧。(真的有下次吗?) 他所知道的那个迪克·亨博德,那个记忆中富有魅力、有着独特个性的人,以及能唤起对他记忆的一切——噢,这一切现在都变得让人恐惧,绝无半点高贵气质,都已被碾作尘土。所有的悲剧都带给人离奇怪诞又肮脏作呕的紧张情绪——如此毫无价值,不值一提……像动物一样死去……艾默里记起了他童年时代在某个巷子里看到的那只被碾轧在地的血肉模糊、惨不忍睹的猫。 她能够胜任大多数乏味的家务(尽管她足够聪明, 从不会让诸如编织和刺绣这些“闺阁女红”把自己困住),然而,在料 理完家务之后,她立刻就可以拿起一本书,让自己的思绪如同空中变 幻莫测的云朵一样随风漫步。她个性中最为深沉的底色是她由内而外 散发出的夺目的金色光彩,正如黑暗房间中的一团明火,可以用浪漫 和温情照亮围绕在周围的安静面孔, ...
RUST basic
Created2024-03-25|软件技术
RUST简介优点内存安全性: ​ Rust 提供了内存安全的保证,通过所有权系统、借用检查器和生命周期检查器,可以在编译时捕获大多数常见的内存安全问题,如空指针解引用、数据竞争等。 并发安全性: ​ Rust 的所有权和借用系统使得编写并发程序更加容易和安全。它通过编译时检查来避免数据竞争和多线程错误,使得编写并行代码更加可靠。 性能: Rust 允许开发者获得接近底层语言(如 C 和 C++)的性能,因为它提供了对内存和并发的细粒度控制,同时不需要牺牲安全性和抽象性。 表达能力: ​ Rust 具有功能强大的类型系统和模式匹配功能,使得开发者可以以一种清晰、灵活的方式表达复杂的数据结构和逻辑。 资源管理: ​ Rust 的所有权模型允许开发者在编写代码时显式地管理资源,避免了像内存泄漏和使用后释放的问题。它还通过 RAII(资源获取即初始化)模式自动管理资源生命周期。 生态系统: ​ 虽然相对较年轻,但 Rust 生态系统不断壮大,拥有丰富的库和工具,支持各种应用场景,从嵌入式系统到网络服务都有涉及。 跨平台性: ​ Rust 具有良好的跨平台支持,可以轻松地在各种操 ...
Raspberry Pi
Created2024-03-16|软硬件技术
嘿嘿开新坑!(目前基于python)​ 早就久仰树莓派大名,奈何前两年芯片减产导致树莓派价格居高不下,甚至翻倍。现在终于降下来了,于是斥巨资买了一块3B前来学习。本篇Blog用于记录我的探索历程。 ​ 目前打算先使用python进行学习,待到有一定理解之后再使用C。 1. 装系统!​ 要什么桌面环境,直接上命令行! 2.联网-WIFI 方法一:使用系统工具 1sudo raspi-config 选择系统选项,地区之后就可以通过ssid和pask进行联网 再使用ifconfig查看是否连接成功(会分配新的 ip 地址) 方法二:使用系统配置/etc/ 12345678910# 一开始没有VIMsudo nano /etc/wpa_supplicant/wpa_supplicant.conf# add network={ ssid="ssid_name" key_mgmt=WPA-PSK psk="password"} 3. 创建新用户并授权​ 总不能一直用root吧,qwq ...
PCB Technique
Created2024-03-03|硬件技术
PCB Technique​ 本篇课程基于B站UP主Expert电子实验室的教学视频,同时加上本人思考与总结汇总而成。 ​ 零基础入门PCB设计保姆级教学 ​ Expert电子实验室 ​ 本部分笔记为扫盲篇(基础篇) ==进阶需实战,纸上得来终觉浅,绝知此事要躬行。==​ 1. 电路设计1.1 原理图四要素 元件符号 连接线 结点 注释 1.2 基本原件介绍1.2.1 电阻 对于贴片电阻的读数 1)3位读数:前2位为有效数字,第3位表示10的n次幂(也可以理解为0的个数)。精度为±5% 2)4位读数:前3位为有效数字,第4位表示10的n次幂(也可以理解为0的个数)。读法和3位的原理一样,精度为±1% 3)阻值小于10的读数:通常在两个数之间插入一个字母R,用字母R来代替小数点 1.2.2 电容 主要功能:储能和滤波 单位计算 1uF=1000nF;1nF=1000pF 分类 读数以及含义 1.2.3 电感​ Inductor, 单位换算 1H=1000mH;1mH=1000uH; 主要功能:滤波,扼流, ...
Operating System Principles
Created2024-02-27|软件技术
==操作系统原理== 1.操作系统概论2.操作系统接口用户与操作系统接口的分类 用户接口 提供给用户使用,通过该接口取得操作系统的服务。 程序接口 提供给程序员使用,用户程序使用系统服务的唯一途径 用户接口(操作接口) 联机用户接口(交互式) 脱机用户接口(批处理 ) 联机用户接口(交互式) 字符显示式联机用户接口 命令行方式:shell 语言 批命令方式:.sh 图形化联机用户接口 GUI :包括窗口,图标,菜单,鼠标和面向对象技术 脱机用户接口(批处理 )由一组作业控制语言组成。 作业:一次应用业务处理中,从输入开始到输入结束。用户要求计算机所做工作的集合。 作业步:作业加工处理的技术 作业分类:脱机作业,联机作业。 作业I/O方式:联机IO,脱机IO,SpooLing方式 系统调用系统调用(System Call),提供了用户程序和操作系统之间的接口。用户不能直接调用,但是用户程序可以。 作业 作业:在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所做工作的集合。 作业步:作业加工处理的步 ...
Computer Composition Principle
Created2024-02-27|硬件技术
​ 计算机组成原理 ==HIghLIght == 计算机系统概论计算机基本组成冯诺依曼计算机 特点 五大部件:运算器(ALU),控制器(CU),存储器(MEM),输入输出(I/O) 指令与数据同等地位存储与存储器 使用二进制 指令由操作码和地址码组成 指令在存储器内顺序存放 以运算器为中心(现代计算以存储器为中心) 计算机工作过程存储器的基本组成 存储体:由存储单元组成(存储单元由存储原件组成,存储原件存储0和1) 存储字:存储单元中的二进制代码组合(?) 存储字长: MAR:存储器的地址寄存器 MDR:存储器的数据寄存器 运算器的基本组成以及操作过程 ACC: 被加数,被减数,乘积高位,被除数,余数 ALU(算术逻辑单元): MQ: 乘数,乘积低位 控制器的基本组成 CU:控制单元 IR:指令寄存器 PC:程序计数器 计算机硬件的主要技术指标 机器字长 CPU一次能处理的数据位数与ALU中的寄存器位数有关 运算速度 MIP(Million Instructions Per Second) ​ 表示每 ...
Database Principles
Created2024-02-27|软件技术
数据库原理1.数据库概论数据库以及相关概念 数据(data):信息的表现形式和载体。 数据库(database):长期存储在计算机内,有组织的,统一管理的相关数据的集合。 数据库管理系统(DBMS):位于用户与操作系统逐之间的一层数据管理软件,为用户或应用程序提供访问DB的方法,包括DB的建立,查询,更新及各种数据控制。 数据库系统(DBS):采用数据库技术的计算机系统。 数据库技术:研究数据库结构,存储设计管理和使用的一门软件学科。 高级数据库阶段对象数据库技术 面向对象与数据库技术结合的产物 主要特征 可以完整的描述现实数据结构,以及数据之间嵌套递归的联系。 具有封装性和继承性,提高了软件的可重用性 分布式数据库系统 主要特征: 数据物理上分布在不同场地,逻辑上是一个整体 。 每个场地可以执行局部应用,也可以执行全部应用3.。 各地计算机由数据通信网络联系,本地计算机不能完成的任务可以通过通信网络获取其他场地支持。 开放数据库互联技术 用于单个应用程序访问不同的数据库 XML数据库技术 灵活 现代信息集成技术 数据仓库 连及分析处理技术 数据挖掘 数 ...
PHOTO
Created2024-02-27|生活摄影
说走就走(南昌)​ 去完南昌回来之后几天。想了想,果然还是想记下来当时间胶囊。 ​ 回家那一刻我就知道了2024的寒假注定是灰色的,看到最近天气15日阴天,以及温度逐渐下降甚至出现下雪的时候,我心情是复杂的。 ​ 上学期因荒废暑假后在学期中越想越痛,于是就发誓要好好利用寒假出去逛一逛,看看不同城市的风景。看到这天气后就有点挫伤。 ​ 于是就怀着这越来越渺茫的希望,打了把又一把游戏。 ​ 时机已到!那天下午,澡后我感到十分清爽,应该是内啡肽的作用。恰巧温度回升,下午的太阳也很舒服,就是现在!出发! ​ 然而刚到市里就开始下雨了。。。。。。我还没带伞,包里就一个没电的相机和一本书。(《杀死一只知更鸟》英文原著) ​ 好在火车上比较舒服,看看书,打了个盹就到了。刚好看完前半部分。看到了高中时期最喜欢的一段。 我想让你见识一下什么是真正的勇敢,而不要错误地认为一个人手握枪支就是勇敢。勇敢是:当你还未开始就已知道自己会输,可你依然要去做,而且无论如何都要把它坚持到底。你很少能贏,但有时也会。杜博斯太太赢了,用她那仅仅九十八磅重的身躯。按照她的观点,她死得无怨无悔,不欠任何人,也不依赖任何东 ...
《树上的男爵》
Created2024-02-18|读书
​
《流星之绊》
Created2024-02-17|读书
《流星之绊》​ 一直想看看短篇小说,想要重新体验一下过去一次性读完一本短篇的感觉(吃快餐…嘘!)。于是就立马想到了东野圭吾和村上春树。 ​ 偶然发现原来我还有很多没看过的东野圭吾的作品。其中就有这本《流星之绊》,只消半个夜晚就看毕了,关上ipad,躺在床上,他们三兄妹以及他们的故事在脑海里不断重现。 “我们三人就像流星,毫无目标地飞逝,不知将在何处燃烧殆尽。” ​ 看完后感觉剧情挺一般的,好像这本书少了点东野圭吾的味道了。如果是换做以前的我,大概会觉得这本书挺温暖的,至少就结局来说。也许我真的已经长大了,已经不在相信书里的奇迹了或者说已经不太习惯大团圆结局了。 ​ 看的时候就觉得这个剧情很适合拍成电视剧供像我一样百无聊赖的人群观看,第二天一查,没想到真的有日剧,而且好像日剧的受众还更广一点。 ​ 流星之绊啊,我一开始其实是理解为像流星一样转瞬即逝的羁绊,后来才知道是一起约定看流星的羁绊。虽然流星易逝,但是观看流星的他们之间的羁绊却被永远铭记。 “ 然而最美的流星永远是第一次映入眼帘的那颗“第一次”给人的永恒美是人们对“纯真”最后的忠诚流星雨那年也因狮子座流星雨二更而起无数渴望的眼 ...
docker容器技术
Created2024-02-09|软件技术
简介 ​ docker是一个用Go语言实现的开源项目,可以让我们方便的创建和使用容器,docker将程序以及程序所有的依赖都打包到docker container,这样你的程序可以在任何环境都会有一致的表现,这里程序运行的依赖也就是容器就好比集装箱,容器所处的操作系统环境就好比货船或港口,程序的表现只和集装箱有关系(容器),和集装箱放在哪个货船或者哪个港口(操作系统)没有关系。 ​ 因此我们可以看到docker可以屏蔽环境差异,也就是说,只要你的程序打包到了docker中,那么无论运行在什么环境下程序的行为都是一致的,程序员再也无法施展表演才华了,不会再有“在我的环境上可以运行”,真正实现“build once, run everywhere”。 概念​ docker 中的几个概念: dockerfile image container dockerfile​ Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。感觉就像makefile一样。 image​ Docker镜像(Docker Image)就是一个只读的模板 ...
MQTT服务器搭建(mosquitto)
Created2024-02-09|软件技术
MQTT服务器搭建(mosquitto)0.简介 简介 MQTT也称为”消息代理”(Broker)。 MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。 原理 MQTT协议原理MQTT协议实现方式实现MQTT协议需要客户端和服务器端通讯完成,在通讯过程中,MQTT协议中有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。 MQTT传输的消息分为:主题(Topic)和负载(payload)两部分: (1)Topic,可以理解为消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload) (2)payload,可以理解为消息的内容,是指订阅者具体要使用的内容。 ...
esp8266连接服务器(基于mosquitto的mqtt server)
Created2024-02-09|软硬件结合
Time:2024-02-09 00:39:50 还挺兴奋的,这个项目算是我自己搭建云服务器的最后一步。 idea​ 起因是想要自己搭建云服务器,同时还想要利用手上已经有的esp8266开发板实现对该服务器的远程控制(开关机)。 ​ 本来打算整一个备用电源给服务器供电,奈何这台服务器是普通PC,即使配置已经很低(与现代PC比较为拉胯,但是比大多数出售的服务器例如某云2核4g更加)但功耗的保守估计已经超过70w。 ​ 于是便打算使用远程开关降低平均功耗。同时进行物联网方面知识的扫盲与学习。 过程1.前期准备​ 首先,在已经搭建好的mqtt服务器上创建了用户user和密码passwd,同时处于安全性考虑禁止匿名访问。配置mqtt服务器的过程) ​ 创建好测试主题(topic)test后进行测试。多平台测试收发message没问题。 2.中期打BOSS​ 接下来就是攻克esp8266这边的问题了。 问题一:esp8266开发环境 ​ 由于这块esp8266开发板是我在高中时期玩的,那时候的电脑早已坏掉,这台电脑的arduinoIDE 还未配置esp8266的环境。 ​ 本来打算使 ...
1…891011
avatar
Regen
Articles
207
Tags
216
Categories
9
Follow Me
Announcement
Hola ! This is my Blog!
Recent Post
技术无意义-AI时代的自我思考2026-08-17
DSP音频处理2026-07-23
音频解码2026-07-19
歌曲架构2026-07-09
结构设计笔记2026-06-22
systemd管理服务2026-06-22
tabby terminal sftp问题2026-06-22
《献给阿尔吉侬的花束》2026-06-17
frp内网穿透2026-06-12
《克林索尔的最后夏天》2026-06-02
Categories
  • 生活11
    • 摄影4
    • 音乐1
  • 硬件技术19
  • 英语学习2
  • 读书51
  • 软件技术105
  • 软硬件技术10
Tags
notes ai basic ansibe k8s 跨平台 Flask influxdb apk打包 jenkins iic android vue3 控制技术 歌曲架构 编译原理 客制化ai 深度学习 知识库 计算机网络 部署 spring 51 操作系统 dsp 音频基础 projects udev 功放 docker bge-m3 调音 nexus arch telegraf 苏州 mosquitto 音频 project 运维
Archives
  • August 20261
  • July 20263
  • June 20267
  • April 20265
  • March 20266
  • February 20261
  • January 20264
  • October 202515
Info
Article :
207
UV :
PV :
Last Update :
©2022 - 2026 By Regen
Framework Hexo|Theme Butterfly
Search
Loading the Database