
基础知识
文章平均质量分 87
介绍基础性的知识和开发中的小心得
丁劲犇
五香面蚕豆,麻酱豆腐卤;戗刀磨剪子,钢筋锅换底。修----理伞,有乌龟壳王巴盖拿来卖,甜--米酒----来碗撒汤,尅个烧饼,一两碗友谊巷的豆腐脑,三四个相山庙的夜归人。岁月催银鬓,光阴染发梢,濉河斜见柳,秋雨且潇潇。抱病婉谢红尘宴,遮颜入市觅佳肴。曲终席尽人未散,把酒对月话故交。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
开始在本地部署自己的 Gitea 服务器
本文详细介绍了在Windows 10系统上部署轻量级开源代码托管平台Gitea的完整流程,包括下载安装、初始配置、SSH服务器设置等关键步骤。作者对比了Gitea与Gitblit的特性差异,指出Gitea在社区活跃度、资源占用和现代化功能方面的优势,同时也分析了Gitblit在用户界面和仓库组织上的优点。文章还探讨了个人开发者使用版本控制系统的必要性,强调Git在代码版本管理、本地实验性开发等方面的实用价值。对于需要搭建个人代码仓库的开发者,本文提供了切实可行的部署方案和配置建议。原创 2025-06-05 19:57:55 · 2033 阅读 · 2 评论 -
DeepSeek协助优化-GTX750Ti文物显卡0.65秒卷完400MB float 音频512阶时域FIR
从不熟悉CUDA,到使用CUDA完成了性能还可的滤波器,用了4个小时。我用自己的文物显卡 NVIDIA GeForce GTX 750 Ti (Compute Capability 5.0),只有2G的显存,1G的主频,做时域512点fir卷积,竟然只需0.65秒就跑完100M float数据(411MB文件大小)。最近在学习cuda,准备给我的taskBus SDR添加CUDA的模块支持,以便可以用PC机压榨山寨 B210那56M的带宽。通过反复迭代,得到了希望的结果。原创 2025-03-30 17:15:13 · 1342 阅读 · 0 评论 -
使用 MSYS2 qemu 尝鲜Arm64架构国产Linux系统
近期,我的师弟咨询我关于Arm64架构的国产CPU+国产OS开发工具链问题。他们公司因为接手了一个国企的单子,需要在这类环境下开发程序。说实在的我也没有用过这个平台,但是基于常识,推测只要基于C++和Qt,应该问题不大。原创 2025-01-28 21:47:11 · 1238 阅读 · 0 评论 -
制作自己的Manjaro Linux Live DVD 光盘镜像
本文介绍了使用manjaro linux的工具制作自己的LiveDVD的方法。主要步骤:1. 需要具备一台Manjaro的虚拟机或者实体机,且已经更新到最新状态。2. 签出个性化iso文件夹模版,从git仓库刷新到最新的master分支。3. 自定义包列表和个性化文件。4. 运行buildiso。5. 刻录到DVD。原创 2024-12-18 21:14:36 · 1325 阅读 · 0 评论 -
用于低成本接收机的LoRa SF11 500KHz波形检测解调算法
我们发现对于Lora这种使用Chirp的起始频率携带信息的低成本硬件,其固有的时钟差、频率差对结果影响极大。尤其是使用另一个不靠谱的硬件来接收(比如Rtl-SDR或者没有GPSDO的山寨 B210),两者的钟差是不靠谱+不靠谱=超级不靠谱。能在Low SNR下解析出正确的数据,需要对波形的深刻理解和认识。本文介绍了自己实验所接收的LoRa波形的接收、检测、解调方法。原创 2024-11-04 07:15:00 · 905 阅读 · 0 评论 -
思维短路-做梦梦见无理数的无穷级数以及民科话题
梦见了无穷级数和很多民科的联想。π不仅是圆周长与直径之比,还贯穿于数学的各个分支中,从基本的几何形状到复杂的复数理论,以及物理世界的许多现象中都能找到它的身影。无穷级数是探究π这一奇妙常数的一种有力工具,它们揭示了π在数学世界中的深刻内涵和广泛联系。Pi在梦中与漩涡发生了联系,而自然指数e却与排列组合和高维空间产生了联系。不知道这个想法是不是意味着我疯了,总之,是个非常奇怪的梦。原创 2024-07-24 19:32:32 · 1212 阅读 · 0 评论 -
世界的本质是旋转(8) 开发信道仿真器,脱离USRP实现钟差频差相差和噪声模拟
在文章陆续发表后,有网友说自己没有USRP 平台,如何跑例子?我想了一下,由于USRP的收发是整个事件流的驱动,向前输出水位触发生产,向后输出IQ数据触发接收,还真的需要一个取代USRP的模拟器来进行模拟。本文介绍了简易模拟器的实现。有了这个模拟器,即可脱离USRP板卡来跑部分的模块。原创 2024-03-18 08:30:00 · 961 阅读 · 0 评论 -
世界的本质是旋转(7) PSK 接收机上层同步技巧以及8PSK解调的额外处理
上一篇以BPSK为例子,介绍了nPSK(n=2,4,8)波形的接收、解调中的同步技术。前文阐述的同步技术所工作的对象是复平面的坐标,X轴是实部、Y轴是虚部。当完成时钟、频率同步后,就获得了一串整数,也就是解调的结果了。但还有很多其他的工作有待完成。调制与解调只是协议栈最底层的部分。本节,会继续介绍码流层面的同步技术。同时,在文章的最后,会给出这种野路子协议栈的缺陷,以及学习通信原理时需要具备的认知:书本的流程和现实实验之间存在大量的技巧知识空隙,需要仔细琢磨和学习思考。原创 2024-03-12 12:55:09 · 1617 阅读 · 2 评论 -
开源玩具总动员-本博客的知识关系图
作为一个非全职编程爱好者,基本是把计算机周边当做高档大玩具来玩的,顺便带着有兴趣的学生搞一搞学习。这篇文章作为全站的一个导航篇,把本博客的主干要点汇聚一下。原创 2024-03-06 20:56:19 · 1100 阅读 · 1 评论 -
世界的本质是旋转(6)-在复平面上借助软件无线电SDR解调BPSK波形
上文完成了BPSK波形的发射。相对于BPSK波形的生成总共就4行代码,接收要略微复杂一些,算上各种同步、锁相环,约80行。本文详细介绍了C语言实现BPSK锁相解调与课本电路结构之间的区别。使用会计算atan和带有大缓存的计算机,要比模拟器件解调的传统方法简单的多。直接从复平面和角度上理解设计算法,比按照课本的模拟电路结构图复刻算法更为直接。原创 2024-03-05 08:56:51 · 1135 阅读 · 2 评论 -
世界的本质是旋转(5)-在复平面上驱动软件无线电SDR发射BPSK波形
在上几期,我们介绍了复平面、拍照采样的一些思维实验。从本期开始,进入了实际工程应用。我们结合从底层自研的C语言SDR实验平台实操,以朴素而直接的思路起步,以图、代码为主,并没有严谨专业的理论推导。最终实现一个全双工的SDR BPSK 通道。原创 2024-03-04 19:00:49 · 1303 阅读 · 1 评论 -
用git bash调用md5sum进行批量MD5计算
对于非常大的文件或者很重要的文件,在不稳定的网络环境下,可能文件的某些字节会损坏。此时,对文件计算MD5即可以校验其完整性。最简便的方法是使用git自带的md5sum进行计算,借助find批量匹配执行,用diff查看差异。原创 2024-01-19 13:12:31 · 1749 阅读 · 0 评论 -
地理测绘基础知识(6) 照射距离/俯仰等值线计算
上一篇文章中,我们采用HPR坐标系里的向量旋转,在地表绘制了这样的螺旋线:在复杂多样的现实应用需求中,还有一种更为普遍的计算需求,就是求取地表到全向光源的距离为D的所有点的集合(用多边形组成的近似椭圆区域)。本文在椭球模型下,讨论并实现了一类等值线计算算法。根据给定的投影朝向,获得朝向上的等值线的经纬度坐标。原创 2023-09-10 10:26:36 · 586 阅读 · 0 评论 -
地理测绘基础知识(5) 由光源矢量发起的照射计算
我们解决了照射计算的基本模型关系,并能够根据手电的位置指向,在地表求取光斑。但是,前文使用的是设置探针求取场强的点求取,对于绘制地表的等值线包络图、求取地表包线的具体解析情况,就不够用了。使用单点的方法计算量大,且步长不容易控制。本文给出基于向量旋转与交汇的计算算法。原创 2023-09-05 10:30:00 · 245 阅读 · 0 评论 -
地理测绘基础知识(4) 由地表探针发起的照射计算
照射计算,是一种常用的三维几何计算。已知一个光源的光强图,计算光源投射到地表各处的功率密度。这种计算需求可以直观的理解为计算已知位置、指向、聚光特性的手电筒,计算地表某地点强度。本文的推导涉及很多旋转,很容易出错和糊涂。当时刚刚毕业时,通宵推导、用Turbo C花了很大力气实现,结果笔记、程序都找不到了。现在已经白发丛生,从头重温一遍,也很是有趣。本推导可能存在符号反转等错误,等笔者后续做更有意思的场景时,不断验证才能更正。大家千万不要把这个代码真拿去仿真去了,十有八九会踩坑(-!原创 2023-09-02 13:57:09 · 318 阅读 · 0 评论 -
现场工程师救火-UEFI(BIOS)节能设置导致金牌服务器只跑出龟速
近期协助出现场,解决了一个非常典型的UEFI 启动参数配置不当导致的服务器降效案例。错误的节能参数配置,导致价值几十万的服务器变成龟速服务器,并造成严重的生产事故。原创 2023-04-25 19:52:10 · 1421 阅读 · 1 评论 -
自然语言模型的哲学小谈
近期,以chatGPT为代表的大语言模型表现非常惊艳。,以及推理能力,很难不让我们期待未来人工智能的发展,同时冷静思考一下为什么自然语言模型能够取得巨大进步。本文从科普的角度,探讨思维的形成,以及思维与自然语言之间的关系。原创 2023-04-22 20:26:18 · 1588 阅读 · 1 评论 -
Wolfram 接入 GPT点燃了普罗米修斯之火
{AI : '为什么创造我?' } {TE : '因为我们能创造你。' }原创 2023-03-25 23:20:07 · 1645 阅读 · 1 评论 -
论坛:二维数组中找最大特征数组
1 题目来自论坛有一个二维数组a[5000][5000];a[0]={0,0,0,1,0,0,0,0,1,1,*******0,1,1,0};a[1]={0,0,1,1,0,1,0,0,0,0,*******1,0,1,0};a[4998]={1,0,0,1,0,1,0,1,0,0,*******0,0,0,0};a[4999]={0,1,1,1,0,1,0,0,0,0,******0,0,1,1};元素的排列是随机的,a[]中1的个数,位置也是随机的;需要找到一个b[8],使得按照列号b原创 2021-04-28 20:31:31 · 272 阅读 · 0 评论 -
基于 librdkafka C API 的三种seek随机访问方法
介绍三种seek offset的方法。kafka seek的时机和特点,是由它的原理决定的。只有消费者已经assign到确切的partition,才能修改offsetassign partition的行为可以是手动的(第一种),也可以是自动的(2、3)当自动assign时,必须选取一个时机,获取当前的分区号,才能设置offset最佳的方法是联合使用1、2、3这三种策略。原创 2023-03-20 13:39:03 · 630 阅读 · 0 评论 -
ACE与MFC共存问题
我是个ACE菜鸟,前一阵子头痛于万事开头难的问题,很多问题相当SB,不过考虑到很多初学者和我一样被老板骂得焦头烂额,这里还是把学习 ACE第一周遇到的问题贴上来,希望对刚刚接触ACE的鸟伴有所帮助(-:1、解决5.6版本的ACE使用 ACE_HAS_MFC 后提示WIN32_NT版本过低的问题。2、MFC应用程序调用ACE库,不进行任何操作还存在内存泄露的问题;3、MFC程序加...原创 2008-02-10 12:16:00 · 3424 阅读 · 1 评论 -
一种基于C++STL库的回溯排列组合枚举器
在指导学生入门信息学竞赛的过程中,遇到最多的问题就是排列组合。当代信息学竞赛不鼓励学生们采用强力的语言特性来解决问题,一般建议首先从算法本身思考,尽量避免利用排列组合算法实施穷尽(这样的方法往往报超时)。但如何快速的实现排列组合枚举这个问题本身,可以作为知识点来训练学生的基本功。这里我分享一个学生写的程序,基本框架完全没变,一些变量命名与代码风格我帮忙稍作规整。程序包括排列(Pn,mPn,mP......原创 2018-04-22 11:58:54 · 1991 阅读 · 1 评论 -
你好2023-使用msys64 openssl 制作QSslSocket实验所需证书
2023年开始了,第一篇,记录最近帮朋友制作QSslSocket所需证书的过程。使用传统的TCP连接依旧是很多工业软件的常见通信方法。但如果恰好不希望别人通过抓包等方法研究上位机和控制器模块之间的协议格式,那使用SSL连接是一种掩耳盗铃的好办法,能够抵御不是很执着的逆向行为。SSL一般可以通过openssl实现,这样即使是嵌入式设备里也有类似的支持。QSslSocket非常平顺的保留了所有的易用性,让一般的硬件作坊也能碰一碰SSL和网络编程。原创 2023-01-01 09:55:29 · 998 阅读 · 0 评论 -
Rust 五分钟印象
记录花了5分钟时间初步阅读Rust手册的感受。原创 2022-11-07 20:41:01 · 563 阅读 · 0 评论 -
DIY调频(FM) MP3电台-基于增强管道数据流转(EPDR)的taskBus实时水位控制技术
EPDR通过各个进程的标准输入输出管道(stdio)吞吐数据,平台按照生产消费关系进行数据流转,联合多个子进程实现数据合作处理。开源软件无线电平台taskBus将此架构运用于SDR领域。非计算机专业的工程师受惠于此平台,可迅速整合每个人最熟悉的开发语言、开发环境,让不同知识背景、教育层次的工程师共同完成实时波形处理软件。在SDR软件开发中,水位控制是保证硬件及时获取数据,并防止数据堆积的有效手段。本文基于taskBus,介绍水位控制在mp3文件夹FM发射机搭建中的应用。原创 2022-11-01 06:15:00 · 643 阅读 · 0 评论 -
从前向数据复制(FDR)到增强管道数据流转(EPDR)-taskBus的前世今生
增强管道数据流转技术(EPDR)是一种基于标准输入输出的开源数据分发技术,在软件无线电平台taskBus下已经具有了较为完整的应用场景。本文简述从最初的前向数据复制发展到EPDR的过程。原创 2022-10-15 21:01:59 · 1334 阅读 · 4 评论 -
Taskbus - 基于Qt的跨平台多进程合作框架(零)增强管道数据流转架构设计
对于普通高校来说,学生的流动是很快的,水平也参差不齐。使用基于进程标准输入输出管道、增强的数据流转技术,使得使用不同语言、不同开发技术的学生可以进行紧密的合作,完成一个实时的数据处理软件。原创 2018-02-21 22:37:28 · 3014 阅读 · 1 评论 -
从MSYS2 PostGIS 到 Proj.4 地理空间坐标转换
文章介绍了用于测绘和地理坐标转换的2种便利方法。用PostGIS、Proj.4都可以进行转换。同时,笔者结合自己20年的工作经历,对基础科学软件的发展给出了一些感慨。原创 2022-10-09 22:48:18 · 1206 阅读 · 1 评论 -
使用MSYS2和UPX显著缩小发布文件体积
对于经常发布桌面应用程序的攻城狮而言,当然希望自己的程序只要一个可执行文件,拷贝到任何位置直接双击就能运行啦。比如笔者,经常使用MSYS2 里的mingw64 Qt静态编译程序,以便只要一个可执行文件就能到处运行。以前,我用MFC静态编译很香。换成Qt后,感觉静态编译出来的程序,体积出乎意料的大,有的一个EXE文件就有20MB。用了UPX后,可以获得20%的高压缩率!...原创 2022-08-18 23:42:03 · 473 阅读 · 0 评论 -
Ettus USRP业余软件无线电上位机配置与开发杂谈
玩USRP有几个月了,期间参与了翠翠老师的一个实时应用项目,使用软件仿真多路QAM收发,踩坑无数。由于该项目本身是专利保护项目,不便开源,本文章尽可能站在总结的角度说清楚。从年前开始,先后尝试了 N210, B210, X310,发现Ettus USRP看似简单,想稳定的用起来,是很需要小技巧的。想使用软件功能取代FPGA逻辑的想法,看似很简单。但为了做到一定的带宽、一定的实时性和精度,采用的软件层面复杂技术丝毫不亚于FPGA,甚至更难调试。那些使用python 现有模块在grc下搭建的环境,是很难挑战原创 2021-03-20 16:50:52 · 4147 阅读 · 20 评论 -
工科应该重视C/C++Qt的学习
前面有学生问我为什么学校还在教授C语言、Qt,为什么不学习Python,我说,你可以边学C++Qt,边学Python,一点不矛盾啊!以后要解决卡脖子问题,有的是用武之地。这里转载知乎上看到的一个文章,权当科普啦...转载 2022-05-24 23:20:02 · 1384 阅读 · 3 评论 -
QtCreator对CMake的支持与局限-CMake快速上手小记
通过近期对QtCreator、CMake的试用,已经把现有的两组较为完备的项目迁移到CMake。在试用期间,还是遇到了一些坑,也对CMake的套路有了一些基本的认识。本文介绍通过在QtCreator下新建空项目,获得CMakeLists.txt模板的开始方法。围绕CMake变量表的获取与查看,介绍如何快速用变量表完成判断。评价目前Qt CMake与IDE的一些特点。CMake与QMake的工程对照见我的工程taskBus和qplanetosm。1. 快速开始一次迁移1.1 从模板开始对于原创 2022-04-14 22:32:24 · 4288 阅读 · 3 评论 -
利用bash脚本为Manjaro建立本地更新源
介绍在电教室搭建本地Manjaro源的脚本。原创 2022-02-27 12:09:06 · 545 阅读 · 0 评论 -
开源视频会议白板系统-openMeetings 6.2 局域网搭建官方教程
openMeetings是一种基于Java的BS架构会议系统,与WebRTC底层Kurento共同实现完整的流媒体会议系统。这套系统具备实时音视频、白板(画画、PDF、Word、Excel等)、桌面共享等功能。不过,搭建起来,其依赖项相当多。尝试了1天,找到了一个PDF说明,按部就班一次完成部署,非常棒。Installation of Apache OpenMeetings 6.2.0 on Ubuntu 21.04在这里分享一下。如果在互联网部署,还需要进行证书设置,参考Installation原创 2022-02-11 12:34:53 · 4628 阅读 · 0 评论 -
自由空间电磁波传输损耗公式(弗里斯公式)里的常数-32.44dB到底怎么来的?
几个月前,我们几个半吊子讨论了深空通信的问题, 原文看这里。今天,和天线专业的老师聊天,才弄清楚一些问题。看起来隔行如隔山。前面我们讨论的几个很民科的议题包括:自由空间耗散公式(弗里斯公式)里的常数 -32.44 dB 到底和气压有木有关系。原因是当时在网上看到一个文章,提到了这个公式是在一个大气压下应用的。有没有方法计算天线的特性?查阅资料,发现方向图和有限元分析就是干这个的,不过好用的建模分析软件一般很专业,基本都是要花钱的。使用Matlab 的天线工具箱,可以研究一些简单的模型。1.弗里斯公原创 2021-11-15 22:41:33 · 14184 阅读 · 3 评论 -
iFFT逆运算-使用软件无线电GQRX显示简笔画信号
在新学期,我们要开始介绍信号处理的知识。同学们很快就要接触FFT与iFFT运算了。这里抛砖引玉地先安排一个好玩的实验,我们制造一个奇怪的信号,使得使用软件无线电接收机接收后,可以显示出瀑布图片,如下图所示:上面这个图片是如何显示出来的呢,又用到哪些知识呢?其实,学完这个学期的课程,基本就可以理解上面的操作了。其主要原理是通过图像逐行进行iFFT运算,生成时域波型。适当调整各行持续的时间长度,使得GQRX瀑布图卷动一行和图像变换一行的时间一致即可显示出图。主要的知识脉络:1. 图像灰度、二值化由于我们原创 2021-09-08 23:33:56 · 974 阅读 · 0 评论 -
大道至简-基于C的库封装发布技术
在教研一线工作了20多年了,发现一个问题——很多小微企业保护自身知识产权的意识很好,但是做软件功能封装的技术却亟待提高。曾经有公司做了一款分布式有害气体监测系统,灵敏度、误报率、检测气体种类都满足要求,就是不想公开自己的传输数据格式。由于要集成到煤矿的信息化系统里,提交了一个接口库,大量使用std::string交互数据。这样一弄,就限定了编译器的版本,导致传感器的升级、大系统的升级被绑定在一起了。今天就集中讲一讲如何不花很多时间精力,就设计出一个广泛支持多类开发工具链的功能库。1 最简单的库封装标准C原创 2021-08-22 16:55:39 · 746 阅读 · 0 评论 -
树莓派OS 64位测试版接近发布状态
最近一直在用树莓派调试程序,安装了64位的RaspberryPi OS.树莓派官方系统是RaspberryPi OS,一款在Debain上深度定制的操作系统。随着官方开发团队的不断努力,目前从网址https://downloads.raspberrypi.org/raspios_arm64/images/下载最新镜像,写入SD卡后,即可尝试该系统。目前,64位上不正常的软件、缺少的软件基本都就绪了,用树莓派基本可以作为便携式小电脑,插在酒店的机顶盒边使用啦。1 Wolfram Mathematica前原创 2021-06-04 17:13:29 · 364 阅读 · 1 评论 -
9小时攒一个C++控制台中国象棋程序-树莓派x64开发
前面有同学想做中国象棋的游戏,丁老师也木有做过。查了一下,一般用最小最大策略搜索来弄。人工智能的程序,一天估计是做不出来的,我们先用搜索算法做一个能够玩的样本来。代码详见https://codechina.youkuaiyun.com/coloreaglestdio/qtcpp_demo/-/tree/master/chesspi1. 问题分析中国象棋复杂的不是绘图和贴图,主要有两部分。规则控制。包括不同籽粒的走位、杀、将。仔细的控制走位,避免异常的违规走位。内存控制。在可控的内存下完成搜索树的构建。描述原创 2021-06-03 21:58:50 · 1944 阅读 · 14 评论 -
从火星传图有多难-业余眼光看深空通信
2pi R h原创 2021-05-22 13:00:07 · 1004 阅读 · 0 评论