- 博客(44)
- 收藏
- 关注
原创 pgsql数据库AI助理开发记录
这是一次成功的大模型运用,项目最重要的部分在于规划好system文本,这将很大程度上影响AI输出的合理性。项目还可以升级拓展上下文连接、function calling等功能,实现数据库自动化管理助理。
2025-05-30 21:00:00
985
原创 软件生成中断 SGI、CPU 私有外设中断 PPI 和共享外设中断 SPI说明(个人理解,欢迎讨论)
该类中断可分发到任意 CPU 核心,对应的外设是系统的 “全局外设”(如 PS 端的 GPIO、UART、I2C,PL 端的自定义逻辑等),中断由外设硬件信号触发进入中断(如 UART 接收数据、GPIO 电平变化、PL 端自定义逻辑的中断信号)。PPI是各CPU自己的中断,在GIC中ID都是16~31,但在物理上是分离的(设置同样的IP但是指定CPU不同就是设置的不同中断)。这些中断都是CPU必有的一些硬件的中断如看门狗、定时器等,ZYNQ中来自PL端的中断(FIQ)属于CPU私有外设中断。
2025-12-18 15:17:47
329
原创 ZYNQ学习记录PS+PL(七)串口控制的延时脉冲发生器
在许多精密设备中电控需要准确的脉冲信号来作为驱动,且脉冲信号时常需要灵活变化,这要求脉冲有足够高的幅度,准确可调的脉宽和准确可调的延时。 本文记录了一个基于PZ7020-StarLite开发板制作的串口控制的延时脉冲发生器研发过程,并为其设计了一个简单的控制软件。 AXI-LITE是AXI总线中的一种,适用于轻量化的访问,该延时脉冲发生器的开发只需要按照通信指令操作几个寄存器,所以使用AXI-LITE寄存器来实现。 AXI-LITE有以下特点:
2025-09-19 14:05:22
651
原创 Linux学习记录(九)嵌入式Linux
NFS(全称Network File System)服务用于支持linux驱动的开发。NFS 是一种分布式文件系统协议,允许网络中的计算机像访问本地存储一样访问远程主机上的文件。它是 Linux/Unix 世界中实现文件共享的标准方式,类似于 Windows 环境中的“网络驱动器映射”。可以把 NFS 想象成将服务器上的一个文件夹“嫁接”到你的本地电脑上,让你在使用时感觉它就是本地硬盘的一部分。
2025-08-22 10:12:27
816
原创 Linux学习记录(八)文件共享
1.提前安装vmware-tools,可以通过Vmware的虚拟机菜单栏中拿到文件,然后直接运行vmware-install.pl文件进行安装;6.挂载后必须要再次进入/mnt/hgfs才能查看到共享的文件夹,ls一下即可看到共享文件夹名称。4.主机中修改文件夹属性,使其可以共享(保证主机上的文件夹也是可共享的)3.虚拟机设置中开启共享文件夹,总是启用。推荐使用指令安装vmware-tools;5.打开虚拟机终端,输入命令“
2025-08-04 17:17:46
265
原创 “S_Param”和“S参数仿真空间”
S参数 (Scattering Parameters - 散射参数)是指在高频(射频、微波、毫米波)领域,我们无法像在低频电路中那样方便地直接测量电压和电流,因为信号的波长变得与电路尺寸可比拟,传输线效应、寄生效应和分布效应变得显著。S参数就是用来描述端口上入射波和反射波/传输波之间关系的一组复数参数。它能够表征多端口网络(如放大器、滤波器、天线等)在不同频率下的特性。例如,对于一个2端口网络:S11 (输入反射系数):端口1的反射波与入射波之比,表示输入端的匹配程度(回波损耗)。
2025-07-31 20:30:00
468
原创 模拟电路硬件开发学习记录(二)带LVDS输出的比较器TLV3801
最近在设计一款射频比较器,在德州仪器的官网选择了这款满足要求的芯片,最开始只注意到了他那ps级的延迟和3GHz的切换频率,对于手册提到的LVDS输出没有在意,指导测试过程中芯片OUT+输出幅度只有350mv左右,没有像其他比较器一样输出TTL电平才觉得奇怪,于是了解了这种LVDS输出的比较器,记录如下。
2025-07-22 11:40:25
496
原创 linux学习记录(七)Shell
shell变量定义的规则如下:变量名可以包含字母(大小写敏感)、数字和下划线 _,不能包含其他特殊字符。变量名不能以数字开头,但可以包含数字。不要使用Shell的关键字(例如 if、then、else、fi、for、while 等)作为变量名,以免引起混淆。习惯上,常量的变量名通常使用大写字母,例如 PI=3.14。尽量避免在变量名中使用特殊符号,因为它们可能与 Shell 的语法产生冲突。变量名中不应该包含空格,因为空格通常用于分隔命令和参数。
2025-07-17 17:19:49
664
原创 VNC和Socket
VNC端口和Socket端口是两种完全不同的端口,二者的区别主要表现在功能和用途上:VNC端口是专门用于远程桌面连接的端口,主要用于VNC协议的通信,通常通过TCP协议传输。Socket端口是一个更广泛的概念,涉及所有基于TCP/IP协议的网络通信,不限于任何特定的应用。VNC只是使用Socket端口进行通信的一个应用实例。VNC端口仅用于VNC服务的远程控制。Socket端口可以用于任何需要网络通信的应用程序。
2025-07-14 20:00:00
327
原创 模拟电路硬件开发学习记录(一)运放芯片的输入失调电压Vos及其温漂
最近使用OPA858运放芯片做反相放大电路时遇见一个输入失调电压造成的问题:在电路通电后,通过示波器探测输入端,可以发现一个40mv左右的电平,再探测运放的输出端就会发现这个电平被放大到了400mv左右。我的输入信号是-10~-20mv的脉冲,输入后再探测输入端信号可以发现输入信号叠加在了40mv的电平上,反相放大后的信号也是叠加在了400mv的电平上,完全偏离了所要的放大效果。测试波形图如下:(其中蓝色波形为运放输出,绿色波形为运放输入)
2025-07-04 17:27:02
535
原创 ZYNQ学习记录FPGA(六)程序固化Vivado+Vitis
在ZYNQ的开发过程中,我们可以把程序存储在非易失性存储器中,在上电或者复位时让程序自动运行,防止掉电后程序丢失。下面通过对ZYNQ系统的启动流程及其每一步所要做的工作的介绍,来反推固化程序到非易失性存储器中所需要的文件。
2025-07-02 14:36:00
1518
原创 射频电路设计注意事项以及嘉立创阻抗计算器使用记录
1.选择多层PCB设计将地,电,信号分开,以降低寄生电感和信号间的交叉干扰。寄生电感和交叉干扰是高频电路设计中常见的问题。是指在电路的PCB布线、组件引脚、电源和地平面等部分,因布局设计不当或物理结构引起的不可避免的电感效应。实际上,即使我们并没有明确设计出电感元件,在所有电气元件和布线中都会存在一定的电感。这些寄生电感由于电磁效应会对电流流动产生阻碍,尤其是在高频电流下,影响电路的响应速度和稳定性;是指信号线之间由于相互耦合或电磁场的影响,导致一个信号线的信号“干扰”到另一条信号线。
2025-06-24 09:06:45
1306
原创 ZYNQ学习记录FPGA(四)时钟IP核 MMCM/PLL Clocking wizard
本文介绍了 ZYNQ7 FPGA 时钟资源的配置与管理,为 FPGA 时钟设计提供了实用的参考。介绍了 ZYNQ7 系列 FPGA 的时钟资源管理。全局时钟(Global Clock)用于驱动整个 FPGA 的高速逻辑,区域时钟(Regional Clock)则用于局部区域,具有更灵活的资源分配。文中详细说明了不同的时钟缓冲器(如 BUFG、BUFH、BUFR)及其用途,展示了时钟信号的分发路径。介绍了时钟管理模块 CMT,包括 MMCM 和 PLL,用于时钟倍频和抖动过滤。
2025-06-18 17:00:19
1147
原创 ambiguous clock in event control报错解决
我报错的原因是always语句中有两个if中对同一个变量进行非阻塞赋值,两者可同时进行所以冲突了,导致报错。
2025-06-17 17:18:12
361
原创 ZYNQ学习记录FPGA(三)状态机
使用parameter关键字定义状态机的各状态,所有状态的集合就叫做状态空间:使用reg关键字定义状态寄存器和下一状态变量这里需要注意的是这两个reg变量的位宽应该和状态空间中的状态常量位宽一致。在定义状态空间时,一般使用更加直观,译码更加简单的独热码的形式来定义,独热码是指每个状态只有一个寄存器置位(置1),译码逻辑简单:此时状态寄存器和下一状态变量位宽也应该是四。本文对状态机进行了详细的介绍,主要介绍了状态机的设计,状态机的设计可以归结为两个组合逻辑和一个时序逻辑的组合。
2025-06-11 21:00:00
669
原创 linux学习记录(六)三个常用命令介绍
Vim是由Vi发展过来的文本编译器,其代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
2025-06-11 18:30:00
896
原创 ZYNQ学习记录FPGA(二)Verilog语言
Verilog语育最初是于1983 年由Gateway Design Automation 公司为其模拟器产品开发的硬件建模语言。Verilog 语言于1995 年成为IEEE 标准,称为IEEE Std 1364-1995,也就是通常所说的Verilog-95。Verilog-2001是对Verilog-95的一个重大改进版本。功能定义的方法有三种:assign关键字、always关键字、例化实例元件。其中assign只能用于描述组合逻辑功能,always可以描述组合和时序逻辑功能。
2025-06-09 21:00:00
2225
2
原创 linux学习记录(五)磁盘管理
编辑并检验好磁盘分区后,只能通过fdisk -l查看到有这个磁盘分区的名字,其中的文件内容还不能访问,操作系统并不知道如何处理该分区中的数据,只有通过mount命令挂载后才能操作访问分区中的文件内容。-a 表示如果检查过程中有错则自动修复可以修复的部分,和-p的区别在于遇到不能修复的问题时-a会导致fsck命令停止,而-p会抛出错误并继续执行下面的检查和修复。disk used缩写,也是用于查看磁盘空间,与 df 命令不同的是 du 命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。
2025-06-08 14:55:04
937
原创 ZYNQ学习记录FPGA(一)ZYNQ简介
1)ZYNQ全称2)SoC:system on chips(片上系统),对比集成电路的SoB(system on board)3)ARM:处理器架构,基于RISC(精简指令集),对比X86架构基于CISC(复杂指令集)4)ASIC:Application-specific Integrated Circuit(专用集成电路);5)SOPC:System-on-Programmable-Chip(可编程片上系统);6)APSOC。
2025-06-06 18:45:00
1392
原创 linux学习记录(四)用户和用户组
linux系统作为典型的多用户系统,拥有完整的管理体系,管理体系中的命令,可以帮助开发者方便快捷的对系统中包含的用户和组进行管理。管理用户和组主要是为了划分权限,使得每一个用户都能各思其职,互不影响。用户和组的管理命令都较为简单,但是在批量添加用户时应该注意需要先将shadow中的密码字段解码写入passwd中,再将passwd密码加密写入shadow密码字段这个顺序。
2025-06-04 19:30:00
819
原创 利利普示波器数据解码(python)
最近,学习使用socket库链接设备进行通信,使用了利利普的VDS6104示波器来练手。2.连接示波器:使用connect方法,选择正确的端口和地址连接。3.定义查询和SCPI指令发送函数:4.按照规定的SCPI指令进行通信读取并解码示波器数据: 利利普示波器和其他示波器一样支持:WAVeform:DATA?指令,不同的是该指令不是返回指定通道的数据而是将所有打开的通道的数据拼接起来后返回。具体字节含义可见后面的附录。读取和解码示波器数据源码如下:
2025-06-04 10:03:19
541
原创 错误修复记录:windows无法加载文件 E:\nodejs\npm.ps1。未对文件 E:\nodejs\npm.ps1 进行数字签名。无法在当前系统上运行该脚本。
【代码】错误修复记录:windows无法加载文件 E:\nodejs\npm.ps1。未对文件 E:\nodejs\npm.ps1 进行数字签名。无法在当前系统上运行该脚本。
2025-05-31 10:57:15
547
原创 windows系统将个人博客网站部署到github上
其中repo为新建的github库的PAT+地址,红色划线部分从ghp一直到@为PAT,@后面为仓库地址部分,其余部分照着写即可。个人博客相关的所有的文件就已经存放到了GitHub上了,现在只凭仓库名就能访问我们的个人博客网站了。,如果使用 Git 的 HTTPS 方式进行身份验证,需要使用。注:GitHub 从 2021 年 8 月 13 日起,已经。
2025-05-29 21:45:00
407
原创 在npm中安装hexo-cli
然后在环境变量中添加该目录,这里我的目录是E:\web\react\npm\node-v18.20.5-win-x64\node_global。这样hexo-cli就算安装完成啦。
2025-05-27 17:05:50
280
原创 linux学习记录(二)linux文件的基本属性
紧接着的数字表示硬链接个数(有多少个指向这个目录的链接),数字后的两个名字依次表示username和groupname,接着是文件大小,日期:月 日 年或月 日 时:分,最后是目录名称。模式中用ugo表示三个部分,a表示所有部分,用‘’+‘’,‘’-‘’,‘’=‘’三个符号来操作权限,依然用哪个rwx来表示权限。②文件权限又有分为User、Group、Others三个部分,三个部分都需要设置rwx;文件权限主要包含rwx分别表示read(读权限)、write(写权限)、execute(执行权限);
2025-05-21 16:59:12
549
原创 关于pyqt5的Qaction类无法正常触发运行所连接的函数的问题
使用self.actionyunxing.triggered.connect(self.luru_2)连接了函数,但是触发时却没有执行。在使用Qaction连接触发信号时遇到了连接self.luru函数按下对应tool后没有执行self.luru函数的问题。
2025-05-20 14:12:43
245
原创 linux学习记录(一)linux的系统目录的含义及其用途
1.根据各目录的用处和存储的文件,应该知道的是:etc目录-系统配置文件、bin目录-常用命令、sbin目录-系统管理、usr/bin-用户自己的应用程序、usr/sbin-高权限用户的管理和系统守护程序这些目录里的文件需要注意不要误删了;11.proc目录:process缩写,这是一个虚拟目录,是系统内存的映射,通过访问这个目录可以获取系统的一些信息,该目录文件不在硬盘上,而是在内存中。9.mnt目录:用户自主挂载文件系统的位置,例如用户可以将U盘挂载到这个目录就可以在这个目录下直接操作U盘中的内容;
2025-05-19 14:53:33
410
1
原创 pyqt5软件动态创建控件问题记录
这样写的问题就在于添加的按钮在UI中是没有显示的,这是因为。CustomToolButton 是我基于 QToolButton 添加了鼠标左右键区分检测而创建的子类,属于 GUI 对象,不能安全地跨线程传递。主线程直接添加线程所发送的按钮;
2025-05-19 11:50:16
256
原创 pgsql批量查询
ANY关键字用于检查dose_meter_id 的值是否在传入的数组中,%s占位符需要传入一个数组。DISTINCT 关键字用于去重。表示只返回唯一的、不重复的 dose_meter_id。脚步查询时是逐行进行检索,比较耗时。其中%s占位符传入的是一个数值。
2025-05-16 09:21:00
174
原创 关于kivy库显示中文的问题
添加中文的字体主要利用resource_add_path函数添加字体路径,再通过LabelBase.register注册具体字体.
2025-05-13 14:50:25
402
原创 分辨率问题的万金油DPI感知(用于dearpyui界面设计)
在使用dearpyui进行UI设计时,用户常遇到字体分辨率低的问题。dearpyui本身并未提供直接的解决方案。然而,通过使用ctype库中的DPI感知功能,可以显著提升界面分辨率。具体方法是在调用create_context()之前,添加代码ctypes.windll.shcore.SetProcessDpiAwareness(1),将DPI感知设置为系统级别。这一调整前后对比显示,界面分辨率得到了明显改善,有效解决了字体模糊的问题。
2025-05-13 11:26:07
265
原创 pydearui设置文本框颜色
在DearPyGui中,add_input_text函数没有直接的color参数来设置文本框的颜色。要自定义文本框的样式,可以通过theme来修改控件的外观。首先,使用dpg.theme()创建一个主题,并通过dpg.theme_component(dpg.mvAll)为所有控件设置默认样式,如背景色、按钮颜色、文本颜色等。接着,使用dpg.theme_component(dpg.mvInputText)为输入框单独设置样式,包括背景色、边框颜色和文本颜色。此外,还可以通过dpg.add_theme_sty
2025-05-13 10:55:38
356
原创 dearpyui自适应窗口大小和主窗口设置(代码存根)
dpg.set_item_pos("一键初始化数据库", [button_x, window_height - 100])dpg.set_item_pos("测试数据库连接", [button_x, window_height - 140])# 自适应窗口大小调整回调。# 设置主窗口和视口。
2025-05-13 10:44:03
260
原创 关于pgsql连接报错:UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd6 in position 61: invalid continu
File "E:\Pycharm_project\single_photon_detector\RPLreader\pgsql数据库一条龙适配\test.py", line 56, in test_connection。报错提示编码不正确,实际config并没有中文,只要会导致连接失败的问题都会导致这个报错,报错时应该检查:1.密码是否错误;2.对应数据库是否创建;
2025-05-13 09:56:47
896
原创 关于本地pgsql数据库修改密码
输入psql -U postgres以postgres的身份进入pgsql,再输入命令:ALTER USER postgres WITH PASSWORD ’gyy888888’;重启后管理员身份启动命令行工具(记得添加path,路径在pgsql安装路径的bin路径下,我的路径是:E:\BC_software\pgsql\bin)密码忘了,先到pg_hba.conf文件中修改访问方法为trust(默认应该是scram-sha-256,全改为trust)修改后保存,再重启postgresql服务。
2025-05-12 17:48:04
479
原创 硅基流API连接报错:“API请求失败,状态码: 400”,修复记录。
max_tokens设置过高时会导致服务器崩溃,没有特别要求可以删除"max_tokens":10000这个参数设置。
2025-05-09 09:22:01
1732
【嵌入式系统】基于上位机串口通信的单刀双掷开关TTL信号控制方案:MCU与机械开关协同设计
2025-06-09
在dearpyui中的dpg.file_dialog选择文件时文件路径包含中文就好崩溃
2025-05-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