自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(984)
  • 资源 (4832)
  • 收藏
  • 关注

原创 Quest 2浏览器+WebXR:构建可交互VR网页的实战指南

VR网页开发正从概念走向工程落地,其核心是WebXR标准与空间化浏览器的深度结合。WebXR并非简单3D化网页,而是通过空间坐标系映射、实时姿态追踪与射线检测,赋予网页原生的空间感知与交互能力;而Oculus Quest 2作为主流standalone VR设备,凭借定制Chromium内核、双视口渲染管线与离线PWA支持,成为当前最稳定的消费级WebXR运行平台。技术价值在于复用现有Web技术栈(HTML/CSS/JS/Three.js)快速构建无需安装、跨设备分发的空间应用;典型场景覆盖教育可视化、工业

2026-07-12 16:33:06 53

原创 工业信号干扰防护与PIC18F4458抗干扰设计

电磁干扰(EMI)和射频干扰(RFI)是工业自动化中的常见挑战,尤其在电机控制和电力变换场景中。通过光耦隔离技术(如FOD4216)和硬件滤波设计,可以有效抑制共模噪声,提升信号完整性。在软件层面,结合移动平均滤波和中值滤波算法,能显著降低信号误差。PIC18F4458等微控制器配合看门狗机制,可增强系统抗干扰能力。这些技术在工业生产线、电力电子等场景中具有重要应用价值,能有效解决编码器信号干扰等典型问题。

2026-07-12 16:06:29

原创 TLA2518与STM32F745ZG的ADC系统设计与优化

在嵌入式系统开发中,模数转换器(ADC)是实现模拟信号数字化的关键组件。SAR型ADC以其固定的转换时间和优异的能效比,成为工业控制和精密测量领域的首选方案。通过SPI接口与高性能MCU(如STM32F745ZG)协同工作,可构建低延迟、高精度的数据采集系统。本文以TLA2518为例,详细解析了从硬件电路设计到软件驱动的全流程实现,包括抗混叠滤波器配置、DMA数据传输优化以及利用CMSIS-DSP库进行实时信号处理等关键技术。特别针对工业应用场景,介绍了多设备同步采样和实时频谱分析等高级功能的实现方法,为开

2026-07-11 16:35:16 208

原创 直流有刷电机驱动方案:TC78H651AFNG与PIC18F86J55实战解析

直流有刷电机驱动是工业自动化和消费电子中的基础技术,其核心在于高效功率转换和精确控制。H桥驱动电路通过PWM调制实现电机正反转和调速,而现代驱动器IC如TC78H651AFNG集成了过流、过热等多重保护,大幅提升系统可靠性。配合PIC18F86J55等MCU的增强型PWM模块,可构建高精度闭环控制系统。在工业自动化领域,此类方案能实现±0.5mm级定位精度;在智能家居中,通过软启动算法和堵转检测技术优化用户体验。热词“PID算法”和“PWM信号”是系统关键,前者确保动态响应性能,后者直接影响驱动效率与EMI

2026-07-11 16:33:07 298

原创 高精度运动控制:A3908与PIC18LF4553的闭环伺服方案

运动控制技术是工业自动化和精密设备的核心,其关键在于实现高精度的位置与速度控制。闭环伺服系统通过实时反馈调节,显著提升了传统步进电机的性能极限。在硬件层面,A3908电机驱动芯片提供高达1/32微步进的分辨率,结合PIC18LF4553微控制器的硬件PWM和12位ADC,构建出经济高效的精密控制方案。该技术特别适用于3D打印、医疗设备等对运动精度要求严苛的场景,通过自适应微步进和反谐振算法,可实现±1微米级别的定位精度。实际案例证明,这种组合在卫星载荷指向机构等高端应用中,能以20%的成本实现媲美高端伺服系

2026-07-11 15:53:01 254

原创 ROS消息Traits详解:C++通信元信息与序列化性能核心

ROS消息类型不是简单的数据结构,而是由编译期元信息(Traits)驱动的通信契约。其核心原理在于通过MD5Sum、DataType、HasHeader等模板特化,在编译阶段静态声明消息的指纹、布局、头部支持与内存特性,从而实现零开销序列化、自动时间戳注入和跨节点类型校验。这种设计直接决定rosbag录制效率、实时控制确定性及嵌入式部署稳定性。在ROS与C++入门教程中,正确实现IsFixedSize和HasHeader是避免运行时乱码、崩溃与延迟抖动的关键门槛,也是构建高可靠机器人系统的底层基石。

2026-07-11 15:45:46 207

原创 ESP-WIFI-MESH 自组网实战:3节点树状拓扑搭建与数据包收发测试

本文详细介绍了ESP-WIFI-MESH自组网技术在3节点树状拓扑中的实战应用,包括网络搭建、数据包收发测试及性能优化。通过ESP32开发板和ESP-IDF框架,实现多跳网络通信,解决传统Wi-Fi覆盖范围受限的问题,适用于智能仓储、农业监测等场景。

2026-07-11 14:37:14 333

原创 BQ25887锂电池主动平衡方案与STM32控制实现

锂电池管理系统(BMS)是确保电池组安全高效运行的核心技术,其核心挑战在于解决串联电池间的电压不平衡问题。主动平衡技术相比传统被动方案,通过智能控制算法实现能量转移,可显著提升电池组整体性能。以BQ25887为代表的专业电源管理IC,集成400mA大电流平衡能力与I2C可编程接口,配合STM32F031C6等低功耗MCU,可构建高性价比的电池管理解决方案。该技术方案在电动工具、便携医疗设备等场景中具有重要应用价值,特别是在需要2S锂电池组且对空间和成本敏感的设计中,BQ25887的升压式开关拓扑与主动平衡算

2026-07-11 13:44:56 106

原创 STM32F429ZI与ADS127L11高精度数据采集方案

模数转换器(ADC)是工业自动化与精密测量的核心器件,其性能直接影响系统精度。Δ-Σ型ADC通过过采样和数字滤波技术,在24位分辨率下实现超低噪声(3.5μVrms)和111.5dB动态范围。配合STM32F429ZI微控制器的180MHz Cortex-M4内核和硬件SPI接口,可构建高性能数据采集系统。该方案采用DMA双缓冲技术实现400kSPS高速采样,通过移动平均滤波和温度补偿算法提升稳定性,典型应用于振动监测、医疗ECG等场景,相比分立方案降低40%功耗。

2026-07-11 13:35:54 272

原创 高精度ADC系统设计:基于ADS127L11与PIC18F86J15的振动监测方案

模数转换器(ADC)是连接模拟世界与数字系统的关键器件,其核心原理是通过采样量化将连续信号转换为离散数字量。Δ-Σ架构ADC通过过采样和噪声整形技术实现超高分辨率,特别适合工业测量、医疗设备等对精度要求严苛的场景。在振动监测等动态信号采集应用中,需要同时考虑ADC的分辨率、采样率和抗噪能力。以TI的ADS127L11为例,这款24位Δ-Σ ADC支持1067kSPS采样率,配合Microchip PIC18F86J15微控制器的SPI和DMA功能,可构建高性能数据采集系统。该系统采用双缓冲机制和三级校准方案

2026-07-11 12:58:37 318

原创 TB6593FNG与PIC18F46K42的直流电机控制方案

直流电机控制是工业自动化和消费电子中的关键技术,其核心在于通过PWM信号调节电机转速。H桥驱动芯片如TB6593FNG结合微控制器PIC18F46K42,能高效实现从基础调速到复杂PID闭环控制。TB6593FNG提供宽电压输入和3A峰值电流输出,内置低导通电阻MOSFET,适合12-24V供电场景。PIC18F46K42的增强型PWM模块和硬件乘法器,优化了实时控制算法。该方案在50W以内直流有刷电机控制中表现出色,兼具高集成度和成本优势,适用于医疗设备、自动化生产线等多种场景。

2026-07-11 12:26:10 293

原创 MAVLink 2.0 协议解析:无人机与地面站 3 种典型数据帧交互剖析

本文深入解析MAVLink 2.0协议在无人机通信中的关键作用,详细剖析心跳包(HEARTBEAT)、姿态数据包(ATTITUDE)和GPS原始数据包(GPS_RAW_INT)三种典型数据帧的交互原理与实现方式。通过代码实例和协议分析,揭示无人机与地面站通信的底层机制,为开发者提供高效的通信优化方案和安全实践建议。

2026-07-11 12:26:02 280

原创 基于MCP3202与PIC18F的锂电池组电压平衡系统设计

模数转换器(ADC)是电子系统中实现模拟信号数字化的核心器件,其中SPI接口的MCP3202以其12位分辨率和差分输入特性,特别适合多节电池串联场景的电压监测。在嵌入式系统设计中,微控制器通过精确的电压采样和平衡算法,可以显著提升电池组的整体性能和使用寿命。被动式电压平衡技术通过控制MOSFET和功率电阻的导通,以能量耗散方式实现电池均衡,这种方案在电动汽车、储能系统等工业领域有广泛应用。本文以PIC18F45K50为主控,结合MCP3202 ADC和SPI通信协议,详细解析了锂电池组电压平衡系统的硬件电路

2026-07-11 12:04:39 255

原创 TDA7468与MKV44F256VLH16构建高性能音频处理系统

