自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(304)
  • 收藏
  • 关注

原创 一些不错的技术网站书签(持续更新)

基础:

2024-05-03 21:37:16 910 1

原创 ONNX(TODO)

(TODO)

2025-06-07 13:11:48 106

原创 SpringBoot2--一些关键知识点

整理一下重要的前置知识。 内置注解@Override@Deprecated@SuppressWarnings主要是给编译器用的,好像用处也不是很大。元注解就是注解的注解@Target@Retention@Documented@Inherited@Repeatable (Java 8+)@NonNull自定义注解AnnotationProcessor.javaBusinessService.java Loggable.java编译:运行:这里可以看出,一个自定义注解

2025-06-04 01:14:23 212

原创 构建系统maven

本文介绍了Maven构建工具的基础使用和核心概念。主要内容包括:1)Maven的四大功能(依赖管理、项目构建、标准化结构和生命周期管理);2)典型POM文件配置和构建生命周期(clean、default、site);3)实际应用示例:创建简单Java项目、添加Gson依赖、打fat包;4)Maven与其他构建工具(Gradle、Make等)的对比表,分析了各工具的特点和适用场景。文章还展示了Maven自动下载依赖的特性,虽然初次构建较慢但能简化开发流程。对于Java开发者,Maven仍是主流选择之一。

2025-06-01 22:47:57 1210

原创 Angularjs-Hello

《AngularJS与SpringBoot前后端开发实践》 摘要:本文记录了使用AngularJS与SpringBoot实现前后端分离的开发过程。首先对比了主流前端框架的特性,AngularJS作为Google支持的全功能框架具有双向绑定等特性。后端通过SpringBoot提供API接口,重点解决了跨域访问问题(使用@CrossOrigin注解)和JSON数据格式转换。前端部分采用npm管理依赖,通过lite-server运行AngularJS应用,实现与后端API的数据交互。文中详细展示了package.

2025-05-31 14:03:23 1105

原创 SpringBoot1--简单体验

选择maven配置。增加SpringWeb的依赖。Generate之后解压,代码大致如下:demo/├── src/此时提供了main和pom.xmlPOM.xml。这个是给maven用的。修改src中的Handler。因为我的8080被thingsboard用了。所以换成8081。在src/main/resources/application.properties中添加server.port=8081安装JDK17和Maven编译运行之后访问8081就可以看到了。

2025-05-30 01:01:31 376

原创 ThingsBoard(3)(二次开发篇)(TODO)

TODO。

2025-05-27 18:51:11 166

原创 ThingsBoard(2)(使用篇)(TODO)

本篇基本来自官方文档的简单整理。

2025-05-27 18:45:37 142

原创 ARM内核一览

M也就是Microcontroller,微控制器的意思,主要是用在嵌入式。核心发布年份架构性能(CoreMark/MHz)特点Cortex-M02009ARMv6-M~0.9极低功耗Cortex-M32006ARMv7-M~1.25低功耗,入门控制Cortex-M42010ARMv7E-M加速度计、音频控制Cortex-M72014ARMv7E-M~5.0双精度FPU,高性能Cortex-M332016ARMv8-M~1.5支持TrustZone。

2025-05-27 15:43:16 832

原创 WebGL3(WebGL or WebGPU?)

WebGL(Web Graphics Library)是一种基于OpenGL ES的JavaScript API,用于在网页浏览器中实现高性能的3D图形渲染,无需安装额外插件。它通过着色器(Shader)编程直接调用GPU能力,支持复杂的3D场景、物理模拟和实时渲染效果。WebGL完全集成于HTML5 Canvas,可与JavaScript、CSS3和Web API无缝协作,广泛应用于游戏开发、数据可视化、虚拟/增强现实(VR/AR)、科学模拟和交互式艺术等领域,为现代Web应用带来沉浸式视觉体验。

2025-05-25 14:29:38 242

原创 三维点云的处理

