鸿蒙开发设备管理:【@ohos.usb (USB管理)】
USB管理
本模块主要提供管理USB设备的相关功能,包括查询USB设备列表、批量数据传输、控制命令传输、权限控制等。
说明:
本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
导入模块
import usb from "@ohos.usb";
usb.getDevices
getDevices(): Array<Readonly>
获取USB设备列表。
系统能力: SystemCapability.USB.USBManager
返回值:
| 类型 | 说明 |
|---|---|
| Array<Readonly<[USBDevice]>> | 设备信息列表。 |
示例:
let devicesList = usb.getDevices();
console.log(`devicesList = ${JSON.stringify(devicesList)}`);
//devicesList 返回的数据结构
//此处提供一个简单的示例,如下
[{name: "1-1",serial: "",manufacturerName: "",productName: "",version: "",vendorId: 7531,productId: 2,clazz: 9,subclass: 0,protocol: 1,devAddress: 1,busNum: 1,configs: [{id: 1,attributes: 224,isRemoteWakeup: true,isSelfPowered: true,maxPower: 0,name: "1-1",interfaces: [{id: 0,protocol: 0,clazz: 9,subclass: 0,alternateSetting: 0,name: "1-1",endpoints: [{address: 129,attributes: 3,interval: 12,maxPacketSize: 4,direction: 128,number: 1,type: 3,interfaceId: 0,},],},],},],},
]
usb.connectDevice
connectDevice(device: USBDevice): Readonly
打开USB设备。
需要调用[usb.getDevices]获取设备信息以及device;再调用[usb.requestRight]获取设备请求权限。
系统能力: SystemCapability.USB.USBManager
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| device | [USBDevice] | 是 | USB设备信息。 |
返回值:
| 类型 | 说明 |
|---|---|
| Readonly<[USBDevicePipe]> | 指定的传输通道对象。 |
示例:
let devicepipe= usb.connectDevice(device);
console.log(`devicepipe = ${JSON.stringify(devicepipe)}`);
usb.hasRight
hasRight(deviceName: string): boolean
判断是否有权访问该设备。
系统能力: SystemCapability.USB.USBManager
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| deviceName | string | 是 | 设备名称。 |
返回值:
| 类型 | 说明 |
|---|---|
| boolean | true表示有访问设备的权限,false表示没有访问设备的权限。 |
示例:
let devicesName="1-1";
let bool = usb.hasRight(devicesName);
console.log(bool);
usb.requestRight
requestRight(deviceName: string): Promise
请求软件包的临时权限以访问设备。
系统能力: SystemCapability.USB.USBManager
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| deviceName | string | 是 | 设备名称。 |
返回值:
| 类型 | 说明 |
|---|---|
| Promise | 获取到true则表示软件包的临时权限已访问成功, 获取到false则表示软件包的临时权限已访问失败。 |
示例:
let devicesName="1-1";
usb.requestRight(devicesName).then((ret) => {console.log(`requestRight = ${JSON.stringify(ret)}`);
});
usb.claimInterface
claimInterface(pipe: USBDevicePipe, iface: USBInterface, force?: boolean): number
注册通信接口。
需要调用[usb.getDevices]获取设备信息以及interfaces;调用[usb.requestRight]获取设备请求权限;调用[usb.connectDevice]接口得到devicepipe作为参数。
系统能力: SystemCapability.USB.USBManager
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pipe | [USBDevicePipe] | 是 | 用于确定总线号和设备地址。 |
| iface | [USBInterface] | 是 | 用于确定需要获取接口的索引。 |
| force | boolean | 否 | 可选参数,是否强制获取。默认值false ,表示不强制获取。 |
返回值:
| 类型 | 说明 |
|---|---|
| number | 注册通信接口成功返回0;注册通信接口失败返回其他错误码。 |
示例:
let ret = usb.claimInterface(devicepipe, interfaces);
console.log(`claimInterface = ${ret}`);
usb.releaseInterface
releaseInterface(pipe: USBDevicePipe, iface: USBInterface): number
释放注册过的通信接口。
需要调用[usb.claimInterface]先获取接口,才能使用此方法释放接口。
系统能力: SystemCapability.USB.USBManager
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pipe | [USBDevicePipe] | 是 | 用于确定总线号和设备地址。 |
| iface | [USBInterface] | 是 | 用于确定需要释放接口的索引。 |
返回值:
| 类型 | 说明 |
|---|---|
| number | 释放接口成功返回0;释放接口失败返回其他错误码。 |
示例:
let ret = usb.releaseInterface(devicepipe, interfaces);
console.log(`releaseInterface = ${ret}`);
usb.setConfiguration
setConfiguration(pipe: USBDevicePipe, config: USBConfig): number
设置设备配置。
需要调用[usb.getDevices]获取设备信息以及config;调用[usb.requestRight]获取设备请求权限;调用[usb.connectDevice]得到devicepipe作为参数。
系统能力: SystemCapability.USB.USBManager
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pipe | [USBDevicePipe] | 是 | 用于确定总线号和设备地址。 |
| config | [USBConfig] | 是 | 用于确定需要设置的配置。 |
返回值:
| 类型 | 说明 |
|---|---|
| number | 设置设备配置成功返回0;设置设备配置失败返回其他错误码。 |
示例:
let ret = usb.setConfiguration(devicepipe, config);
console.log(`setConfiguration = ${ret}`);
usb.setInterface
setInterface(pipe: USBDevicePipe, iface: USBInterface): number
设置设备接口。
需要调用[usb.getDevices]获取设备列表以及interfaces;调用[usb.requestRight]获取设备请求权限;调用[usb.connectDevice]得到devicepipe作为参数;调用[usb.claimInterface]注册通信接口。
系统能力: SystemCapability.USB.USBManager
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pipe | [USBDevicePipe] | 是 | 用于确定总线号和设备地址。 |
| iface | [USBInterface] | 是 | 用于确定需要设置的接口。 |
返回值:
| 类型 | 说明 |
|---|---|
| number | 设置设备接口成功返回0;设置设备接口失败返回其他错误码。 |
示例:
let ret = usb.setInterface(devicepipe, interfaces);
console.log(`setInterface = ${ret}`);
usb.getRawDescriptor
getRawDescriptor(pipe: USBDevicePipe): Uint8Array
获取原始的USB描述符。
需要调用[usb.getDevices]获取设备列表;调用[usb.requestRight]获取设备请求权限;调用[usb.connectDevice]接口得到devicepipe作为参数。
系统能力: SystemCapability.USB.USBManager
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pipe | [USBDevicePipe] | 是 | 用于确定总线号和设备地址。 |
返回值:
| 类型 | 说明 |
|---|---|
| Uint8Array | 返回获取的原始数据;失败返回undefined。 |
示例:
let ret = usb.getRawDescriptor(devicepipe);
usb.getFileDescriptor
getFileDescriptor(pipe: USBDevicePipe): number
获取文件描述符。
需要调用[usb.getDevices]获取设备列表;调用[usb.requestRight]获取设备请求权限;调用[usb.connectDevice]接口得到devicepipe作为参数。
系统能力: SystemCapability.USB.USBManager
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pipe | [USBDevicePipe] | 是 | 用于确定总线号和设备地址。 |
返回值:
| 类型 | 说明 |
|---|---|
| number | 返回设备对应的文件描述符;失败返回-1。 |
示例:
let ret = usb.getFileDescriptor(devicepipe);
usb.controlTransfer
controlTransfer(pipe: USBDevicePipe, contrlparam: USBControlParams, timeout?: number): Promise
控制传输。
需要调用[usb.getDevices]获取设备列表;调用[usb.requestRight]获取设备请求权限;调用[usb.connectDevice]接口得到devicepipe作为参数。
系统能力: SystemCapability.USB.USBManager
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pipe | [USBDevicePipe] | 是 | 用于确定设备。 |
| contrlparam | [USBControlParams] | 是 | 控制传输参数。 |
| timeout | number | 否 | 超时时间,可选参数,默认为0不超时。 |
返回值:
| 类型 | 说明 |
|---|---|
| Promise | 获取传输或接收到的数据块大小, 获取到-1则表示异常。 |
示例:
usb.controlTransfer(devicepipe, USBControlParams).then((ret) => {console.log(`controlTransfer = ${JSON.stringify(ret)}`);
})
usb.bulkTransfer
bulkTransfer(pipe: USBDevicePipe, endpoint: USBEndpoint, buffer: Uint8Array, timeout?: number): Promise
批量传输。
需要调用[usb.getDevices]获取设备信息列表以及endpoint;再调用[usb.requestRight]获取设备请求权限;然后调用[usb.connectDevice]接口得到返回数据devicepipe之后,再次获取接口[usb.claimInterface];再调用usb.bulkTransfer接口。
系统能力: SystemCapability.USB.USBManager
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pipe | [USBDevicePipe] | 是 | 用于确定设备。 |
| endpoint | [USBEndpoint] | 是 | 用于确定传输的端口。 |
| buffer | Uint8Array | 是 | 用于写入或读取的缓冲区。 |
| timeout | number | 否 | 超时时间,可选参数,默认为0不超时。 |
返回值:
| 类型 | 说明 |
|---|---|
| Promise | 获取传输或接收到的数据块大小, 获取到-1则表示异常。 |
示例:
//usb.getDevices 接口返回数据集合,取其中一个设备对象,并获取权限 。
//把获取到的设备对象作为参数传入usb.connectDevice;当usb.connectDevice接口成功返回之后;
//才可以调用第三个接口usb.claimInterface.当usb.claimInterface 调用成功以后,再调用该接口。
usb.bulkTransfer(devicepipe, endpoint, buffer).then((ret) => {console.log(`bulkTransfer = ${JSON.stringify(ret)}`);
});
usb.closePipe
closePipe(pipe: USBDevicePipe): number
关闭设备消息控制通道。
需要调用[usb.getDevices]获取设备列表;调用[usb.requestRight]获取设备请求权限;调用[usb.connectDevice]得到devicepipe作为参数。
系统能力: SystemCapability.USB.USBManager
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| pipe | [USBDevicePipe] | 是 | 用于确定USB设备消息控制通道。 |
返回值:
| 类型 | 说明 |
|---|---|
| number | 关闭设备消息控制通道成功返回0;关闭设备消息控制通道失败返回其他错误码。 |
示例:
let ret = usb.closePipe(devicepipe);
console.log(`closePipe = ${ret}`);
USBEndpoint
通过USB发送和接收数据的端口。通过[USBInterface]获取。
系统能力:以下各项对应的系统能力均为 SystemCapability.USB.USBManager。
| 名称 | 参数类型 | 说明 |
|---|---|---|
| address | number | 端点地址。 |
| attributes | number | 端点属性。 |
| interval | number | 端点间隔。 |
| maxPacketSize | number | 端点最大数据包大小。 |
| direction | [USBRequestDirection] | 端点的方向。 |
| number | number | 端点号。 |
| type | number | 端点类型。 |
| interfaceId | number | 端点所属的接口的唯一标识。 |
USBInterface
一个[USBConfig]中可以含有多个USBInterface,每个USBInterface提供一个功能。
系统能力:以下各项对应的系统能力均为 SystemCapability.USB.USBManager。
| 名称 | 参数类型 | 说明 |
|---|---|---|
| id | number | 接口的唯一标识。 |
| protocol | number | 接口的协议。 |
| clazz | number | 设备类型。 |
| subClass | number | 设备子类。 |
| alternateSetting | number | 在同一个接口中的多个描述符中进行切换设置。 |
| name | string | 接口名称。 |
| endpoints | Array<[USBEndpoint]> | 当前接口所包含的端点。 |
USBConfig
USB配置,一个[USBDevice]中可以含有多个配置。
系统能力:以下各项对应的系统能力均为 SystemCapability.USB.USBManager。
| 名称 | 参数类型 | 说明 |
|---|---|---|
| id | number | 配置的唯一标识。 |
| attributes | number | 配置的属性。 |
| maxPower | number | 最大功耗,以毫安为单位。 |
| name | string | 配置的名称,可以为空。 |
| isRemoteWakeup | boolean | 检查当前配置是否支持远程唤醒。 |
| isSelfPowered | boolean | 检查当前配置是否支持独立电源。 |
| interfaces | Array <[USBInterface]> | 配置支持的接口属性。 |
USBDevice
USB设备信息。
系统能力:以下各项对应的系统能力均为 SystemCapability.USB.USBManager。
| 名称 | 参数类型 | 说明 |
|---|---|---|
| busNum | number | 总线地址。 |
| devAddress | number | 设备地址。 |
| serial | string | 序列号。 |
| name | string | 设备名字。 |
| manufacturerName | string | 产商信息。 |
| productName | string | 产品信息。 |
| version | string | 版本。 |
| vendorId | number | 厂商ID。 |
| productId | number | 产品ID。 |
| clazz | number | 设备类。 |
| subClass | number | 设备子类。 |
| protocol | number | 设备协议码。 |
| configs | Array<[USBConfig]> | 设备配置描述符信息。 |
USBDevicePipe
USB设备消息传输通道,用于确定设备。
系统能力:以下各项对应的系统能力均为 SystemCapability.USB.USBManager。
| 名称 | 参数类型 | 说明 |
|---|---|---|
| busNum | number | 总线地址。 |
| devAddress | number | 设备地址。 |
USBControlParams
控制传输参数。
系统能力:以下各项对应的系统能力均为 SystemCapability.USB.USBManager。
| 名称 | 参数类型 | 说明 |
|---|---|---|
| request | number | 请求类型。 |
| target | [USBRequestTargetType] | 请求目标类型。 |
| reqType | [USBControlRequestType] | 请求控制类型。 |
| value | number | 请求参数。 |
| index | number | 请求参数value对应的索引值。 |
| data | Uint8Array | 用于写入或读取的缓冲区。 |
USBRequestTargetType
请求目标类型。
系统能力:以下各项对应的系统能力均为 SystemCapability.USB.USBManager。
| 名称 | 默认值 | 说明 |
|---|---|---|
| USB_REQUEST_TARGET_DEVICE | 0 | 设备。 |
| USB_REQUEST_TARGET_INTERFACE | 1 | 接口。 |
| USB_REQUEST_TARGET_ENDPOINT | 2 | 端点。 |
| USB_REQUEST_TARGET_OTHER | 3 | 其他。 |
USBControlRequestType
控制请求类型。
系统能力:以下各项对应的系统能力均为 SystemCapability.USB.USBManager。
| 名称 | 默认值 | 说明 |
|---|---|---|
| USB_REQUEST_TYPE_STANDARD | 0 | 标准。 |
| USB_REQUEST_TYPE_CLASS | 1 | 类。 |
| USB_REQUEST_TYPE_VENDOR | 2 | 厂商。 |
USBRequestDirection
请求方向。
系统能力:以下各项对应的系统能力均为 SystemCapability.USB.USBManager。
| 名称 | 默认值 | 说明 |
|---|---|---|
| USB_REQUEST_DIR_TO_DEVICE | 0 | 写数据,主设备往从设备。 |
| USB_REQUEST_DIR_FROM_DEVICE | 0x80 | 读数据,从设备往主设备。 |
相关文章:
鸿蒙开发设备管理:【@ohos.usb (USB管理)】
USB管理 本模块主要提供管理USB设备的相关功能,包括查询USB设备列表、批量数据传输、控制命令传输、权限控制等。 说明: 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 导入模块 import …...
Golang | Leetcode Golang题解之第204题计数质数
题目: 题解: func countPrimes(n int) int {primes : []int{}isPrime : make([]bool, n)for i : range isPrime {isPrime[i] true}for i : 2; i < n; i {if isPrime[i] {primes append(primes, i)}for _, p : range primes {if i*p > n {break}…...
ELK日志系统和Filebeat采集器的学习总结
ELK是ElasticSerach、Logstash、Kina Logstash负责采集数据,Logstash有三个插件,input、filter、output,filter插件作用是对采集的数据进行处理,过滤的,因此filter插件可以选,可以不用配置。 ElasticSear…...
QML-Grid和OpacityMask
一个格子条,点击缩短 import QtQuick 2.0 import QtQuick.Window 2.12 import QtQuick.Controls 2.5 //导入 import QtGraphicalEffects 1.12Window {id:windowwidth: 600height: 500color: "white"visible: trueGrid {visible: falseid:gridwidth:405he…...
MySQL的并发控制、事务、日志
目录 一.并发控制 1.锁机制 2.加锁与释放锁 二.事务(transactions) 1.事物的概念 2.ACID特性 3.事务隔离级别 三.日志 1.事务日志 2.错误日志 3.通用日志 4.慢查询日志 5.二进制日志 备份 一.并发控制 在 MySQL 中,并发控制是确…...
CNN文献综述
卷积神经网络(Convolutional Neural Networks,简称CNN)是深度学习领域中的一种重要模型,主要用于图像识别和计算机视觉任务。其设计灵感来自于生物学中视觉皮层的工作原理,能够高效地处理图像和语音等数据。 基本原理…...
python语句前面有一个$是什么意思
“$”是汇编语言中的一个预定义符号,等价于当前正汇编到的段的当前偏移值。例如:指令“jmp $3”中的“$”表示当前这条指令在代码段中的偏移量。 代表当前指令的地址,如: data segment str1 db a,b,c,d leng equ $-str 就是当前地…...
wsl安装Linux系统到指定位置
默认情况下,wsl安装的系统,会安装到系统C盘,长期下去,很容易把C盘的空间消耗完,从而影响系统的正常运行,所以我建议是将wsl所有的系统都安装到其它磁盘中,便于维护。 1、导出镜像 通过wsl -l -v 查看当前已安装的系统版本。 导出到当前目录位置,也可以指定目录位置。 w…...
[笔记] 高等数学在各工程门类的典型应用场景
1.应用场景 1.微积分似乎是在解算椭圆方程中引入的?但是这个数学工具第一次应用于现实的工程问题是什么时候?什么场景?什么问题? 微积分的发展确实与椭圆方程有关,但它最初的应用场景远不止于此。 微积分首次被应用…...
刀片服务器和机架式服务器有何区别
刀片服务器和机架式服务器有何区别 一、物理设计: 刀片服务器:刀片服务器是一种相对较轻薄的服务器设计,其物理形状类似于刀片,通常插入到专用的刀片机箱中。每个刀片通常包含一个或多个服务器节点,共享一些基本的资源…...
SQLyog脚本无限试用重置脚本
文章目录 引言脚本(win)必要操作、说明 引言 SQLyog 需要po jie,但是网上的没看到很好使的,直接下的官方。能处理14天试用也是很ok的。 脚本(win) echo offREM SQLyog注册表key,可能跟你的不一样,如果不一样,请替换…...
代码随想录训练营第二十九天 134加油站 135分发糖果 860柠檬水找零 406根据身高重建队列
第一题: 原题链接:134. 加油站 - 力扣(LeetCode) 思路: 需要三个变量,一个变量start记录结果也就是出发的第一个加油站,一个变量curSum来记录此时加油耗油后剩余的油量,如果发现c…...
智能生产管理系统设计
智能生产管理系统的设计旨在提升制造业的效率、灵活性和响应速度,通过集成先进的信息技术(如物联网IoT、大数据分析、人工智能AI、云计算等)实现生产过程的智能化。以下是一些关键设计要素和步骤,用于构建一个高效的智能生产管理系…...
满足GMSL静电防护要求的方案
什么是GMSL?它是做什么用的?它有什么优点?设计GMSL防静电有啥难度? 带着这些疑问我们先了解下什么是GMSL。 一.简述 GMSL GMSL(Gigabit Multimedia Serial Link)即千兆多媒体串行链路…...
【Odoo开源ERP】别把ERP与进销存软件混为一谈
导读:企业使用ERP软件能够实现管理升级,多方信息集成,按照既定策略逻辑运算,生成计划建议,减少人力成本,提高准确率的同时提高经营能力。 ERP,是MRP II的下一代软件,除了MRP II已有的…...
八、浏览器同源策略
上一篇👉: 浏览器垃圾回收机制 文章目录 浏览器同源策略1.同源策略的定义2.同源策略的作用3.同源策略的限制范围4.解决跨域方案汇总1.CORS(跨源资源共享)2.JSONP3.postMessage 跨域4.Nginx代理跨域5.Node.js中间件代理跨域6.document.domain…...
重载赋值运算符
c编译器可能会给类添加四个函数 1默认构造函数 2默认析构函数 3默认拷贝构造函数,对成员变量进行浅拷贝。 4默认赋值函数,队成员变量进行浅拷贝。 #include<iostream> using namespace std; class CGirl { public:int m_bh;string m_name;voi…...
数字信号处理及MATLAB仿真(2)——离散系统
上回书说到如何来编写一些简单的离散时间序列,今天咱们就来谈谈一些关于常系数差分方程的操作吧。 说到这里咱们对于常系数差分方程可能最关心的就是怎么去求解了。 其中最关键的部分就是filter函数,可以用来计算系统在输入信号为x的输出信号y。大家学过…...
大模型思维链(Chain-of-Thought)技术原理
大模型思维链(Chain-of-Thought)技术原理 NLP中 大语言模型LLM中的思维链 Chain-of-Thought(CoT) GoT_cot思维链-CSDN博客 https://zhuanlan.zhihu.com/p/680618940 https://zhuanlan.zhihu.com/p/661475269...
gda动态调试-cnblog
忽的发现gda有动态调试功能 动态监听返回值 框柱指定方法,选择调试方法,gda会自动监听函数的返回值,例如 自定义frida脚本 gda会自动生成hook该函数的frida脚本...
KubeSphere 容器平台高可用:环境搭建与可视化操作指南
Linux_k8s篇 欢迎来到Linux的世界,看笔记好好学多敲多打,每个人都是大神! 题目:KubeSphere 容器平台高可用:环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...
MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...
2024年赣州旅游投资集团社会招聘笔试真
2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...
OkHttp 中实现断点续传 demo
在 OkHttp 中实现断点续传主要通过以下步骤完成,核心是利用 HTTP 协议的 Range 请求头指定下载范围: 实现原理 Range 请求头:向服务器请求文件的特定字节范围(如 Range: bytes1024-) 本地文件记录:保存已…...
相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
EtherNet/IP转DeviceNet协议网关详解
一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...
DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”
目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...
AI,如何重构理解、匹配与决策?
AI 时代,我们如何理解消费? 作者|王彬 封面|Unplash 人们通过信息理解世界。 曾几何时,PC 与移动互联网重塑了人们的购物路径:信息变得唾手可得,商品决策变得高度依赖内容。 但 AI 时代的来…...
Java毕业设计:WML信息查询与后端信息发布系统开发
JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发,实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构,服务器端使用Java Servlet处理请求,数据库采用MySQL存储信息࿰…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...