音频处理系统是现代电子设备中的重要组成部分,其核心在于信号链路的精确控制和实时处理。通过I²C总线控制的专业音频处理器TDA7468,配合基于ARM Cortex-M4内核的MKV44F256VLH16微控制器,可以构建高性能的音频处理解决方案。这种组合特别适合需要多路音频输入和实时音效调节的场景,如专业录音设备、车载音响等。系统设计时需特别注意电源管理和PCB布局,模拟与数字电路的隔离是关键。在软件层面,利用MCU的DSP处理能力可以实现均衡器、混响等音频算法,而合理的任务调度能确保实时性。这套方案通过优

2026-07-11 11:52:01 274

原创 STM32与MCP3202实现锂电池组电压平衡方案

电压平衡技术是锂电池组管理系统的核心功能,通过实时监测和调整各单体电池的电荷状态,可显著提升电池组的安全性和循环寿命。其工作原理基于模数转换器(ADC)采集电池电压数据,由微控制器执行均衡算法控制电荷分配。在工程实践中,采用12位精度的MCP3202 ADC与STM32F373RC组合方案,既能满足±30mV的精度要求,又可实现动态平衡控制。该技术广泛应用于电动汽车电池包、储能系统等场景,其中主动平衡算法与PID控制的结合可优化平衡速度,而移动平均滤波能有效抑制采样噪声。通过硬件电路设计和软件算法的协同优化

2026-07-11 11:12:32 297

原创 STM32L432KC与L9958的电机控制方案解析

电机控制是工业自动化和机器人领域的核心技术,其性能直接影响系统的响应速度和精度。通过SPI接口实现数字化控制,相比传统PWM方式具有更高的精度和灵活性。L9958作为一款集成H桥驱动器,内置功率MOSFET和全面的保护功能,与STM32L432KC微控制器配合,可构建高性价比的电机控制方案。该方案特别适合需要低功耗和高性能的应用场景,如便携式设备和电池供电系统。通过优化PID算法和电流前馈补偿,能显著提升动态响应和控制精度。

2026-07-11 10:44:29 223

原创 嵌入式系统中信号上拉/下拉配置的硬件与软件实现

在嵌入式系统设计中,信号的上拉/下拉配置是确保电路稳定工作的基础操作。通过硬件和软件的协同设计,可以实现信号的可靠控制。硬件方面,采用专业的信号调理模块如DTH-08,配合微控制器如PIC18F47Q10,能够灵活配置信号状态。软件方面,通过寄存器配置和SPI通信,实现信号的动态切换。这种方案特别适用于工业控制、自动化测试等场景,能够显著提升系统的可靠性和抗干扰能力。

2026-07-11 10:30:06 201

原创 直流负载管理中G6D-ASI继电器与PIC18F4525的优化方案

直流负载管理在工业自动化和电力电子系统中扮演着关键角色,其核心挑战在于如何降低能量损耗并提升系统效率。通过优化继电器设计和微控制器精准控制,可以有效解决传统方案中的触点磨损、电弧效应和机械响应速度限制等问题。欧姆龙G6D-ASI继电器凭借银合金触点材料和优化的磁路设计,显著降低了接触电阻和保持电流,而PIC18F4525微控制器则通过增强型CCP模块和10位ADC实现精准控制。这种组合方案在电动汽车充电桩、光伏逆变器和工业机器人等应用场景中表现出色,提升了系统效率和可靠性。

2026-07-11 09:41:17 175

原创 基于G6D-ASI继电器与TM4C1294的智能负载控制方案

在工业自动化领域,直流负载管理直接影响系统可靠性与能效。传统机械继电器存在触点磨损、响应慢等痛点,而电子开关往往难以兼顾隔离性能与大电流承载。通过欧姆龙G6D-ASI PCB继电器与TI TM4C1294微控制器的组合,构建了一套高可靠性智能控制方案。G6D-ASI继电器具备100mΩ超低接触电阻和5ms快速响应特性,配合TM4C1294的PWM模块和休眠功能,实现μA级待机功耗与即时唤醒。该方案采用光耦隔离设计,有效抑制92%地线噪声,并通过自适应PWM算法降低60%线圈功耗。在光伏逆变器、充电桩等场景中

2026-07-11 09:13:33 253

原创 直流负载管理:G6D-ASI继电器与MK64FN1M0VDC12 MCU优化方案

直流负载管理是电力电子系统的核心技术,其核心挑战在于触点损耗和动态响应。继电器作为关键执行器件,其接触电阻和电弧控制直接影响系统效率与可靠性。G6D-ASI继电器通过银合金触点和氮气填充等创新设计,显著降低接触电阻和电弧能量。结合MK64FN1M0VDC12微控制器的硬件PWM和高速ADC,可实现精准的动态控制。该方案在工业自动化、新能源系统中具有广泛应用,能有效提升系统效率和响应速度。

2026-07-11 09:03:48 252

原创 STM32F429ZI与PAM8904构建高效压电发声系统

在嵌入式系统开发中,音频信号生成是工业控制和物联网设备的关键技术。通过PWM信号精确控制原理,微控制器可以产生不同频率的方波信号,驱动发声器件产生可识别音调。STM32F429ZI凭借其高性能ARM Cortex-M4内核和丰富外设,特别适合需要精确时序控制的音频应用场景。结合PAM8904压电驱动器芯片的多模式电荷泵和超低功耗特性,这一组合能实现比传统蜂鸣器高15dB的声压级输出,同时功耗降低至1/3。该方案已成功应用于工业设备报警、智能家居安防等需要可靠音频提示的领域,其中PAM8904的热关断保护和S

2026-07-10 16:09:53 242

原创 C++素数筛选算法:从埃氏筛到欧拉筛的原理、实现与性能优化

素数判定是算法与数据结构中的基础问题,其核心在于高效识别质数。传统试除法原理简单但效率低下,而筛选法通过主动排除合数来提升性能,体现了空间换时间的思想。在工程实践中,埃拉托斯特尼筛法通过布尔数组标记倍数,实现了接近线性的时间复杂度,成为处理大规模素数问题的利器。通过优化如奇数筛和位压缩技术,可进一步减少内存占用和提升缓存效率,适用于编程竞赛和算法面试场景。欧拉筛则通过确保每个合数仅被最小质因子筛除,达到理论线性复杂度,适用于对性能有极致要求的场景。本文深入探讨了C++中筛选法的演进,结合vector<boo

2026-07-10 15:54:53 290

原创 AD5593R与PIC18F46K42混合信号系统设计指南

混合信号系统是现代嵌入式设计的核心挑战,需要同时处理模拟信号采集与数字信号控制。AD5593R作为多功能数据转换芯片,通过可配置的12位ADC/DAC通道实现灵活的信号处理,配合PIC18F46K42的硬件I2C与DMA控制器,可构建高精度实时控制系统。在工业自动化领域,这种组合能实现4-20mA过程控制;在音频处理中,可达到48kHz采样率与208μs低延迟。关键技术包括基准电压设计、噪声抑制策略和温度漂移补偿算法,其中ADR4525基准源与ADuM系列隔离器的使用显著提升系统稳定性。

2026-07-10 15:47:56 307

原创 PIC32MZ微控制器与DTH-08传感器的上拉电阻配置优化

在嵌入式系统开发中,上拉和下拉电阻是确保信号稳定性的基础元件,通过将信号线拉向VCC或GND来防止浮空噪声。其原理类似于为数字信号设置默认状态,在单总线通信(如DTH-08温湿度传感器)等场景尤为关键。PIC32MZ系列微控制器提供可配置的上拉/下拉电阻功能,但内置电阻值(约25kΩ)可能不满足特定传感器的时序要求。通过外接4.7kΩ电阻并优化GPIO配置,可显著提升通信可靠性。这种硬件设计与软件控制的结合,在工业监测、物联网设备等需要精确时序控制的领域具有重要应用价值。

2026-07-10 15:21:32 339

原创 TMC7300与PIC32MX675F512L的电机控制硬件设计与算法实现

直流电机控制是现代嵌入式系统的重要应用场景,其核心在于驱动电路与微控制器的协同设计。TMC7300作为智能电机驱动IC,集成了PWM调制、电流检测和保护电路,通过SPI接口可灵活配置工作参数。配合PIC32MX系列MCU的硬件PWM和ADC模块,能够构建高精度的速度-电流双闭环控制系统。在工程实践中,采用位置式PID算法可实现快速动态响应,而PCB布局优化和EMI抑制措施则是确保系统稳定性的关键。特别是在使用TMC7300的SmartTune™功能时,能显著改善低速性能,但需注意其动态PWM频率特性。这类设

2026-07-10 15:21:14 266

原创 STM32与EM3080-W的条形码识别系统设计与实现

条形码识别技术是物联网和自动识别领域的核心技术之一,其基本原理是通过光电传感器将黑白条纹转换为电信号,再经数字处理还原编码信息。典型的硬件架构包含CCD传感器、信号调理电路和微控制器三个关键部分。EM3080-W作为专用扫描模块,集成了640像素线性CCD和LED光源,配合STM32F100ZE实现信号采集与解码算法。在工程实现上,需要特别注意电源滤波、信号隔离和精确时序控制,其中125kHz的采样时钟和动态阈值算法直接影响识别精度。该系统采用EAN-13标准解码,通过宽度比例分析和模10校验实现可靠识别,

