springMVC+mongodb-java-driver+mongodb+mave+jfreechart-Demo 麻雀虽小五脏俱全了,手麻系统是用此框架搭建的,一个简单的demo 左边调价号的下拉列表于下面的表格名称, 价格是联动的(下拉列表的数据发现改变表格里的数据也跟着改变) 右边费用组成就是应该表格, 价格一栏默认为白色背景红色字体, 当选中时变为绿色背景黑色字体表示选中此行,提现用户的作用 右边表格表头明确告诉用户每个表格字段数据的组成形式(如:编号 N00+流水号)。 右边表格和下面的编辑区域为联动的 (用户选中表格中的某一行数据,编辑区就显示相应的数据,便于用户做CRUD操作)。 右边底部为菜单栏 (此菜单栏是可以随意拖动的不一定非要放底部,可以根据个人习惯)。 当鼠标悬停在表格上的某个单元格会有ToolTipText效果(这里图不好截) 功能类似于淘宝上买衣服会有个层弹出
2025-06-17 19:29:10 553KB Java
1
A7169包装为QFN 3x3 16pin,相较以往同系列IC体积缩小及接脚数目变少,可节省电路板面积并大幅减少外部组件,有效地降低系统开发复杂度与开发成本,A7169拥有优异的特性,可程序化的RF输出功率,在433MHz频段,最大输出可达20dBm,2kbps FSK 的接收灵敏度为 -118dBm,接收电流为3.2mA,此外最高传输速率由250kbps提升至500kbps,以满足较高速率应用需求。A7169支持1GHz以下免执照的ISM Band应用 (150MHz ~ 950MHz),MCU透过SPI接口即可操作A7169的RF模式以及存取内建的64 Bytes TXFIFO 与RXFIFO。 除了远距离传输能力外,A7169内建的RSSI 可协助软件工程师侦测干净的传输信道,芯片内部的Auto Calibration机制,用来克服半导体制程的变异,自动频率补偿(AFC)的功能可解决RF频偏造成的灵敏度衰退。此外A7169优化的解调电路,在接收数据的处理上,可以容忍接收数据的速率误差在-/+ 12%时,仍维持良好的接收灵敏度,可稳定地在各种环境下工作,特别适合无线自动读表M-bus及胎压侦测系统(TPMS)等应用。
2025-06-14 16:41:47 3.95MB A7169
1
海康webcomponents最新版64位,32位(内附各种功能演示demo,支持rtsp流媒体播放),通过浏览器web方式采用rtsp视频流技术直接打开摄像头视频的方法(chrome/IE/firefox/360等)
2025-06-13 16:56:58 13.03MB rtsp
1
### 自动驾驶算法分享与实现:代客泊车AVP的Python Demo #### 前言 本文旨在探讨一种利用Python实现的代客泊车(Automated Valet Parking, AVP)算法。主要内容涵盖AVP算法的核心部分,包括但不限于基于A*算法的全局导航路径生成方法、自动泊车轨迹生成策略以及基于模型预测控制(Model Predictive Control, MPC)的车辆横向和纵向控制技术。此外,还将简要介绍如何设置和调试这一示例程序所需的环境。 #### 一、环境配置 为了顺利运行本文提供的代客泊车AVP Python示例代码,需确保系统中已安装Python 3.6版本,并且还需安装一系列必要的第三方库。这些库可通过执行以下命令来安装: ```bash pip install -r requirements.txt ``` 其中`requirements.txt`文件中包含了所有必需的依赖项。值得注意的是,`opencv-python`库可能无法通过pip直接安装,建议使用conda环境进行安装。以下是具体步骤: 1. **基本依赖**: - `numpy` - `opencv-python` - `python-maths` - `scipy` - `time` - `matplotlib` 2. **安装方法**: - 对于`opencv-python`,建议使用以下命令在conda环境中安装: ```bash conda install opencv ``` 完成以上步骤后,即可满足运行示例程序所需的最低环境配置要求。 #### 二、算法流程 ##### 1. 全局导航路径生成 在AVP算法中,全局导航路径生成主要采用A*算法。A*是一种常用的寻找最短路径的算法,在地图上搜索从起始点到终点的最短路径。其核心思想是在探索过程中同时考虑两个因素:已经走过的路径长度以及到达目标节点的估计距离。在AVP场景中,A*算法可以帮助车辆找到从当前位置到达目标停车位置的最佳路径。 ##### 2. 自动泊车轨迹生成 自动泊车轨迹生成是AVP算法中的另一个关键环节。该过程涉及计算车辆从当前行驶状态平稳过渡至最终停放位置所需的一系列动作指令。通常情况下,这一步骤会利用运动学模型和优化方法来确保轨迹的安全性和平滑性。例如,可以使用曲线拟合或样条插值等技术来生成一条连续平滑的行驶轨迹。 ##### 3. 基于MPC的横纵向控制 基于MPC的横纵向控制则是指利用模型预测控制策略对车辆进行精确控制。MPC是一种先进的控制方法,特别适用于处理具有约束条件的动态系统。在AVP场景下,它可以帮助车辆在遵守速度限制、避免碰撞的同时,实现精确的停车操作。MPC通过不断更新预测模型并在每个采样时刻求解一个优化问题来实现这种控制策略。 #### 三、调试方法 为了更好地理解和调试上述算法,下面列出了一些常见的调试步骤和技巧: 1. **更改停车位**:可以在`main_autopark.py`文件中修改停车位编号(共有1~24个停车位可供选择)。 2. **更改起点**:同样地,在`main_autopark.py`文件中可以调整车辆的起始位置。 3. **调整障碍物坐标**:根据实际环境的变化,可以通过修改障碍物的位置信息来模拟不同的场景。 4. **调整墙壁坐标**:对于模拟环境中存在的墙壁或其他固定障碍物,也需要相应调整其坐标信息以反映真实情况。 通过上述步骤,开发者可以有效地测试并优化算法性能,确保其在各种复杂环境下的鲁棒性和实用性。 本文不仅介绍了代客泊车AVP算法的基本原理和技术细节,还提供了具体的环境配置指南和调试技巧。这为读者深入理解并实践AVP技术提供了一个良好的起点。
2025-06-13 16:06:04 668KB 自动驾驶
1
在现代电子应用中,低功耗设计越来越受到关注,尤其是在电池供电和能量采集应用中。超低功耗看门狗芯片在确保系统稳定性的同时,尽可能降低设备的功耗。本文将详细介绍一种超低功耗看门狗芯片——TPL5010,并探讨其相关特性、应用以及如何在电路设计中实现。 介绍TPL5010的主要特性。这款芯片在2.5V电压下的典型电流消耗为35纳安培(nA),能在1.8V至5.5V的电源电压范围内工作,提供了广泛的电源电压兼容性。芯片的定时时间间隔可调,范围从100毫秒(ms)到7200秒(s),满足不同应用场景需求。此外,定时器精度高达1%(典型值),并通过外部电阻设置时间间隔。TPL5010还集成了看门狗功能,用于防止系统故障时的无限期运行,这对于确保系统可靠性和安全性至关重要。 在应用场景方面,TPL5010特别适合用于电池供电的系统唤醒。例如,在休眠模式下,微控制器的定时器可能会消耗大量电能。通过使用TPL5010,其低至35纳安培的休眠电流可显著减少系统总体能耗,延长电池寿命。正因为这种节能特性,TPL5010在物联网(IoT)、出入探测、篡改检测、家庭自动化传感器、温度调节装置、消费类电子产品、远程传感器、白色家电等应用中表现出色。 在设计方面,TPL5010的简化应用电路原理图说明了该芯片的基本连接方式。其6引脚SOT23封装尺寸为3.00mmx3.00mm,便于在小型电子设备中集成。在电源管理中,利用VIN、VOUT、GND、GPIO等引脚,可以实现微控制器的唤醒和复位功能。特别是通过RSTn引脚的控制,可以手动复位系统,确保在程序跑飞时能够及时重启。 在电气特性方面,芯片的绝对最大额定值、ESD额定值、推荐操作条件、热信息、电气特性、定时要求和典型特性都有详细描述。设计者需要仔细参考这些参数来确保设计的安全性和可靠性。在设备功能模式部分,详细介绍了TPL5010的运行方式,包括正常模式、睡眠模式、唤醒模式等,以及如何通过编程实现这些模式之间的转换。 在应用和实现方面,文档提供了典型应用示例,进一步帮助设计者理解如何将TPL5010集成到系统设计中。在电源管理建议中,提供了一些减少系统功耗的技巧和建议,如采用高效率的电源转换器、优化外部组件的选择等。在布局方面,设计师需要遵循一定的布局指南,以确保电路板设计的最优性能和稳定性。 文档还提供了芯片和文档支持的信息,包括商标、静电放电警告和术语表。制造商还提供了订制封装和订购信息,帮助设计者在需要时获取芯片和相关资料。 TPL5010作为一款超低功耗的看门狗定时器,其应用涵盖了物联网、消费电子、传感器应用等多个领域。在设计时,应注意其低电流消耗特性、宽电源电压范围、长定时时间间隔以及高定时精度,这些都是选择和使用该芯片时的关键考虑因素。通过文档提供的详尽信息,设计师可以更好地理解和应用这款看门狗芯片,实现低功耗且稳定可靠的电子系统设计。
2025-06-13 11:20:37 549KB 超低功耗 看门狗芯片 datasheet
1
简单介绍 1、图形处理库Clipper、Emgu.CV; 2、高性能推理引擎 Microsoft.ML.OnnxRuntime; 3、借用PaddleOCR模型; 4、现有功能,选择照片识别、截图识别,选择PDF文件识别。 详细展示链接:https://blog.csdn.net/weixin_42148410/article/details/147900933?spm=1001.2014.3001.5501
2025-06-12 09:39:08 41.06MB OCR 图像处理 PaddleOCR模型 图像识别
1
本项目提供了一个完整的工程化Demo,演示如何将Rockchip官方RKNN Toolkit中的YOLOv5示例高效迁移到安卓应用环境。主要特性包括: 边缘计算优化:充分利用RK3588芯片的NPU加速能力,实现移动端实时目标检测 全流程实现:包含安卓JNI接口封装到前处理/后处理的解决方案 工程化适配:解决了RKNN模型在安卓环境的部署难题,提供可复用的代码框架 代码结构清晰,包含: 安卓JNI接口实现(C++) 示例APK源码(Java/Kotlin) 预编译的RKNN模型文件 本Demo适合希望了解以下技术的开发者: 边缘计算设备上的AI推理部署 Rockchip NPU的安卓开发实践 YOLOv5模型在移动端的优化实现 通过此项目,开发者可以快速掌握RK3588平台的AI应用开发流程,为产品级应用开发奠定基础。
2025-06-11 20:22:32 11.26MB yolov5 android
1
RTThread是一个轻量级、高实时性的开源操作系统,尤其适合于嵌入式设备。网络模块是RTThread的重要组成部分,它提供了丰富的网络功能,包括TCP/IP协议栈、HTTP、FTP等网络服务。本示例"RTThread网络模块demo源码"旨在帮助开发者了解如何在RTThread上进行网络程序开发。 我们要理解的是RTThread的网络接口层。在嵌入式系统中,网络通信通常通过硬件如以太网控制器实现。RTThread通过驱动程序将这些硬件资源抽象为网络接口,如"eth0"或"eth1",对应于压缩包中的"03_dual_ethernet",这可能表示双网卡配置。开发者可以通过这些接口进行网络数据的发送和接收。 接着,我们关注IP协议的压缩。在嵌入式环境中,内存资源有限,压缩IP协议栈可以节省内存,提高系统的运行效率。RTThread的网络模块支持IPv4和IPv6,包括ARP、ICMP、UDP和TCP等协议。压缩后的IP协议栈仍能提供完整的网络通信功能,但更适应资源受限的环境。 然后,让我们探讨TCP/IP协议栈。TCP(传输控制协议)负责建立和维护连接,确保数据的可靠传输;IP(互联网协议)则处理数据包的路由和传递。UDP(用户数据报协议)则是一种无连接的服务,适合对实时性要求较高的应用。在RTThread中,开发者可以创建TCP/UDP套接字,进行服务器或客户端的编程。 此外,RTThread还提供了网络服务框架,如HTTP和FTP服务器。HTTP用于Web服务,开发者可以创建基于HTTP的Web应用,提供网页访问。FTP(文件传输协议)则允许远程文件的上传和下载。这些服务的实现,使得RTThread不仅可以作为设备的控制平台,还能作为信息交换的节点。 在"03_dual_ethernet"这个例子中,双以太网配置意味着设备可以同时连接两个不同的网络,例如一个用于内部通信,另一个用于外部访问。这增加了系统的网络冗余和灵活性,可以实现负载均衡或者网络故障切换。 为了实际操作这些网络功能,开发者需要理解RTThread提供的API,如rt_netif_add()用于添加网络接口,rt_netdev_init()初始化网络设备,rt_socket()创建套接字,rt_connect()建立TCP连接,rt_sendto()和rt_recvfrom()用于UDP数据的发送和接收等。通过阅读和分析demo源码,开发者可以掌握如何在RTThread上编写网络应用程序。 "RTThread网络模块demo源码"是一个学习和实践网络编程的好资料。它涵盖了从网络接口到高层应用的各种知识点,对于嵌入式系统开发人员来说,理解并运用这些知识,能够提升他们在物联网(IoT)领域开发的能力。
2025-06-11 11:29:04 11.48MB 网络开发
1
Marvell 88SF9110B0 数据手册解读 Marvell 88SF9110B0 是一款 6Gb/s SAS 到 SATA 桥接芯片,用于成本高效、容量大的 SATA 驱动器在高可用性 (HA) 企业存储系统中的应用。本文将对 Marvell 88SF9110B0 的关键特性和优势进行详细介绍。 产品概述 Marvell 88SF9210/9110/9118 系列桥接芯片是使用高性能的 ARM 处理器,运行频率高达 600MHz,用于处理协议转换、内部错误处理和 SCSI 命令处理。该芯片可以使标准的单端口 SATA 硬盘或固态硬盘作为双端口 SAS SSP 目标设备。 关键特性 1. 高性能处理器:Marvell 88SF9110B0 采用高性能的 ARM 处理器,运行频率高达 600MHz,能够快速处理协议转换、内部错误处理和 SCSI 命令处理。 2. 双端口 SAS 目标模式:该芯片可以在 SAS 目标模式下工作,提供高可用性和高性能的存储解决方案。 3. SATA 主机接口:Marvell 88SF9110B0 提供一个或两个 SATA 主机接口,支持 ANSI 兼容的 SATA 1.0a、SATA 2.6 和 SATA 3.0 规范。 4. sector size 转换:该芯片可以进行内部 sector size 转换,使 SATA 设备可以支持 512、520、524 或 528 字节的 sector 大小。 5. XDREAD、XDWRITE 和 XPWRITE 命令支持:Marvell 88SF9110B0 支持 XDREAD、XDWRITE 和 XPWRITE 命令,使得 SATA 设备可以支持高级的存储应用。 6. Write/Verify 命令支持:该芯片支持 Write/Verify 命令,确保数据的正确写入和验证。 7. T10 承诺支持:Marvell 88SF9110B0 完全支持 T10 承诺规范,确保存储系统的可靠性和安全性。 应用场景 Marvell 88SF9110B0 桥接芯片可以应用于各种高可用性存储系统,例如: 1. 企业存储系统 2. 数据中心存储系统 3. 云存储系统 4. 高性能计算存储系统 结论 Marvell 88SF9110B0 是一款高性能、低成本的 6Gb/s SAS 到 SATA 桥接芯片,适合用于高可用性存储系统中的应用。其高性能处理器、双端口 SAS 目标模式、SATA 主机接口、sector size 转换和高级命令支持等特性,使其成为理想的存储解决方案。
2025-06-10 22:41:38 541KB datasheet
1
主要介绍了PHP实现生成vcf vcard文件功能类定义与使用方法,结合具体实例形式分析了vcf vcard功能类的具体定义与使用方法,并附带VCardIFL.class.php类文件源码供读者下载参考,需要的朋友可以参考下 在本文中,我们将深入探讨如何使用PHP来生成VCF(vCard)文件,这是一种常见的用于交换个人联系信息的标准格式。vCard通常用于保存姓名、电话号码、电子邮件地址、公司信息等,可以在各种设备和应用程序之间无缝共享。我们将通过一个名为`VCardIFL.class.php`的示例类来说明具体的实现方法。 我们需要了解VCF文件的基本结构。一个VCF文件通常以`BEGIN:VCARD`开头,以`END:VCARD`结尾,中间包含多个字段,如`FN`(全名)、`EMAIL`(电子邮箱)、`TEL`(电话号码)等。每个字段都遵循`FIELD:VALUE`的格式,并可能有多个值。 现在,让我们来看一下`VCardIFL.class.php`类的定义。这个类提供了生成VCF文件所需的功能。类中的关键方法包括: 1. `__construct($arData)`: 构造函数接收一个关联数组`$arData`,其中包含了vCard的各个字段及其对应的值。例如,`vcard_f_name`对应于`FN`字段,`vcard_cellul`对应于电话号码等。 2. `createVcard()`: 这个方法根据构造函数中传入的数据创建vCard的结构。它会遍历数组`$arData`,为每个字段生成相应的VCF格式字符串。 3. `SaveVcard()`: 此方法将生成的VCF字符串写入文件。如果成功,返回`true`,否则返回`false`。 以下是一个使用`VCardIFL.class.php`的示例代码片段: ```php date_default_timezone_set('PRC'); include("VCardIFL.class.php"); $arData = array( // ... 各个字段及其值 ); $vcfdemo = new VCardIFL($arData); $vcfdemo->createVcard(); echo $vcfdemo->SaveVcard() ? '创建成功!' : '创建失败!'; ``` 在上面的代码中,我们设置了时区为`PRC`(即中国),然后包含了`VCardIFL.class.php`类。接着,我们创建了一个`$arData`数组,填入vCard的各种信息。我们创建了一个`VCardIFL`对象,调用`createVcard()`和`SaveVcard()`方法生成并保存vCard文件。 通过这样的方式,我们可以轻松地在PHP中创建自定义的vCard文件,适应不同场景下的需求。这对于需要生成大量联系人信息或者构建联系人管理系统的应用来说非常实用。 此外,学习这个过程也有助于理解文件操作和面向对象编程在PHP中的应用。你可以根据需要扩展这个类,添加更多的字段或功能,比如支持多语言,或者从数据库中动态获取联系人数据。 总结一下,本文详细介绍了如何使用PHP的类`VCardIFL`来生成VCF vCard文件。这个过程涉及到面向对象编程、文件操作和日期处理,对于提升PHP编程技能是非常有价值的。如果你需要在项目中处理个人联系信息的交换,那么掌握这种技术将会非常有用。
2025-06-10 15:34:58 43KB vcard
1