点云技术是通过离散的三维点集合来数字化现实世界的核心方法,其关键技术涵盖采集、处理和应用全流程。点云采集主要使用激光雷达(LiDAR),结构光扫描,多视角立体视觉也就是多摄像头。前阵看文章,好像也又但摄像头采集的。处理的部分是重点:统计离群值移除(SOR):剔除孤立的噪声点。体素网格滤波:降采样保持特征的同时减少数据量。ICP算法:迭代最近点对齐多视角扫描数据。NDT算法:基于概率分布匹配,适合大场景。PointNet++:直接处理无序点云,分类地面、建筑等。

2025-05-19 14:16:04 137

原创 总线学习8--rs485(TODO)

(TODO)

2025-05-18 01:23:07 342

原创 WebGL2(Cesium)

Cesium 是一个开源的 JavaScript 3D 地理空间可视化引擎,专为构建高性能的虚拟地球和地图应用而设计。它支持从全球尺度到微观场景的三维数据渲染,广泛应用于测绘、智慧城市、军事仿真、气象分析等领域。集成高精度地形数据(如Cesium World Terrain),支持动态地形开挖、坡度分析。可加载(倾斜摄影/BIM)、(模型)、等格式。支持时间轴动画(如卫星轨迹模拟)、实时数据流(如气象变化)。基于WebGL,无需插件,兼容浏览器和移动端。

2025-05-13 14:38:32 140

原创 ThingsBoard(1)(安装和基本运行篇)

也是最近要用到的项目,所以总结学习一下。中文教程,不过主要偏使用。系统架构图:可以看出也是典型的IOT系统架构。但是支持多种数据传输,MQTT,HTTP,CoAP等等。此外,内部消息做了Queue,也有Rule Engine这些东西。总体来说完成度还是很高的。一个thingsboard传输的流程:[ 现场传感器设备 ]│ 模拟/RS485/Modbus-TCP 传感器 ││(采集)▼│ 边缘计算设备 ││(Node-RED网关) │。

2025-05-13 14:34:34 255

原创 毫米波雷达

毫米波雷达和超声波雷达在车载应用中各有特点。毫米波雷达使用24GHz或77GHz的电磁波,能够测量距离、速度和角度,且穿透能力强,适用于多目标跟踪,但成本较高(500-3000元/个)。超声波雷达则使用40kHz的声波,主要用于测距,成本低廉(5-20元/个),但穿透性差,易受环境干扰。毫米波雷达在精度和抗干扰能力上优于超声波雷达,但超声波雷达的算法更为成熟。此外,毫米波雷达模块如TI的IWR系列,根据集成算法的不同,分为仅传感器、传感器加硬件加速(HWA)和传感器加DSP等类型,开发难度和成本各异。毫米波

2025-05-12 00:16:49 1203

原创 CMSIS DSP(TODO)

(TODO)

2025-05-09 01:19:46 87

原创 FastAPI搭建

因为最近正好要搭一个小服务器,所以简单记录一下。caddy是一个反向代理,如果系统简单,或者没有用到静态页面或者https,暂时先不用。。数据库用是pstgreSQL,不过demo还是用SQLlite。目前主要还是涉及gunicorn和fastapi。两者分工如下。

2025-05-08 03:09:10 249

原创 从电灯泡到CPU。。

个人爱好写一下,能力有限,文章难免错误,仅供参考和学习。

2025-05-03 03:44:11 117

原创 WebRTC(TODO)

简单看了下,貌似就是SIP的下一代。因为我对SIP很熟,所以就比对着来写。

2025-05-02 00:35:37 503

原创 LLDP/CDP设备发现协议(TODO)

(TODO)

2025-04-29 03:11:40 127

原创 刷了一个Openwrt