2026-07-10 15:18:39 292

原创 TPA3128D2数字功放芯片DIY音频系统设计与优化

数字功放技术通过PWM调制实现高效音频放大,其核心原理是将模拟信号转换为高频开关信号,经MOSFET功率管和LC滤波器还原为音频。相比传统AB类放大器,Class D架构具有转换效率高(可达90%以上)、发热量小的显著优势。TPA3128D2作为德州仪器的经典数字功放芯片,集成了低导通电阻MOSFET和完备的保护电路,配合PIC单片机可实现智能化的音频控制系统。在DIY音响、汽车音响改装等场景中,这类方案能有效平衡音质与能效,特别适合需要紧凑设计的场合。通过合理的PCB布局、电源滤波和软件优化,可以进一步提

2026-07-10 14:44:51 255

原创 锂电池组主动均衡技术:BQ25887芯片应用与STM32控制

电池管理系统(BMS)中的单元平衡技术是提升锂电池组性能的核心环节。其工作原理是通过监测单体电池的电压、温度等参数,采用能量转移方式消除差异。相比传统电阻放电方案,主动平衡技术具有效率高、损耗低的显著优势,典型应用包括电动汽车、储能系统等领域。以TI的BQ25887芯片为例,其电容式电荷泵架构可实现85%以上的平衡效率,配合STM32微控制器的精准采样算法,能有效解决电池组不一致性问题。实际测试表明,该方案可将平衡时间缩短至传统方法的1/4,同时降低能量损耗达70%,显著提升电池循环寿命。

2026-07-10 14:31:49 316

原创 高精度ADC与MCU信号采集系统设计与优化

模拟信号数字化是工业自动化和医疗设备中的核心技术,其核心在于模数转换器(ADC)与微控制器(MCU)的协同工作。SAR型ADC以其高精度和快速转换特性成为首选,配合Cortex-M系列MCU的丰富外设可实现高效数据采集。通过合理的硬件设计(如抗混叠滤波器和精确参考电压)和软件优化(如DMA传输和数字滤波),能显著提升信号链性能。以TLA2518 ADC和MK24FN256VDC12 MCU组合为例,该系统在医疗监护等场景中可实现0.05%级精度,ENOB达11.7位,SPI接口速率达10MHz,满足多通道同

2026-07-10 13:49:20 251

原创 PIC18F57Q43与DTH-08模块的嵌入式信号配置实践

在嵌入式系统开发中,信号的上拉/下拉配置是确保电路稳定工作的基础操作。通过软件可配置的上拉/下拉电阻,开发者可以灵活调整电路状态,提升系统的可靠性和适应性。PIC18F57Q43微控制器与DTH-08模块的结合,为开发者提供了一种高效、低功耗的解决方案。这种方案特别适用于需要快速响应和低功耗的嵌入式应用场景,如IoT设备和便携式仪器。通过SPI接口和寄存器操作,开发者可以轻松实现信号的动态配置和状态读取,同时结合去抖处理和低功耗设计,进一步优化系统性能。

2026-07-10 13:47:43 299

原创 STM32F412RE与AD7490的硬件协同设计与优化

模数转换器(ADC)是嵌入式系统中实现信号采集的核心器件,其性能直接影响系统测量精度。逐次逼近型(SAR)ADC凭借其高速、高分辨率特性,在工业传感器接口和医疗设备信号采集中广泛应用。AD7490作为16位1MSPS SAR ADC,通过FSMC接口与STM32F412RE微控制器协同工作,可实现零CPU干预的高速数据采集。硬件设计需重点关注基准源选择、电源隔离和时序匹配,而软件层面通过双缓冲DMA策略和两点校准算法,可进一步提升系统稳定性和测量精度。这种组合方案特别适合振动信号分析和多通道温度监测等场景,

2026-07-10 12:53:31 246

原创 L9958与PIC24FJ256GB110在电机控制中的高效应用

电机控制是现代工业自动化的核心技术,其核心在于精确的驱动与实时控制。通过PWM(脉宽调制)技术,可以实现对电机速度和扭矩的精准调节。L9958作为高集成度有刷直流电机驱动器,结合PIC24FJ256GB110高性能MCU,能够显著提升系统响应速度和稳定性。这种组合在工业机械臂、自动化设备等场景中表现出色,实测可将电机响应速度提升40%,纹波电流降低35%。其智能电流调节架构和硬件PWM模块,为工程师提供了高效的解决方案。

2026-07-10 12:15:22 280

原创 锂电池组电压均衡系统设计与实现

在电池管理系统(BMS)中,电压均衡技术是解决串联电池组不一致性的关键技术。其核心原理是通过主动或被动方式调整各单体电池的充放电状态,消除因制造差异或老化导致的电压偏差。采用SPI接口的12位ADC(如MCP3202)配合微控制器(如PIC18F26K20)可实现高精度电压采样,而PWM控制的主动均衡电路能有效提升电池组整体性能。该技术在电动工具、储能系统等场景中尤为重要,能显著延长电池寿命并提升安全性能。本文详细介绍了基于硬件电路设计和软件算法的完整解决方案,包括ADC采样滤波、动态阈值均衡策略等关键技术

2026-07-10 12:08:44 302

原创 基于MA12070与PIC18的高保真音频系统设计

数字音频放大器是现代音频系统的核心器件,其工作原理是通过PWM调制将音频信号转换为高频开关信号。MA12070作为英飞凌第四代D类放大器,采用多电平切换技术显著提升转换效率,在4-26V宽电压范围内实现2×80W输出。结合PIC18LF46K80微控制器的智能调控,这套方案在信噪比(110dB)和总谐波失真(0.004%)等关键指标上达到高端音响水准。典型应用包括智能家居音响、车载音频系统等场景,其中MA12070的高效率特性(91%转换效率)和PIC18的灵活配置(I2C控制接口)尤其适合需要紧凑设计的便

2026-07-10 11:53:37 322

原创 L9958与STM32F446ZE电机控制方案详解

电机控制是现代工业自动化和机器人技术的核心环节,其关键在于硬件选型与实时控制算法的完美结合。L9958作为汽车级H桥驱动器,提供40V/3A的强大驱动能力,配合STM32F446ZE的180MHz Cortex-M4内核,可实现微秒级延迟的FOC算法处理。这种组合特别适合需要高精度PWM调制和实时响应的应用场景,如工业机器人、无人机和智能家电。通过优化电源设计、PCB布局和温度管理策略,系统能显著降低电流纹波并提升工作寿命。电流闭环控制和死区时间微调等技巧,进一步确保了电机运行的平稳性和效率。

2026-07-10 11:28:15 249

原创 ELRS 2.4G与915MHz频段对比评测:3款接收机在城区/郊外的40公里拉距实测

本文深度评测了ELRS 2.4G与915MHz频段在城区和郊外的40公里极限拉距表现,通过BetaFPV Nano、Happymodel EP2、RadioMaster RP1三款接收机的实测数据,揭示了不同频段在穿透力、抗干扰和传输距离上的优劣。结果显示,915MHz频段在远距离和复杂环境中表现更优,而2.4G频段则更适合低延迟需求的场景。

2026-07-10 11:19:03 227

原创 STM32与PAM8904构建低功耗音频通知系统

音频通知系统是工业控制和物联网设备中的关键组件,其核心在于通过微控制器和专用驱动器实现可靠的声音提示。基于PWM信号控制原理,STM32系列MCU配合PAM8904等音频驱动器,能够精准生成不同频率和音量的提示音。这种技术方案在低功耗模式下电流可低至1μA,同时支持多级音量调节,特别适合智能家居、医疗设备等场景。通过硬件PWM模块和专用驱动芯片的组合,工程师可以快速实现从简单蜂鸣到复杂旋律的各类音频需求。本文以STM32F042K6和PAM8904为例,展示了如何构建高性能低功耗的嵌入式音频系统,并解决实际

2026-07-10 11:01:17 228

原创 基于TPS61170与PIC32MZ的高效DC-DC升压转换系统设计

DC-DC升压转换是电力电子中的基础技术,通过开关器件和储能元件实现电压提升。其核心原理是利用电感储能和电容滤波,通过PWM控制开关管占空比来调节输出电压。TPS61170作为集成升压控制器,配合PIC32MZ微控制器可构建高精度数字电源系统,在实验室设备、工业传感器等场景中实现高效能量转换。典型设计需计算电感、电容等关键参数,并优化PCB布局以降低EMI干扰。该方案特别注重轻载效率优化,通过跳周期模式在10%负载下仍保持80%以上转换效率,同时结合PID算法实现闭环控制,为物联网设备等低功耗应用提供可靠电

2026-07-10 10:43:45 293

原创 PIC18F46K80与PAM8904构建智能警报系统设计

微控制器与音频驱动芯片的组合在工业自动化和智能家居领域具有广泛应用。通过PWM信号生成技术,系统能够实现精准的频率控制,满足不同场景下的警报需求。PIC18F46K80微控制器凭借其低功耗和硬件PWM模块,特别适合构建高效的通知系统。结合PAM8904音频驱动芯片,系统能够驱动多种类型的蜂鸣器,实现差异化的警报级别区分。这种方案在智能农业大棚和工业设备监控等场景中表现出色,能够在嘈杂环境中保持高识别率。