在海鲜市场收的,100块,还行,但是要自己刷机。选的直接是最流行的OP路由之一,移动的rax3000m,没有别的原因,就是因为用的人多,成熟,教程多。。。要刷机的时候才知道,算力版和普通的区别是EMMC和NAND的区别。不过我一直记得NAND也是不错。(之前开发过一个任务,把NAND换成NOR,真是欲仙欲死,改了驱动之后还要改文件系统。最后是能驱动了,但是文件系统死活配置不上去。。。网上指导刷机的教程也很多,要区分版本。开始差点刷成EMMC的了。确实很详细,而且针对移动的rax3000m专门做的。

2025-04-27 03:46:25 1421

原创 WebSocket

写这个是因为前阵面试被问到,当时有点懵逼。。所以下来也简单学习一下。原始的HTTP流程是一来一回的,这样导致很多业务没法开展或者开销很大,比如聊天室。虽然20年前就有聊天室了,但是当时是在网页上设置的定时轮询。比如2秒自动更新,这样的问题就导致服务器要频繁建立连接,而且每次都要带上整个HTTP头。websocket的好处就是全双工,类似于底层的socket,建立了一次之后直接用就行了,不用在去建立TCP的链接,此外,每个数据包是二进制的,也不用发整个http头,减少了带宽需要。

2025-04-26 03:31:14 195

原创 安卓学习24 -- 网络

(出处见水印)这两张是能找到的比较清楚的图。目前可以看出,底层的网络业务,还是传统的linux内核提供。在安卓上增加的两个比较重要的部分分别是ConnectivityService和netd。这两个都是在system分区。通过socket和底层通信。systemvendorinit.rcConnectivityService提供上层封装给app,通过binder连接netd,netd封装了底层网络功能和驱动HAL。

2025-04-20 04:34:45 98

原创 ALSA架构学习2(驱动MAX98357A)

之前其实写过两篇,一篇是讲ALSA,一篇是I2S。ALSA架构学习1(框架)_alsa框架学习-CSDN博客总线学习5--I2S_max98357接喇叭教程-CSDN博客在ALSA那篇的结尾,也提了几个小练习。比如:### 4. **定制音频驱动程序**- **目标**: 开发一个简单的 ALSA 驱动程序,用于控制一个虚拟或简单的音频硬件设备。

2025-04-19 02:15:49 507

原创 文件系统2(Bootable)(TODO)

(TODO)

2025-04-15 02:52:08 129

原创 Android学习22 -- perfetto

在之前的工作中就偶尔见到同事分析性能的时候,拿出漂亮的火焰图,或者XX图,当时非常惊讶,觉得怎么可以做这么好。后面看多了,才知道这个原来是安卓的perfetto工具,专门用来分析性能的。所以现在自己也玩玩。

2025-04-12 04:05:29 515

原创 VSCode必学必会(2)

之前写过一个1,最近发现还有一个真的很重要,遇到过好多次了,就是launch.json。详细的可以看官网,这里也简单总结一下。还有一个tasks.json。这部分感觉没那么复杂,暂时就不写了。

2025-04-11 02:57:26 399

原创 FC的传奇

其实也不是说一开始就成功,在70年代参与开发了ColorTV Game 6 与 ColorTV Game 15,游戏有《太空狂热》和《雷达显示器》,有的成功,有的失败。慢慢打磨总归还是能出头。事实上任天堂,索尼,MD这些日本玩家对现代IT产业影响真的很深远,当年不是索尼,也许也没有英伟达的今天。有人说是因为日系封闭,不过这个也难说,如果任天堂把FC,SFC开源,也许没几天就被中国,韩国的低成本给干趴下。之前其实看过pyboy的一部分源码,当时就对里面的很多细节,sprite,tile的很多细节很惊叹。

2025-04-07 02:09:29 297

原创 LDD3学习11--番外1(用VSCode调试KO)

首先查看板子的内核版本然后去下载接近的历史版本之后进行prepareMakefile编译完成之后push上去,依然失败。。。已经是下载的6.6的版本,但是小版本不对,依然无法加载。突然感觉基于设备的固件,找代码来反向出调试版本,可能是一个无法完成的任务。。。算了,明天直接在树莓派上编译吧,然后还是在windows上用VScode调试。

2025-04-03 03:35:27 751

原创 Linux的perf

在Linux下,其实有好多种性能工具,我看的多就是htop,strace/ptrace,perf,还有最近兴起的BPF。其实按照之前的经验,一般只要框架靠谱,程序实现的靠谱,一般真的很少遇到性能问题,反而是逻辑问题比较多,比如一个漏掉的分支处理,导致行为异常或者是崩溃。不过既然有perf这个工具,还是简单看看呢。首先还是比较一下htop,perf和BPF的差异。。主要用来分析整体性能,占用的CPU,内存等。基本等同于windows下的任务管理器。。用来分析具体一个程序。优化代码,提高效率。。

2025-03-29 03:12:25 156

原创 树莓派的VOIP服务(TODO)

树莓派1也能做项目?树莓派家用VOIP服务!

2025-03-27 02:01:10 298

原创 分布式AI(TODO)

https://github.com/b4rtaz/distributed-llama

2025-03-27 01:34:46 104

原创 文件系统1(FAT32)

最近偶然看到一个fat32的代码,也不多,就一个c文件,正好也想看看文件系统。就从这个代码开始学了。

2025-03-26 21:49:35 118

原创 摄像头的标定(TODO)

【代码】摄像头的标定(TODO)

2025-03-24 02:39:18 78

原创 KMP算法

很久之前,大概毕业一两年的时候,当时对写算法有点兴趣,于是自己写了一个strstr,用C写的,想破头也没什么特别的算法,最后也差不多是遍历,找到第一个字符后依次匹配。写了两天差不多完工,但是效率比当时MFC自带的函数查了非常远,大概好几倍吧。所以后面也放弃了这种自己写库函数的想法了。最近看leetcode,看到KMP算法,所以也想学一下。找了一个普通的txt文件,大概是2M多。找寻里面的NFC关键字。运行设备是树莓派5(4GB版本)。

2025-03-16 00:11:10 108

原创 Brian Kernighan算法

最近看到一个题,就是算一个int里面有多少个1。这个还是挺常用的,也不难,就是判断最后一位是不是1,然后移位,很快就能给答案。二进制是110,那么-1就是101,再&之后就是100(4)。仔细看看这个什么意思呢,关于位操作,之前其实写过一篇。之后-1就是011,再&之后就是000。其中关键的就是这句n &= (n - 1);相比以前要硬循环31次,确实巧妙了一些。主要是内存用的不是很好。也就是n = n & (n - 1);只有两个位都是1时,结果位才是1。本质就是跳过了0,每次只处理1。

2025-03-15 18:27:33 199

原创 RTOS基础3(FreeRTOS+USB_UAC)(TODO)

(TODO)

2025-02-28 21:48:38 103

原创 RTOS基础2(FreeRTOS+USB_HID)

最后的配置如下:终于可以编译过了。

2025-02-27 14:01:41 302

原创 Hello Vulkan

简单的介绍如下:Vulkan 是一个跨平台的高性能图形和计算 API,由 Khronos Group 开发,旨在提供更高效的硬件控制和更低的 CPU 开销。与传统的 OpenGL 相比,Vulkan 提供了更细粒度的控制,支持多线程渲染,适用于现代 GPU 架构,广泛应用于游戏、虚拟现实、科学计算和移动图形等领域。Vulkan 的设计目标是最大化性能,同时保持跨平台兼容性,支持 Windows、Linux、Android 等操作系统。从主页可以看到很多精美的图,貌似都是Vulkan生成的。

2025-02-26 03:35:14 146

原创 CMake小结2(PICO为例)

构建系统现在真的太多了,完全学不过来的感觉,meson,gardle,buildroot, Maven。。。我是真的有点放弃治疗了。之前其实CMake主打过一阵,不过那时还忙着GT的事情,所以基本上是混过来的。也没有太认真去看。最近在看FreeRTOS,用的板子是pico,首当其冲遇到的问题就是编译环境,没想到这里用的也是CMake,前两天尝试增加了一点东西,但是报错很多。看来这次这玩意是绕不开了,结合树莓派的手册,这次就详细再看看吧。有个实际的高手的项目看,也比自己瞎学强多了。。

2025-02-25 03:17:46 519

空空如也

空空如也

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

TA关注的人

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