2026-07-10 10:37:27 270

原创 嵌入式音频处理:TS2007FC与TM4C123GH6PZ方案详解

音频处理系统在现代嵌入式设备中扮演着重要角色,其核心在于高效的信号处理与功率放大技术。D类放大器通过PWM调制实现高达90%的电源效率,而ARM Cortex-M4微控制器凭借硬件浮点单元加速实时音频算法处理。这种组合方案特别适合需要低延迟、高保真输出的场景,如智能音箱、车载音响等消费电子设备。在工程实践中,合理的电源设计、PCB布局以及DSP算法优化是保证音频质量的关键。通过对比测试,TS2007FC放大器与TM4C123GH6PZ的组合在THD+N(总谐波失真加噪声)和系统延迟等关键指标上表现优异,其中

2026-07-10 09:29:20 339

使帮助文档-sql server 数据库基本操作语句总结

10.2 使帮助文档 我坚信,授之以鱼不如授之以渔。官方资料是所有关于 STM32 知识的源头,所以在本 小节介绍如何使用官方资料。官方的帮助手册,是最好的教程,几乎包含了所有在开发过 程中遇到的问题。这些资料已整理到了本书附录资料中。 10.2.1 常用官方资料  《STM32F10X-中文参考手册》 这个文件全方位介绍了 STM32 芯片的各种片上外设,它把 STM32 的时钟、存储器架 构、及各种外设、寄存器都描述得清清楚楚。当我们对 STM32 的外设感到困惑时,可查阅 这个文档。以直接配置寄存器方式开发的话,查阅这个文档寄存器部分的频率会相当高, 但这样效率太低了。  《STM32 规格书》 本文档相当于 STM32 的 datasheet,包含了 STM32 芯片所有的引脚功能说明及存储器 架构、芯片外设架构说明。后面我们使用 STM32 其它外设时,常常需要查找这个手册,了 解外设对应到 STM32 的哪个 GPIO 引脚。  《Cortex™-M3 内核编程手册》 本文档由 ST 公司提供,主要讲解 STM32 内核寄存器相关的说明,例如系统定时器、 NVIC 等核外设的寄存器。这部分的内容是《STM32F10X-中文参考手册》没涉及到的内核 部分的补充。相对来说,本文档虽然介绍了内核寄存器,但不如以下两个文档详细,要了 解内核时,可作为以下两个手册的配合资料使用。  《Cortex-M3 权威指南》。 这个手册是由 ARM 公司提供的,它详细讲解了 Cortex 内核的架构和特性,要深入了 解 Cortex-M 内核,这是首选,经典中的经典。这个手册也被翻译成中文,出版成书,我们 配套的资料里面有提供中文版的电子版。  《stm32f10x_stdperiph_lib_um.chm》 这个就是本章提到的库的帮助文档,在使用库函数时,我们最好通过查阅此文件来了 解标准库提供了哪些外设、函数原型或库函数的调用的方法。也可以直接阅读源码里面的 函数的函数说明。

2021-07-11

每课一问-sql server 数据库基本操作语句总结

29.4 每课一问 6. 如果汉字使用字母、笔画和部首应如何编码? (答案:拼音、五笔输入法就是这样编码的) 7. 查阅资料,了解 UTF-16 的四字节编码方式。 (答案:UTF-16对 Unicode字符集里的字符用双字节或者四字节进行表示。字符编号在 0 到 65535 的统一用 2 个字节来表示,将每个字符的编号转换为 2 字节的二进制数,从 0x0000 到 0xFFFF。 对于编号大于 0xFFFF 的,也就是编号从 0x010000 到 0x10FFFF 的字符,以如下方式进行编码:将该字符的编号减去 0x010000,减去之后范围从 0x00000到 0xFFFFF,刚好用 20个 bit位 可以表示,将前 10个 bit位作为高位与 0xD800 相加,后 10 个 bit 位作为低位和 0xDC00 相加,因为前 10 个 bit 位在前面补 6 个 0,凑 成双字节后,范围是从 0x0000 到 0x03FF,因此加上 0xD800 后 范围从 0xD800 到 0xDBFF,同样的后 10 个 bit 位加上 0xDC00 后范围从 0xDC00 到 0xDFFF,很巧妙的 是,在 Unicode 字符集里,刚好编号 0xD800 到 0xDFFF 没有表示任何字符,因此在解 码的 时候如果发现高位的两个字节是在 0xD800 到 0xDBFF 就知道,这两个字节应该 和低位的 2 个字节作为一个整体,即以四字节为单位进行解析。UCS-2 字符集是 Unicode 中编号从 0 到 65535 的字符, 编码方式与 UTF-16 的双字节字符编码方式完全 相同,就是对编号从 0 到 65535 的字符,按双字节进行编码。) 8. 使用字模软件自己生成字模并验证,尝试修改字模选项的配置。(可使用串口打印字模 的方式快速验证,把生成的字模替换成原“当”字的字模,并修改打印函数) 9. 找一些网页,查看它的编码方式,除了历史遗留问题,解释为什么目前有的网页仍不 采用 UTF-8 编码。(使用浏览器查看网页源文件,在前几行 HTML代码中一般会看到

2021-07-11

带参加密子程序的应用-computational lithography

12.5 带参加密子程序的应用 __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ __________________________________________________________________________________ Memo NO. ___________ Date / /

2021-07-11

使用诊断事件的一种方法-王晓波-从微服务到serverless+架构应用与实践v2

方法四、使用诊断事件的一种方法 1、 确定 TEMP 表空间的 ts# SELECT ts#, name FROM sys.ts$; TS# NAME ----------------------- 0 SYSYEM 1 RBS 2 USERS 3* TEMP 4 TOOLS 5 INDX 6 DRSYS 2、 执行清理操作 alter session set events 'immediate trace nameDROP_SEGMENTS level 4' ; 说明: temp 表空间的 TS# 为 3*, So TS#+ 1= 4 方法五、 重建 TEMP 表空间 Temporary tablespace 是不能直接 drop 默认的临时表空间的,不过我们可以通过以下方 法来做。 准备:查看目前的 TemporaryTablespace

2021-07-11

重新启用日志传送到备库-王晓波-从微服务到serverless+架构应用与实践v2

4.3 重新启用日志传送到备库 这将使通过 catupgrade/catbundle/catcpu 脚本对数据库的改变被应用到备库。 4.3.1 如果您使用 Data Guard Broker 配置 [oracle@aulnx8 admin]$ dgmgrl DGMGRL for Linux: Version 10.2.0.4.0 - Production Copyright (c) 2000, 2005, Oracle. All rights reserved. Welcome to DGMGRL, type "help" for information. DGMGRL> connect / Connected. DGMGRL> edit database plb_prm set state='ONLINE'; Succeeded. DGMGRL> exit 或 4.3.2 如果您使用 sqlplus 重新启用从主库到备库传送归档的目标地址

2021-07-11

使用规范化设计变量的理由-matlab从零到进阶

6.7 使用规范化设计变量的理由 读者己注意到,在本章中,我们在进行所有f 析因设计和模型拟舍时都采用了规范设计变 量, -1 ~ Xi 运 +1,而不是来用按它们原始单位(有时称实际、自然或工程单位)的设计因子. 若采用工程单位,与规范单位分析相比,我们将得到不同的数值结果,通常这个结果不容易解释. 为了说明两个分析间的一些差异,考虑下面的实验.一个简单DC 电路连接两个不同的电 阻, 10 和 20 电路也包含一只电流表和一个可变输出电源,当电阻安装在电路中时,调整电源 直到电流达到4 安培或 6 安培用伏特计读取电源的电压输出,进行22 析因设计的两次重复, 表 6.21 给出了结果.我们知道欧姆定律确定了与测量误差无关的电压观测.无论如何,对由经 验模型得到的数据的分析给出了一些关于所设计的实验中规范单位和工程单位的值的信息

2021-07-11

静态注册-pmbok第五版 英文版

三、静态注册 静态注册就是实例启动时读取 listener.ora 文件的配置,将实例和服务注册到监听程序。 无论何时启动一个数据库,默认地都有两条信息注册到监听器中:数据库服务器对应的实例 和服务。 静态注册时,listener.ora 中的 GLOBAL_DBNAME 向外提供服务名,listener.ora 中的 SID_NAME 提供注册的实例名。 采取静态注册方法时,listener.ora 中的内容如下: SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = D:/oracle/product/10.2.0/db_1) (PROGRAM = extproc) ) (SID_DESC = (GLOBAL_DBNAME =orcl) (ORACLE_HOME = D:/oracle/product/10.2.0/db_1) (SID_NAME =orcl) ) (SID_DESC = (GLOBAL_DBNAME =orcl1) (ORACLE_HOME = D:/oracle/product/10.2.0/db_1) (SID_NAME =orcl) ) ) 该文件表明数据库是单实例的,实例名为 orcl,向外提供了两个服务:orcl 和 orcl1 静态监听: oracle 实例运行后,监听程序启动时,根据 listener.ora 的配置注册相应的服务。 其中 global_dbname 对应的是 oracle 对外的服务名,即初始化参数里的 service_names 而 sid_name 对应的是 oralce 实例的名称,即初始化参数里的 instance_name 既然有动态监听为什么还要静态监听呢?原因如下: 1.监听器不是最早启动,oracle 实例先启动 2.监听器重启 3.oracle 实例没有 open

2021-07-11

搭建硬件工程-pmbok第六版-中文-带吴老师标记和书签版

14.2 搭建硬件工程 我们在 Vivado 开収环境里新建了一个 hdmi_display 癿工程,幵生成了一个名为 system 癿 Block Diagram 文件。接下去就是添加 xilinx 自带癿 IP 和用户自定义 IP 刡返个 system 中。 14.2.1. 导入自定义 IP 在本实验,我们需要用刡 2 个用户自定义癿 IP,它们分删是 rbg2dvi 和 axi_dynclk。兰亍 如何定刢 IP 我们在前面章节已经为大家介绍过了,所以返里因为篇幅原因,丌再介绍,我们已 经为大家准备好了返两个 IP,用户叧要导入刡自己癿顷目中就可以了。 1.拷贝我们提供癿 repo 文件夹癿内容刡刚新建癿工程 labs 癿目录下(repo 文件下有两个自定 义 IP) 2.在 Vivado 开収环境里,右键点击 Diagram 癿空白处,弹出选择框里选择 IP Setting...

2021-07-11

结束采购-深入浅出mips

4.6结束项目或 阶段 项目采购管理 12.4 结束采购 收尾过程组 华夏智诚项目管理专家认证培训 110

2021-07-11

寸电阻触摸屏-天线测量手册

图 27-11 实验板标配的 3.2 寸电阻触摸屏 图中的标号部分是液晶屏幕的整体,通过引出的排针接入到实验板上可对它进行控 制,它分为标号的液晶触摸面板和标号的 PCB 底板两部分。 标号处的液晶触摸面板由液晶屏和触摸屏组成,屏幕表面的灰色线框即为电阻触摸 屏的信号线,触摸屏的下方即为液晶面板,在它的内部包含了一个型号为 ILI9341的液晶控 制器芯片(由于集成度高,所以图中无法看见),该液晶控制器使用 8080 接口与单片机通讯, 图中液晶面板引出的 FPC 信号线即 8080 接口(RGB 接口已在内部直接与 ILI9341 相连),且 控制器中包含有显存,单片机把要显示的数据通过引出的 8080 接口发送到液晶控制器,这 些数据会被存储到它内部的显存中,然后液晶控制器不断把显存的内容刷新到液晶面板, 显示内容。 标号处的是 PCB 底板,它主要包含了一个电阻触摸屏的控制器 XPT2046,电阻触摸 屏控制器实质上是一个 ADC芯片,通过检测电压值来计算触摸坐标。PCB底板与液晶触摸 面板通过 FPC 排线座连接,然后引出到排针,方便与实验板的排母连接。

2021-07-11

查看工程的空间分布-天线测量手册

45.3 查看工程的空间分布 由于内部 FLASH本身存储有程序数据,若不是有意删除某段程序代码,一般不应修改 程序空间的内容,所以在使用内部 FLASH存储其它数据前需要了解哪一些空间已经写入了 程序代码,存储了程序代码的扇区都不应作任何修改。通过查询应用程序编译时产生的 “*.map”后缀文件,可以了解程序存储到了哪些区域,它在工程中的打开方式见图 45-2, 也可以到工程目录中的“Listing”文件夹中找到,关于 map 文件的详细说明可参考前面的 《MDK 的编译过程及文件详解》章节。 图 45-2 打开工程的.map 文件 打开 map 文件后,查看文件最后部分的区域,可以看到一段以“Memory Map of the image”开头的记录(若找不到可用查找功能定位),见代码清单 45-1。 代码清单 45-1 map 文件中的存储映像分布说明 1 ========================================================= 2 Memory Map of the image //存储分布映像 3 4 Image Entry point : 0x08000131 5 /*程序 ROM 加载空间*/ 6 Load Region LR_IROM1 (Base: 0x08000000, Size: 0x000017a8, Max: 0x00080000, ABSOLUTE) 7 /*程序 ROM 执行空间*/ 8 Execution Region ER_IROM1 (Base: 0x08000000, Size: 0x0000177c, Max: 0x00080000, ABSOLUTE) 9 /*地址分布列表*/ 10 Base Addr Size Type Attr Idx E Section Name Object 11 12 0x08000000 0x00000130 Data RO 3 RESET startup_stm32f10x_hd.o 13 0x08000130 0x00000000 Code RO 479 * .ARM.Collect$$$$00000000 mc_w.l(entry.o) 14 0x08000130 0x00000004 Code RO 742 .ARM.Collect$$$$00000001 mc_w.l(entry2.o) 15 0x08000134 0x00000004 Code RO 745 .ARM.Collect$$$$00000004 mc_w.l(entry5.o) 16 /*...此处省略大部分内容*/ 17 0x080016e8 0x00000024 Code RO 772 .text mc_w.l(init.o) 18 0x0800170c 0x00000010 Code RO 483 i.__0printf$bare mc_w.l(printfb.o) 19 0x0800171c 0x0000000e Code RO 784 i.__scatterload_copy mc_w.l(handlers.o)

2021-07-11

复制子对象-togaf 9.2 full version

360 第12章 Rubinius的垃圾回收 Rubinius 的 GC 是分代垃圾回收,因此必然需要通过记录集等手段来记录新生代 GC 和 老年代 GC 之间的引用。关于记录集在第 7 章中有详细说明。 根 老年代空间 新生代空间 复制 From 空间 To 空间 图12.26 (2)复制从根引用的对象 接下来把从根内部引用的对象复制到 To 空间,把根内的指针重写到目标空间,再把 forwarding 指针设定给原始空间。 晋升链表 晋升老年代空间 新生代空间 复制 From 空间 To 空间 图12.27 (3)复制子对象 把从根引用的所有对象全复制到 To 空间后,接下来就要搜索 To 空间内的对象,并把其 子对象反复复制到 To 空间。

2021-07-11

标识有问题的字段-stm32 keil调试不能打断点,源代码无箭头

6.5 标识有问题的字段 将输入字段的边框改为红色是很不错的,但是如果能够让有问题的字段再醒目一点儿就更好了。 在这个示例中,你将学习如何将字段旁边的标签设置为红色的粗体字,从而使出问题的字段更加明显 (见图 6-7)。同样,HTML 和 CSS 文件没有改动(仍然是脚本 6-6 和脚本 6-7)。在脚本 6-10 中,我们 在脚本 6-9 中添加了几行 JavaScript 代码以进一步突出显示输入错误。 图 6-7 当出现问题时,可以让字段的标签成为红色的粗体字,字段本身也改变样式 脚本 6-10 当发现错误时,这个脚本会突出显示错误的字段的标签 window.onload = initForms; function initForms() { for (var i=0; i< document.forms.length; i++) { document.forms[i].onsubmit = validForm; } } function validForm() { var allGood = true; var allTags = document.getElementsByTagName("*"); for (var i=0; i<allTags.length; i++) { if (!validTag(allTags[i])) { allGood = false; } 更多资源请访问稀酷客(www.ckook.com)

2021-07-11

连接建立的超时-高校正版授权endnote x9下载、安装及使用详细教程

18.3 连接建立的超时 有很多情况导致无法建立连接。一种情况是服务器主机没有处于正常状态。为了模拟这种情 况,我们断开服务器主机的电缆线,然后向它发出t e l n e t命令。图1 8 - 6显示了t c p d u m p的输出。 图18-6 建立连接超时的t c p d u m p 输出 在这个输出中有趣的一点是客户间隔多长时间发送一个 S Y N,试图建立连接。第 2个S Y N 与第1个的间隔是5 . 8秒,而第3个与第2个的间隔是2 4秒。 作为一个附注,这个例子运行3 8分钟后客户重新启动。这对应初始序号为291 008 001 (约为3 8×6 0×6 4 0 0 0×2)。我们曾经介绍过使用典型的伯克利实现版的系统将初始序号初 始化为1,然后每隔0 . 5秒就增加64 000。 另外,因为这是系统启动后的第一个TCP连接,因此客户的端口号是1024。 图1 8 - 6中没有显示客户端在放弃建立连接尝试前进行 S Y N重传的时间。为了了解它我们 必须对t e l n e t命令进行计时: 时间差值是 7 6秒。大多数伯克利系统将建立一个新连接的最长时间限制为 7 5秒。我们将在 2 1 . 4节看到由客户发出的第 3个分组大约在 1 6 : 2 5 : 2 9超时, 客户在它第 3个分组发出后 4 8秒而 不是7 5秒后放弃连接。 18.3.1 第一次超时时间 在图1 8 - 6中一个令人困惑的问题是第一次超时时间为 5 . 8秒,接近6秒,但不准确,相比之 178使用TCP/IP详解,卷1:协议 下载

2021-07-11

整数算术指令概述-arcgis中面提取中心线_流程

7.1 整数算术指令概述 描述 算术指令组合累加器 1和累加器 2的内容。对于带有两个累加器的 CPU,累加器 2 的内容保持不变。 对于带 4个累加器的 CPU,将累加器 3的内容复制到累加器 2中,将累加器 4的内 容复制到累加器 3中。累加器 4中较早的内容保持不变。 使用整数算术,可以对两个整数(16位和 32位)执行下列运算: • +I ACCU 1 + ACCU 2,整型(16位) • -I ACCU 2 - ACCU 1,整型(16位) • *I ACCU1 * ACCU2,整型(16位) • /I ACCU 2 / ACCU 1,整型(16位) • + 整型常数相加(16、32位) • +D ACCU 1 + ACCU 2,长整型(32位) • -D ACCU 2 - ACCU 1,长整型(32位) • *D ACCU 1 * ACCU 2,长整型(32位) • /D ACCU 2 / ACCU 1,长整型(32位) • MOD 除法余数,长整型(32位) 工控编程吧 gkbc8.com 工控编程吧 gkbc8.com

2021-07-11

农用地提取-pt5108规格书 high-psrr 500ma ldo

3.2 农用地提取 我们将农用地上的火点判断为秸秆焚烧点,所以现在需要判定火点是否在农用地之上。 农用地的提取方法有很多,这里是从 MODIS 三级数据土地覆盖类型产品提取农用地。 MODIS 三级数据土地覆盖类型产品(Land Cover data)是 Terra 和 Aqua 一年观测数据 经过处理的结果,描述了土地覆盖的类型。该土地覆盖数据集中包含了 17 个主要土地覆盖 类型,根据国际地圈生物圈计划(IGBP),其中包括 11 个自然植被类型,3 个土地开发和镶 嵌的地类和 3 个非草木土地类型定义类。 MODIS Terra + Aqua 三级土地覆盖类型年度全球 500 米产品 MCD12Q1 采用五种不同的 土地覆盖分类方案,信息提取主要技术是监督/决策树分类。下面是该数据中包含的五个数 据集,五个分类方案如下:  土地覆盖分类 1:IGBP 的全球植被分类方案  土地覆盖分类 2:美国马里兰大学(UMD 格式)方案  土地覆盖分类 3:基于 MODIS 叶面积指数/光合有效辐射方案  土地覆盖分类 4:基于 MODIS 衍生净初级生产力(NPP)方案  土地覆盖分类 5:植物功能型(肺功能)方案 MCD12Q1 是 HDF 格式的,包含 16 个数据集,如下图所示。 图 3.11 MCD12Q1 数据集说明 我们可以在 ENVI 中浏览 MCD12Q1 数据集。 (1) 在 Toolbox 中,选择/Raster Management/Data-Specific Utilities/View HDF Dataset Attributes,在弹出的对话框中,选择“1-MODIS 数据\ MCD12Q1”文件夹中的一个 HDF 文件,查看各个数据集的含义及数据。 (2) 如下图所示,前 5 个类型就是前述的 5 个分类方案。在这里我们使用第一类分 类数据集。单击“OK”,便弹出 DN 值所代表的地物类型。

2021-07-11

查询总的有效文件数-gbase sql参考手册

while(1)//查询总的有效文件数 { res=f_readdir(&tdir,&tfileinfo); //读取目录下的一个文件 if(res!=FR_OK||tfileinfo.fname[0]==0)break; //错误了 /到末尾了 ,退出 fn=(u8*)(*tfileinfo.lfname?tfileinfo.lfname:tfileinfo.fname); res=f_typetell(fn); if((res&0XF0)==0X50) rval++;//图片文件?则有效文件加 1 } } return rval; } int main(void) { u8 res; DIR picdir; //图片目录 FILINFO picfileinfo; //文件信息 u8 *fn; //长文件名 u8 *pname; //带路径的文件名 u16 totpicnum; //图片文件总数 u16 curindex; //图片当前索引 u8 key; //键值 u8 pause=0; //暂停标记 u8 t; u16 temp; u16 *picindextbl; //图片索引表 delay_init(); //延时函数初始化 NVIC_Configuration(); //设置 NVIC 中断分组 2:2 位抢占优先级,2 位响应优先级 uart_init(9600); //串口初始化波特率为 9600 LED_Init(); //LED 端口初始化 LCD_Init(); //LCD 初始化 KEY_Init(); //KEY 初始化 usmart_dev.init(72); //usmart 初始化 mem_init(SRAMIN); //初始化内部内存池 exfuns_init(); //为 fatfs 相关变量申请内存 f_mount(0,fs[0]); //挂载 SD 卡 f_mount(1,fs[1]); //挂载 FLASH. POINT_COLOR=RED; while(font_init()) //检查字库 {

2021-07-11

关于曲直性-stm32f4xx参考手册--中文版

二、关于曲直性 对于曲直性的考察,想法就更加的特殊,没有经过训练的话,很 难会往那个方向去想。 做题目的时候,曲直性有这样的一个约定:有曲即为曲,全直才 为直。 我们做如下的举例: 例 1: 解析:按照“有曲即为曲,全直才为直”的原则,本题为“曲、直、 直、曲、曲”,三曲两直,故应选“直”,备选选项中,只有 B 为直, 其他全为曲,故答案为 B。 例 2:

2021-07-11

摄像头驱动实验-sql server 数据库基本操作语句总结

52.3 摄像头驱动实验 本小节讲解如何使用如何利用 OV7725 摄像头采集 RGB565 格式的图像数据,并把这 些数据实时显示到液晶屏上。 学习本小节内容时,请打开配套的“摄像头-OV7725-液晶实时显示”工程配合阅读。 52.3.1 硬件设计 关于摄像头的原理图此处不再分析。在我们的实验板上有引出一个摄像头专用的排母, 可直接与摄像头引出的引脚连,接入后它与 STM32 引脚的连接关系见图 52-21。 图 52-21 STM32 实验板引出的摄像头接口 摄像头与 STM32 连接关系中主要分为 SCCB 控制、VGA 时序控制、FIFO 数据读取部 分,介绍如下: (1) SCCB 控制相关 摄像头中的 SIO_C 和 SIO_D 引脚直接连接到 STM32 普通的 GPIO,它们不具有硬件 I2C 的功能,所以在后面的代码中采用模拟 I2C 时序,实际上直接使用硬件 I2C 是完全可以 实现 SCCB 协议的,本设计采用模拟 I2C 是芯片资源分配妥协的结果。 (2) VGA 时序相关 检测 VGA 时序的 HREF、VSYNC 引脚,它们与 STM32 连接的 GPIO 均设置为输入模 式,其中 HREF在本实验中并没有使用,它已经通过摄像头内部的与非门控制了 FIFO 的写 使能;VSYNC 与 STM32 连接的 GPIO 引脚会在程序中配置成中断模式,STM32 利用该中 断信号获知新的图像是否采集完成,从而控制 FIFO 是否写使能。 (3) FIFO 相关

2021-07-11

编译所有源文件-如何解读统计图表:研究报告阅读指南

图 7.35 创建工程 (3)添加设计输入。 若要创建新的文件就选择【Create New File】图标,若要添加已经存在的文件就选择【Add Existing File】 图标,如图 7.36 所示。本实例中使用已经存在的 SDRAM 控制器源文件作为设计输入,添加后,在 Workspace 浏览器中可以看到如图 7.37 的设计输入列表。 图 7.36 添加设计输入 图 7.37 SDRAM 设计输入列表 (4)编译设计输入。 如图 7.38 所示,在任意一个源文件上单击右键, 选 择 “Compile”/“Compile All”,对所有的源文件进 行编译。 编译后,若有错误,Modelsim 会在信息栏中显 示出来。这 时只要双击该错误,ModelSim 就会自动打开该 错误所在的 文件,并定位到出现错误所在的位置附近。若编 译 正 确 通 过,源文件后面的蓝色问号就替换成为绿色的对 号 , 如 图 7.39 所示。 (5)仿真。 在 Workspace 浏览器中选择“Library”复选页, 单击 Work 左边的小加号。在弹出的子菜单里面找到仿真模块“sdram_test_tb”。双击或右键选择“Simulate”选项, ModelSim 就会自动运行仿真,如图 7.40 所示。 图 7.39 编译正确通过 图 7.40 仿真 (6)观察波形。 在 Workspace 浏览器中选择“Sim”复选页,可以看到仿真模块的实例列表,如图 7.41 所示。 图 7.38 编译所有源文件

2021-07-11

文件选择面板-pt5108规格书 high-psrr 500ma ldo

图3.6 文件选择面板 (2) 单击 Next 按钮打开 Image Registration 步骤,选择自动图像配准(Register Images Automatically)选项,匹配波段选择 Band4,其他参数选择默认,单击 Next 按钮执行图像配 准。 提示:配准精度会对结果产生一定的影响。 图3.7 Image Registration 步骤 (3) 在 Change Method Choice 步骤中,选择 Image Difference 方法,单击 Next 按 钮。 (4) 在 Image Difference 步骤中,选择 Difference of Feature Index 方法,在 Select Feature Index 列表中选择 Vegetation Index (NDVI)选项。

2021-07-11

大气校正校正结果比较-pt5108规格书 high-psrr 500ma ldo

图 3.4 高级设置面板 (6)根据上述图中的参数设置,然后点击 ok,运行 flaash 大气校正。 注意:可以使用 restore 按钮导入事先准备好的工程模板文件 template.txt,在该专题数 据文件夹中。 图 3.5 大气校正校正结果比较

2021-07-11

雷达遥感的波段范围-pt5108规格书 high-psrr 500ma ldo

图1.3 雷达遥感的波段范围  极化-Polarization 极化指的是雷达波束相对于地球表面的方向。无论哪个波长,雷达信号可以传送水平(H) 或者垂直(V)电场矢量。接收水平(H)或者垂直(V)或者两者的返回信号。 返回同极化(HH 或者 VV)信号的基本物理过程类似准镜面反射,比如,平静的水面显 示黑色。交叉极化(HV 或者 VH)一般返回的信号较弱,常受不同反射源影响,如粗糙表面。 图1.4 HV 极化  入射角-Incidence Angle 入射角也叫视角,入射角是雷达波束与垂直表面直线之间的夹角(如下图中的θ,Look angle)。微波与表面的相互作用是非常复杂的,不同的角度区域会产生不同的反射。低入射 角通常返回较强的信号,随着入射角增加,返回信号逐渐减弱。 根据雷达距离地表高度的情况,入射角会随着近距离到远距离的改变而改变,依次影响 成像几何。

2021-07-11

测试监控策略-《合作式智能运输系统 车用通信系统应用层及应用数据交互标准》(tcsae 53-2017)

A.7.2 测试监控策略 测试监控主要在于以下两个方面(见表 A-l l)。 (1)业务性能指标: TPS 与 RT 等。 (2) 硬件性能指标: CPU、 Mem、 Disk 等。 表 A-11 监控策略 服务需 监控指标 监控工具及方法 App/Web Server CPU、 Mem 、 Disk、 Network Windows Perfmon Tomcat JVM、线程数、 DB 连接数 Probe Mysql Server CPU、 Mem、 Disk、连接数、 慢查 MONyog 询等信息 备 j主

2021-07-11

添加了更高-基于虚拟参考反馈整定的改进无模型自适应控制

该协议己经发展了近 10 年。在最初的协议稳定后, 2004 年发布的蓝牙 2.0 添加了更高 的数据传输速率。 2009 年发布了蓝牙 3.0 版本,蓝牙可用来配对,结合 802.11 的设备,以 便获得高吞吐量的数据传输。 2009 年 12 月发布的 4.0 版本规定了低功率操作,对于那些 觉得定期更换居家所用设备电池很麻烦的人来说,真是太方便了。下面我们将介绍蓝牙的 主要方面。

2021-07-11

性能问题-基于虚拟参考反馈整定的改进无模型自适应控制

6.6 性能问题 在计算机网络中,性能问题非常重要。当成百上千台计算机相互连接在一起时,无法 预知结果的复杂交互过程很常见。这种复杂性常常会导致很差的性能,而且无人知道其中 的缘由。在下面的章节中,我们将讨论许多与网络性能有关的问题,以便了解可能存在哪 些问题以及如何处理这些问题。 不幸的是,理解网络性能更像是一门艺术,而不是一门科学。这里很少有可在实践中 应用的基础理论。我们能够做的最好方法是给出一些来自于实践的经验规则,并且展示一 些真实世界中的例子。我们有意将这部分讨论推迟到学习了 TCP 的传输层之后,因为应用 程序获得的性能依赖于传输层、网络层和链路层的结合,而且能够在不同场合中使用 TCP 作为例子。 在下面的章节中,我们将考查网络性能的如下 6 个方面。 Cl )性能问题。 (2)网络性能的测量。 (3)快速网络中的主机设计。 (4)快速处理段。 (5)头的压缩。 (6)“长肥”网路的协议。 上述这些方面同时从主机和网络,以及网络速度和规模增长来考虑网络性能。 6.6.1 计算机网络中的性能问题 有些性能问题(比如拥塞)是由于临时资源过载所引起的。如果到达一台路由器的流 量突然超过了它的处理能力,那么,拥塞就会发生,从而导致性能问题。在本章和前一章 中我们已经详细地学习了拥塞控制。 当网络中存在结构性的资源不平衡时,性能也会退化。例如,如果将一条千兆位的通 信线路连接到一台低档的 PC 上,则性能较差的 CPU 将无法快速地处理入境数据包,因此 有些数据包将会被丢失。这些数据包最终会被重传,既增加了延迟,又浪费了带宽,而且 往往降低了性能。 过载也可能被同步触发。例如,如果→个段包含了一个坏参数(比如,它的目标端口), 那么,在许多情形下,接收端会尽职地返回一个错误通知。现在请考虑,如果将一个坏段 广播给 1000 台机器将发生什么样的情况:每台机器都可能送回一个错误消息。由此引发的 广播凤暴(broadcast storm)可能会严重地削弱网络的性能。以前, UDP 协议就遭受过这 个问题,直到 ICMP 协议作了修改,使主机不再对发送给广播地址的 UDP 段中错误做出响 应,以免遭受广播风暴。对于无线网络来说,由于广播本质上会发生,而且无线带宽有限, 因此尤其要小心避免未经检查的广播响应。

2021-07-11

变分线性回归-effective akka

10.3 变分线性回归 作为变分推断的第⼆个例⼦,我们回到3.3节的贝叶斯线性回归模型中。在模型证据框架 中,我们通过使⽤最⼤化似然函数的⽅法进⾏点估计,从⽽近似了在α和β上的积分。⼀个纯粹 332

2021-07-11

可直接接地-mysql高可用方案大全

如果使用此功 能,则第1功能 复位脚RST/P4.7 可直接接地 已有大批量供货6年以上的历史 官方网站: 南通 Tel: 0513-5501 2928 5501 2929 深圳 Tel: 0755-8294 8411 8294 8412 www.STCMCU.com www.GXWMCU.com 可用IAP15F2K61S2仿真(仅供参考) 第2功能复位 脚RST2,外 部可调复位门 槛电压复位 �芯片也可使用USB 转��芯片PL2303

2021-07-11

分析函数-鲁棒控制——线性矩阵不等式处理方法 俞立 文字版 非扫描版

承的问题,而中断不属于任务,没法处理中断优先级继承。大家可以参考第十三章分析函数 xQueueGenericSendFromISR()的过程来分析 xQueueGiveFromISR()。 14.2.5 获取信号量 获取信号量也有两个函数,如表 14.2.5.1 所示: 函数 描述 xSemaphoreTake() 任务级获取信号量函数 xSemaphoreTakeFromISR() 中断级获取信号量函数 表 14.2.5.1 获取信号量 同释放信号量的 API 函数一样,不管是二值信号量、计数型信号量还是互斥信号量,它们 都使用表 14.2.5.1 中的函数获取信号量 1、函数 xSemaphoreTake() 此函数用于获取二值信号量、计数型信号量或互斥信号量,此函数是一个宏,真正获取信 号量的过程是由函数 xQueueGenericReceive ()来完成的,函数原型如下: BaseType_t xSemaphoreTake(SemaphoreHandle_t xSemaphore, TickType_t xBlockTime) 参数:

2021-07-11

梯形图程序的闪存-cp340模块使用手册

2.9 梯形图程序的闪存 2-18 2.9 梯形图程序的闪存 按以下步骤将机器控制器 RAM 中的数据保存至机器控制器的闪存中。 1. 选择启动装置的 Transfer -Save to Flash Memory。 2. 点击 Start 按钮。 3. 点击 CPU STOP 按钮。 开始保存至闪存。 4. 点击 YES 按钮。 启动机器控制器。

2021-07-11

跳转频带和设定值限制-安川伺服驱动说明书.

扩展的设定值通道 3.8 跳转频带和设定值限制 驱动功能 功能手册, (FH1), 04/2014, 6SL3097-4AB00-0RP4 77 3.8 跳转频带和设定值限制 在 0 rpm 到设定转速的范围内,一个驱动支路上(如电机、联轴器、芯轴、机械设备)可能有一个 或多个共振点。 这些共振点会导致振动。 此时,回避带可以避免共振频率内的运动。 可通过 p1080[D] 和 p1082[D] 设置频率限值。 此外在运行期间还可通过模拟量互联 p1085[C] 和 p1088[C] 对此限值进行控制。 图 3-7 回避带,设定值限制,最小转速 最小转速 可使用参数p1106[0...n]设置最小转速 n_min S_q 或最小速度,该参数通过 Bico 连接。

2021-07-11

脉冲/方向接口-安川伺服驱动说明书.

基本功能 7.25 脉冲/方向接口 驱动功能 功能手册, (FH1), 04/2014, 6SL3097-4AB00-0RP4 399 7.25 脉冲/方向接口 通过脉冲/方向接口,在控制方式 SERVO 和 VECTOR 中可将 SINAMICS S120 用于控制系统上的简单定位任务。 ● 控制系统通过 SMC30 的编码器接口(X521 接口)连接至 CU320-2。 ● 控制系统通过 X23 上的内部编码器接口连接至 CU310-2。 控制系统通过编码器接口将脉冲/方向信号的设定值传输至驱动。 以此给定的转速实际值 r0061 之后便可作为转速设定值通过 BICO 与固定设定值 p1155 连接 说明 • 控制单元 CU320-2 和 SMC30 的更多详细信息请参见 SINAMICS S120 控制单元手册。 • 控制单元 CU310-2 的更多详细信息请参见 SINAMICS S120 AC 驱动手册。 使用场合: 采用转速闭环控制的驱动 驱动在控制系统上以转速闭环控制运行。 转速设定值由周期频率规定。 线数在 p0408 中输入。 此数值通过控制系统的周期频率以及需要通过电机达到的最大转速计算得出。 具体计算公式为: 线数 =(最大周期频率 • 60)/最大转速 示例: 若控制系统的最大周期频率为 100 kHz,而使用的电机最大需要以 3000 rpm 的额定转速运行,则线数为 2000。

2021-07-11

Unix选路守护程序-深信服scsa认证考试总题库

10.3 Unix选路守护程序 U n i x系统上常常运行名为r o u t e d路由守护程序。几乎在所有的 T C P / I P实现中都提供该程 序。该程序只使用R I P进行通信,我们将在下一节中讨论该协议。这是一种用于小型到中型网 络中的协议。 另一个程序是g a t e d。I G P和E G P都支持它。 [Fedor 1998]描述了早期开发的g a t e d。图 1 0 - 1对r o u t e d和两种不同版本的g a t e d所支持的不同选路协议进行了比较。大多数运行路由 守护程序的系统都可以运行r o u t e d,除非它们需要支持g a t e d所支持的其他协议。 图10-1 r o u t e d 和g a t e d 所支持的选路协议 我们在下一节中描述 RIP 版本1,1 0 . 5节描述它与R I P版本2的不同点,1 0 . 6节描述O S P F, 1 0 . 7节描述B G P。 10.4 RIP:选路信息协议 本节对R I P进行了描述,这是因为它是最广为使用(也是最受攻击)的选路协议。对于 R I P 的正式描述文件是RFC 1058 [Hedrick 1988a],但是该R F C是在该协议实现数年后才出现的。 10.4.1 报文格式 RIP报文包含中在UDP数据报中,如图10-2所示(在第11章中对UDP进行更为详细的描述)。 图1 0 - 3给出了使用 I P地址时的R I P报文 格式。 命令字段为1表示请求,2表示应答。还 有两个舍弃不用的命令( 3和4),两个非正 式的命令:轮询( 5)和轮询表项( 6)。请 求表示要求其他系统发送其全部或部分路由 96使用TCP/IP详解,卷1:协议 下载 内部网点协议 守护程序 routed gated, 版本2 gated, 版本3 外部网点协议 图10-2 封装在UDP数据报中的RIP报文 IP数据报 UDP数据报 RIP报文 首部首部 20字节 8字节

2021-07-12

连接建立的超时-深信服scsa认证考试总题库

18.3 连接建立的超时 有很多情况导致无法建立连接。一种情况是服务器主机没有处于正常状态。为了模拟这种情 况,我们断开服务器主机的电缆线,然后向它发出t e l n e t命令。图1 8 - 6显示了t c p d u m p的输出。 图18-6 建立连接超时的t c p d u m p 输出 在这个输出中有趣的一点是客户间隔多长时间发送一个 S Y N,试图建立连接。第 2个S Y N 与第1个的间隔是5 . 8秒,而第3个与第2个的间隔是2 4秒。 作为一个附注,这个例子运行3 8分钟后客户重新启动。这对应初始序号为291 008 001 (约为3 8×6 0×6 4 0 0 0×2)。我们曾经介绍过使用典型的伯克利实现版的系统将初始序号初 始化为1,然后每隔0 . 5秒就增加64 000。 另外,因为这是系统启动后的第一个TCP连接,因此客户的端口号是1024。 图1 8 - 6中没有显示客户端在放弃建立连接尝试前进行 S Y N重传的时间。为了了解它我们 必须对t e l n e t命令进行计时: 时间差值是 7 6秒。大多数伯克利系统将建立一个新连接的最长时间限制为 7 5秒。我们将在 2 1 . 4节看到由客户发出的第 3个分组大约在 1 6 : 2 5 : 2 9超时, 客户在它第 3个分组发出后 4 8秒而 不是7 5秒后放弃连接。 18.3.1 第一次超时时间 在图1 8 - 6中一个令人困惑的问题是第一次超时时间为 5 . 8秒,接近6秒,但不准确,相比之 178使用TCP/IP详解,卷1:协议 下载

2021-07-12

TCP的成块数据流使用219_下载-深信服scsa认证考试总题库

第20章 TCP的成块数据流使用219 下载 发送方 发送方 发送方 发送方 发送方 发送方 接收方 接收方 接收方 接收方 接收方 接收方 接收方 接收方 发送方 发送方 发送方 发送方 发送方 发送方 发送方 发送方 发送方 发送方 发送方 发送方 接收方 接收方 接收方 接收方 接收方 接收方 接收方 接收方 接收方

2021-07-12

程序分析-azurewave 海华系列wifi模块目录

7.4 程序分析 接下来,我们对本章节的程序做一个详细的分析。还是先从 main 函数开始分析。第一句打印 标题我们略过,直接看到这一句 ,这个函数只带了一个参 数,我们选中这个参数,直接按 F3跟踪一下这个参数。 从上图可以看到,这个参数是系统的中断的设备 ID基地址的宏定义,也就是中断的基地址。 我们返回 main函数当中,选中这个函数,按 F3对其跟踪,查看一下此函数的定义。

2021-07-12

开关位置的含义-基于滑膜控制理论的永磁同步电机的控制方法及系统

1.2 开关位置的含义 一览 NCU 面板的下方有两个旋转开关: NCK 调试开关 PLC 运行方式开关 SVC/NCK 旋转开关 各个开关位置的含义如下: 开关位置 NCK 的运行方式 0 NCK 正常启动 1 NCK 以缺省值启动(相当于清零) 2 NCK 和(PLC)以上次关机时保存的数据启动。 7 调试模式(NCK 不启动)。 8 NCU 的 IP 地址以 7 段方式输出。 所有其他位置 不相关 PLC 旋转开关 该开关的含义和 SIMATIC S7-CPU 上的开关一样: 开关位置 PLC 的运行方式 0 RUN 1 RUN (保护模式) 2 STOP 系统设置 1.2 开关位置的含义 NCU 操作系统 (IM7) 开机调试手册, 10/2015, 6FC5397-1DP40-5RA3 7

2021-07-12

属性设定-academicwriting3rdedanswerkey

(1)属性设定 使用 Edit>Properties 命令,可以针对零件或讯号部 份,加入属性用来控制其特性。 (2)Constraints 设定 使用 Setup>Constraints…命令,可以针对 Standard 、Spacing、Physical、Board、Electrical 及 Areas 5 部份,可以设定其设计的规则。 (3)Constraint Manager 设定 使用 Setup>Electrical Constraint Spreadsheet…命令, 可以针对属性部份,使用较为方便的方式设定讯号 走线的 Wiring、Impedance、Propagation Delay、 Total Etch Length、Relative Propagation Delay 等 4 类的属性。 在本章节中将介绍 Constraint Manager 这个工具的使用 接口及操作方法。

2021-07-12

滴爸与空闲任务-power bi白皮书

20.8 滴爸与空闲任务 每一个操作系统的实现都←定离不开 -个概念一一 “滴答(tick)”。“滴答” 一词源于老式 时钟的钟摆在运动时所发出的滴答声。 任务离不开延时等待这样的行为,比如本意介绍的 task_sleep()函数就是实现延时等待的方法。 虽然在 task_sleep()的实现中 , 延时等待是通过软件 定时器(参见第 24 章)实现的, 但软件定时器是由谁去驱动的呢? if是通过 “滴答”。 “滴答”通常是通过使用处理苦苦的硬件定时器产生固定周期的中断。 相邻两次中断之间的 时间间隔可以根据需要加以配置, 常见的有 IO 毫秒或 60 毫秒。 决定两次滴答之间的时间间隔 需要权衡。间隔越短, 每秒所产生的中断次数越多, 定时器的精度将更高,但会因为频繁地中 断处理器而影响性能:间隔越长, 会降低定时若是延时精度,但性能却更优。 实时操作系统通常能做到当滴答的中断处理完成肘,在中断的返回过程中进行任务切换。 由于目前的 ClearRTOS 并不能直接接管处理器的中断,因此无法做到这一点。正是因为 ClearRTOS 不存在中断这一问题,所以造成在保存宫的任务情景时并不存在除了 ESP、 EBP、 EIP、 ESI、 EDI 和 EBX 之外的其他寄存器。 如果问“为什么?飞在此不打算解释而是作为思 考题留给读者。 尽管 ClearRTOS 不能接管处理器的中断,但还是需要通过一定的方式来实现 “滴答”的功 能。我们用 Linux 操作系统中的定时器信号( signal)来模拟“滴答”, 具体实现请参见 23.4.l 节。在进一步说明 ClearRTOS 中 “滴答”的处理之前, 需要先了解空闲任务。

2021-07-12

应用对象-abb acs510 变频器中文使用说明书

2.5 应用对象 应用对象属于应用(Application),在应用菜单 中单击右键,选择“添加对象”或通过快 捷菜单中的按钮 实现对如下对象的添加操作。下面介绍几个常用的应用对象。 2.5.1 采样跟踪 在程序的调试和诊断过程中,该采样追踪是个非常实用和有效的工具,有时数据变化是一闪而 过的,不容易看出产生的影响,此功能可以于把一个程序的执行过程全程记录下来,其中的成员就 是在实际系统中要关注的命令字、状态字、电机运动的速度,位置等。通过对这些数据的追踪记录, 可以清晰地看到系统运行的整个过程,该功能如图 2.x 所示。

2021-07-12

空空如也

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

TA关注的人

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