蓝牙 Bluetooth APCF实现休眠唤醒功能

原创 专注于无线通信的蓬勃 2023-04-01 16:15

零.声明

本专栏文章我们会以连载的方式持续更新,本专栏计划更新内容如下:

第一篇:蓝牙综合介绍 ,主要介绍蓝牙的一些概念,产生背景,发展轨迹,市面蓝牙介绍,以及蓝牙开发板介绍。

第二篇:Transport层介绍,主要介绍蓝牙协议栈跟蓝牙芯片之前的硬件传输协议,比如基于UART的H4,H5,BCSP,基于USB的H2等

第三篇:传统蓝牙controller介绍,主要介绍传统蓝牙芯片的介绍,包括射频层(RF),基带层(baseband),链路管理层(LMP)等

第四篇:传统蓝牙host介绍,主要介绍传统蓝牙的协议栈,比如HCI,L2CAP,SDP,RFCOMM,HFP,SPP,HID,AVDTP,AVCTP,A2DP,AVRCP,OBEX,PBAP,MAP等等一系列的协议吧。

第五篇:低功耗蓝牙controller介绍,主要介绍低功耗蓝牙芯片,包括物理层(PHY),链路层(LL)

第六篇:低功耗蓝牙host介绍,低功耗蓝牙协议栈的介绍,包括HCI,L2CAP,ATT,GATT,SM等

第七篇:蓝牙芯片介绍,主要介绍一些蓝牙芯片的初始化流程,基于HCI vendor command的扩展

第八篇:附录,主要介绍以上常用名词的介绍以及一些特殊流程的介绍等。

另外,开发板如下所示,对于想学习蓝牙协议栈的最好人手一套。以便更好的学习蓝牙协议栈,相信我,学完这一套视频你将拥有修改任何协议栈的能力(比如Linux下的bluez,Android下的bluedroid)。

-------------------------------------------------------------------------------------------------------------------------

蓝牙视频教程(跟韦东山老师合作):https://item.taobao.com/item.htm?spm=a1z10.5-c-s.w4002-22329603914.10.77201fc98qgCWh&id=679276693032

蓝牙交流扣扣群:970324688

Github代码:GitHub - sj15712795029/bluetooth_stack: 这是一个开源的双模蓝牙协议栈(bluetooth.stack)(btstack),可以运行在STM32,Linux.,包含HCI,L2CAP,SDP,RFCOMM,HFP,SPP,A2DP,AVRCP,AVDTP,AVCTP,OBEX,PBAP等协议,后续会继续维护,以达到商用的目的

入手开发板:https://shop220811498.taobao.com/category-1542116976.htm?spm=a1z10.5-c-s.w4010-22329603913.7.39ca7dbe2EA0K3&search=y&catName=%C0%B6%D1%C0%BF%AA%B7%A2%B0%E5#bd


--------------------------------------------------------------------------------------------------------------------------


一.概念

ACPF(Advertising Packet Content Filter)是广播内容过滤功能,主要使能后运行controller中,所以广泛应用于广播唤醒功能,但是有个局限,不过滤周期广播。

这个命令属于HCI Vendor Specific Command/Event,所以需要固件额外支持才行!

另外,如果要做广播唤醒,需要从特定的引脚输出特定的波形,所以这个需要额外的vendor specific command才行

二.封包格式

以下是APCF Command的格式

Command parameter

Size

Purpose

APCF_opcode

(OGF = 0x3F)

(OCG = 0x0157)

1 octet

0x00 - APCF Enable
0x01 - APCF Set Filtering parameters
0x02 - APCF Broadcaster Address
0x03 - APCF Service UUID
0x04 - APCF Service Solicitation UUID
0x05 - APCF Local Name
0x06 - APCF Manufacturer Data
0x07 - APCF Service Data
0x08 - APCF Transport Discovery Service
0x09 - APCF AD Type Filter
0x10 ~ 0xAF - Reserved for future use
0xB0 ~ 0xDF - Reserved for vendor
0xE0 ~ 0xFE - Reserved for future use
0xFF - APCF Read extended Features

A Command Complete event will be generated for this command.

Return parameter

Size

Purpose

Status

1 octet

Return status

APCF_opcode

1 octet

0x00 - APCF Enable
0x01 - APCF Set Filtering parameters
0x02 - APCF Broadcaster Address
0x03 - APCF Service UUID
0x04 - APCF Service Solicitation UUID
0x05 - APCF Local Name
0x06 - APCF Manufacturer Data
0x07 - APCF Service Data
0x08 - APCF Transport Discovery Service
0x09 - APCF AD Type Filter
0x10 ~ 0xAF - Reserved for future use
0xB0 ~ 0xDF - Reserved for vendor
0xE0 ~ 0xFE - Reserved for future use
0xFF - APCF Read extended Features

1.LE_APCF_Command: Enable_sub_cmd

Sub OCF: 0x00

Sub-command parameter

Size

Purpose

APCF_enable

1 octet

0x01 - Enable APCF feature
0x00 - Disable APCF feature

A Command Complete event will be generated for this command.

Return parameter

Size

Purpose

Status

1 octet

Command Complete status

APCF_opcode

1 octet

0x0 - APCF Enable

APCF_Enable

1 octet

Enable/disable is set via APCF_enable

2.LE_APCF_Command: set_filtering_parameters_sub_cmd

This subcommand is used to add or delete a filter specification or clear a filter list for on-chip filtering.

Sub OCF: 0x01

Sub-command parameter

Size

Purpose

APCF_Action

1 octet

0x00 - Add
0x01 - Delete
0x02 - Clear
Delete will clear the specific filter along with associated feature entries in other tables.
Clear will clear all the filters and associated entries in other tables.

APCF_Filter_Index

1 octet

Filter index (0, max_filter-1)

APCF_Feature_Selection

2 octets

Bit masks for the selected features:
Bit 0: Set to enable Broadcast Address filter
Bit 1: Set to enable Service Data Change filter
Bit 2: Set to enable Service UUID check
Bit 3: Set to enable Service Solicitation UUID check
Bit 4: Set to enable Local Name check
Bit 5: Set to enable Manufacturer Data Check
Bit 6: Set to enable Service Data Check
Bit 7: Set to enable Transport Discovery Service Check
Bit 8: Set to enable AD Type Check

APCF_List_Logic_Type

2 octets

Logic operation for each feature selection (per-bit position) specified in APCF_Feature_Selection.
Valid only when a feature is enabled.
Bit position value:
0: OR
1: AND
If "AND" logic is selected, an ADV packet will pass the filter only if it contains ALL of the entries in the list.
If "OR" logic is selected, an ADV packet will pass the filter if it contains any of the entries in the list.

APCF_Filter_Logic_Type

1 octet

0x00: OR
0x01: AND
Note: The logic type is N/A for the first three fields of APCF_Feature_Selection, which is always "AND" logic. They are only applicable for (Bit 3 - ­Bit 6) four fields of APCF_Feature_Selection.

rssi_high_thresh

1 octet

[in dBm]
The advertiser is considered seen only if the signal is higher than the RSSI high threshold. Otherwise, the firmware must behave as if it never saw it.

delivery_mode

1 octet

0x00 - immediate
0x01 - on_found
0x02 - batched

onfound_timeout

2 octets

Valid only if delivery_mode is on_found.
[in milliseconds]
Time for firmware to linger and collect additional advertisements before reporting.

onfound_timeout_cnt

1 octet

Valid only if delivery_mode is on_found.
[count]
If an advertisement in onFound lingers in firmware for the onfound_timeout duration, it will collect a few advertisements and the count is checked. If the count exceeds onfound_timeout_cnt, it's reported OnFound immediately thereafter.

rssi_low_thresh

1 octet

Valid only if delivery_mode is on_found.
[in dBm]
The advertiser packet is considered as not seen if the RSSI of the received packet is not above the RSSI low threshold.

onlost_timeout

2 octets

Valid only if delivery_mode is on_found.
[in milliseconds]
If an advertisement, after being found, is not seen contiguously for the lost_timeout period, it will immediately be reported lost.

num_of_tracking_entries

2 octets

Valid only if delivery_mode is on_found.
[count]
Total number of advertisers to track per filter.

RSSI values must use 2's complement to represent negative values.

Host shall be able to configure multiple filters with APCF_Application_Address_type set to 0x02 (for all broadcaster addresses) to manage various filter combinations.

Filtering, batching and reporting are inter-related concepts. Every advertisement and related scan response will have to go through all the filters, one after the other. Thus, resulting actions (delivery_mode) are closely tied to filtering. The delivery modes are the following: report_immediately, batch, and onFound. The OnLost value is related to OnFound in the sense that it will come after OnFound when lost.

This processing flow depicts the conceptual model:

When an advertisement (or scan response) frame is received, it is applied to all the filters in serial order. It's possible that an advertisement can cause immediate reporting based on one filter and batching of the same due to a different filter action.

RSSI level thresholds (high and low) give the ability to control when the frame is visible for filter processing, even when a valid packet is received by the controller. In case of delivery mode being set to immediate or batched, the RSSI of a frame is considered for further controller processing. Different apps need different reporting and batching behavior. This allows multiple apps to have direct reporting and/or batching of results in firmware, concurrently. An example is a case when a batch scan is active from one app and later a regular LE scan is issued by another app. Before a batch scan is issued, the framework/app sets appropriate filters. Later, when the second app issues a regular scan, previous batching continues. However, due to the regular scan, it is akin to conceptually adding a null filter (along with all the existing filters) along with the LE scan command. The LE scan command parameters take precedence when active. When the regular LE scan is disabled, the controller will revert back to a previous batch scan, if it existed.

The OnFound delivery mode is based on configured filters. A combination that triggers a filter's action to succeed is considered the entity to track for onLost. The corresponding event is the LE Advt tracking subevent.

The OnFound/OnLost transition for a filter (if enabled) will look like the following:

A Command Complete event will be generated for this command.

Return parameter

Size

Purpose

Status

1 octet

Command Complete status

APCF_opcode

1 octet

0x02 - APCF Set Filtering Parameters

APCF_Action

1 octet

Echo back command's APCF_Action

APCF_AvailableSpaces

1 octet

Number of available entries in the filters table

3.LE_APCF_Command: broadcast_address_sub_cmd

This subcommand is used to add or delete an advertiser address or to clear the advertiser address list for on-chip filtering.

Sub OCF: 0x02

Sub-command parameter

Size

Purpose

APCF_Action

1 octet

0x00 - Add
0x01 - Delete
0x02 - Clear
Delete will delete the specified broadcaster address in the specified filter.
Clear will clear all the broadcaster addresses in the specified filter.

APCF_Filter_Index

1 octet

Filter index (0, max_filter-1)

APCF_Broadcaster_Address

6 octet

6-byte device address to add to or delete from the broadcaster address list

APCF_Application_Address_type

1 octet

0x00: Public
0x01: Random
0x02: NA (addresses type not applicable)

A Command Complete event will be generated for this command.

Return parameter

Size

Purpose

Status

1 octet

Command Complete status

APCF_opcode

1 octet

0x02 - APCF Broadcaster Address

APCF_Action

1 octet

Echo back command's APCF_Action

APCF_AvailableSpaces

1 octet

Number of free entries still available in the Broadcast Address table

4. LE_APCF_Command: service_uuid_sub_cmd

This subcommand is used to add or delete a service UUID or to clear a service UUID list for on-chip filtering.

Sub OCF: 0x03

Sub-command parameter

Size

Purpose

APCF_Action

1 octet

0x00 - Add
0x01 - Delete
0x02 - Clear
Delete will delete the specified service UUID address in the specified filter.
Clear will clear all the service UUIDs in the specified filter.

APCF_Filter_Index

1 octet

Filter index (0, max_filter-1)

APCF_UUID

2,4,16 octet

The Service UUID (16-bit, 32-bit, or 128-bit) for adding to, or deleting from, the list.

APCF_UUID_MASK

2,4,16 octet

The Service UUID Mask (16-bit, 32-bit, or 128-bit) to add to the list. It should have the same length as APCF_UUID.

A Command Complete event will be generated for this command.

Return parameter

Size

Purpose

Status

1 octet

Command Complete status

APCF_opcode

1 octet

0x03 - APCF Service UUID

APCF_Action

1 octet

Echo back command's APCF_Action

APCF_AvailableSpaces

1 octet

Number of free entries still available in the Service UUID table

5. LE_APCF_Command: solicitation_uuid_sub_cmd

This subcommand is used to add or delete a solicitation UUID or to clear a solicitation UUID list for on-chip filtering.

Sub OCF: 0x04

Sub-command parameter

Size

Purpose

APCF_Action

1 octet

0x00 - Add
0x01 - Delete
0x02 - Clear
Delete will delete the solicitation UUID address in the specified filter.
Clear will clear all the solicitation UUIDs in the specified filter.

APCF_Filter_Index

1 octet

Filter index (0, max_filter-1)

APCF_UUID

2,4,16 octet

The Solicitation UUID (16-bit, 32-bit, or 128-bit) to add to or delete from the list.

APCF_UUID_MASK

2,4,16 octet

The Solicitation UUID Mask (16-bit, 32-bit, or 128-bit) to add to the list. It should have the same length as the APCF_UUID.

A Command Complete event will be generated for this command.

Return parameter

Size

Purpose

Status

1 octet

Command Complete status

APCF_opcode

1 octet

0x04 - APCF Solicitation UUID

APCF_Action

1 octet

Echo back command's APCF_Action

APCF_AvailableSpaces

1 octet

Number of free entries still available in the Solicitation UUID table

6. LE_APCF_Command: local_name_sub_cmd

This sub-command is used to add or delete a local name string or to clear the local name string list for on-chip filtering.

Sub OCF: 0x05

Sub-command parameter

Size

Purpose

APCF_Action

1 octet

0x00 - Add
0x01 - Delete
0x02 - Clear
Delete will delete the specified local name string in the specified filter.
Clear will clear all the local name strings in the specified filter.

APCF_Filter_Index

1 octet

Filter index (0, max_filter-1)

APCF_LocName_Mandata_or_SerData

Variable size

A character string for local name.

Notes:

  • Currently the max number of characters in a local name string is 29
  • Not applicable when action is "Clear" (0x2)

A Command Complete event will be generated for this command.

Return parameter

Size

Purpose

Status

1 octet

Command Complete status

APCF_opcode

1 octet

0x05 - APCF Local Name

APCF_Action

1 octet

Echo back command's APCF_Action

APCF_AvailableSpaces

1 octet

Number of free entries still available in the Local name table

7. LE_APCF_Command: manf_data_sub_cmd

This subcommand is used to add or delete a manufacturer data string or to clear the manufacturer data string list for on-chip filtering.

Sub OCF: 0x06

Sub-command parameter

Size

Purpose

APCF_Action

1 octet

0x00 - Add
0x01 - Delete
0x02 - Clear
Delete will delete the specified manufacturer data string in the specified filter.
Clear will clear all the manufacturer data strings in the specified filter.

APCF_Filter_Index

1 octet

Filter Index (0, max_filter-1)

APCF_LocName_Mandata_or_SerData

Variable size

A character string for manufacturer data.

Notes:

  • Currently the max number of characters in a local name string is 29
  • Not applicable when action is "Clear" (0x2)

APCF_ManData_Mask

Variable size

The manufacture data mask to add to the list. It should have the same length as APCF_LocName_or_ManData_or_SerData.

A Command Complete event will be generated for this command.

Return parameter

Size

Purpose

Status

1 octet

Command Complete status

APCF_opcode

1 octet

0x06 - APCF Manufacturer Data

APCF_Action

1 octet

Echo back command's APCF_Action

APCF_AvailableSpaces

1 octet

Number of free entries still available in the Manufacturer Data table

8. LE_APCF_Command: service_data_sub_cmd

This subcommand is used to add or delete a service data string or to clear the service data string list for on-chip filtering.

Sub OCF: 0x07

Sub-command parameter

Size

Purpose

APCF_Action

1 octet

0x00 - Add
0x01 - Delete
0x02 - Clear
Delete will delete the specified service data string in the specified filter.
Clear will clear all the service data strings in the specified filter.

APCF_Filter_Index

1 octet

Filter Index (0, max_filter-1)

APCF_LocName_Mandata_or_SerData

Variable size

A character string for service data.

Notes:

  • Currently the max number of characters in a local name string is 29
  • Not applicable when action is "Clear" (0x2)

APCF_LocName_Mandata_or_SerData_Mask

Variable size

The service data mask to add to the list. It should have the same length as APCF_LocName_or_ManData_or_SerData.

A Command Complete event will be generated for this command.

Return parameter

Size

Purpose

Status

1 octet

Command Complete status

APCF_opcode

1 octet

0x07 - APCF Service Data

APCF_Action

1 octet

Echo back command's APCF_Action

APCF_AvailableSpaces

1 octet

Number of free entries still available for Service Data table

9.LE_APCF_Command: ad_type_sub_cmd

This subcommand is used to add or delete an AD type or to clear an AD type list for on-chip filtering. Use read_extended_features_sub_cmd to check if this command is supported or not.

Sub OCF: 0x09

Sub-command parameter

Size

Purpose

APCF_Action

1 octet

0x00 - Add
0x01 - Delete
0x02 - Clear
Delete will delete the specified AD type in the specified filter.
Clear will clear all the AD types in the specified filter.

APCF_Filter_Index

1 octet

Filter Index (0, max_filter-1)

APCF_AD_TYPE

1 octet

The AD Type for adding to, or deleting from, the list. Ignore when APCF_Action is 0x02 (Clear)

APCF_AD_DATA_Length

Variable size

0x00 - means do not filter data content
Ignore when APCF_Action is 0x02 (Clear)

APCF_AD_DATA

Variable size

Ignore when APCF_Action is 0x02 (Clear)

APCF_AD_DATA_MASK

Variable size

Ignore when APCF_Action is 0x02 (Clear)
It should have the same length as APCF_AD_DATA.

A Command Complete event will be generated for this command.

Return parameter

Size

Purpose

Status

1 octet

Command Complete status

APCF_opcode

1 octet

0x09 - APCF AD Type

APCF_Action

1 octet

Echo back command's APCF_Action

APCF_AvailableSpaces

1 octet

Number of free entries still available in the AD Type table

10. LE_APCF_Command: read_extended_features_sub_cmd

This subcommand is used to read extended APCF features.

Sub OCF: 0xFF

Sub-command parameter

Size

Purpose

Not applicable

Empty command parameter.

A Command Complete event will be generated for this command.

Return parameter

Size

Purpose

Status

1 octet

Command Complete status

APCF_opcode

1 octet

0xFF - APCF_Read_Extended_Features

APCF_extended_features

2 octet

Bit masks for extended features supported:

  • Bit 0: Support Transport Discovery Service filter
  • Bit 1: Support AD Type filter
  • Bit 2 ~15: Reserved for future use

Value of bit

  • 0 = Not supported
  • 1 = Supported
专注于无线通信的蓬勃 朝气蓬勃——不积跬步 无以至千里, 不积小流 无以成江海
评论 (0)
  • 升职这件事,说到底不是单纯靠“干得多”或者“喊得响”。你可能也看过不少人,能力一般,甚至没你努力,却升得飞快;而你,日复一日地拼命干活,升职这两个字却始终离你有点远。这种“不公平”的感觉,其实在很多职场人心里都曾经出现过。但你有没有想过,问题可能就藏在一些你“没当回事”的小细节里?今天,我们就来聊聊你升职总是比别人慢,可能是因为这三个被你忽略的小细节。第一:你做得多,但说得少你可能是那种“默默付出型”的员工。项目来了接着干,困难来了顶上去,别人不愿意做的事情你都做了。但问题是,这些事情你做了,却
    优思学院 2025-03-31 14:58 76浏览
  • 在不久前发布的《技术实战 | OK3588-C开发板上部署DeepSeek-R1大模型的完整指南》一文中,小编为大家介绍了DeepSeek-R1在飞凌嵌入式OK3588-C开发板上的移植部署、效果展示以及性能评测,本篇文章不仅将继续为大家带来关于DeepSeek-R1的干货知识,还会深入探讨多种平台的移植方式,并介绍更为丰富的交互方式,帮助大家更好地应用大语言模型。1、移植过程1.1 使用RKLLM-Toolkit部署至NPURKLLM-Toolkit是瑞芯微为大语言模型(LLM)专门开发的转换
    飞凌嵌入式 2025-03-31 11:22 158浏览
  • 北京贞光科技有限公司作为紫光同芯产品的官方代理商,为客户提供车规安全芯片的硬件、软件SDK销售及专业技术服务,并且可以安排技术人员现场支持客户的选型和定制需求。在全球汽车电子市场竞争日益激烈的背景下,中国芯片厂商正通过与国际领先企业的深度合作,加速融入全球技术生态体系。近日,紫光同芯与德国HighTec达成的战略合作标志着国产高端车规芯片在国际化道路上迈出了关键一步,为中国汽车电子产业的发展注入了新的活力。全栈技术融合:打造国际化开发平台紫光同芯与HighTec共同宣布,HighTec汽车级编译
    贞光科技 2025-03-31 14:44 82浏览
  • REACH和RoHS欧盟两项重要的环保法规有什么区别?适用范围有哪些?如何办理?REACH和RoHS是欧盟两项重要的环保法规,主要区别如下:一、核心定义与目标RoHS全称为《关于限制在电子电器设备中使用某些有害成分的指令》,旨在限制电子电器产品中的铅(Pb)、汞(Hg)、镉(Cd)、六价铬(Cr6+)、多溴联苯(PBBs)和多溴二苯醚(PBDEs)共6种物质,通过限制特定材料使用保障健康和环境安全REACH全称为《化学品的注册、评估、授权和限制》,覆盖欧盟市场所有化学品(食品和药品除外),通过登
    张工13144450251 2025-03-31 21:18 65浏览
  •        随着智能驾驶向L3级及以上迈进,系统对实时性的要求已逼近极限。例如,自动紧急制动(AEB)需在50毫秒内完成感知、决策到执行的全链路响应,多传感器数据同步误差需小于10微秒。然而,传统基于Linux-RT的方案在混合任务处理中存在天然缺陷——其最大中断延迟高达200微秒,且多任务并发时易引发优先级反转问题。据《2024年智能汽车电子架构白皮书》统计,超60%的车企因实时性不足被迫推迟舱驾一体化项目落地。为旌电子给出的破局之道,是采用R5F(实
    中科领创 2025-03-29 11:55 275浏览
  • 引言在语音芯片设计中,输出电路的设计直接影响音频质量与系统稳定性。WT588系列语音芯片(如WT588F02B、WT588F02A/04A/08A等),因其高集成度与灵活性被广泛应用于智能设备。然而,不同型号在硬件设计上存在关键差异,尤其是DAC加功放输出电路的配置要求。本文将从硬件架构、电路设计要点及选型建议三方面,解析WT588F02B与F02A/04A/08A的核心区别,帮助开发者高效完成产品设计。一、核心硬件差异对比WT588F02B与F02A/04A/08A系列芯片均支持PWM直推喇叭
    广州唯创电子 2025-04-01 08:53 105浏览
  • 在智能语音交互设备开发中,系统响应速度直接影响用户体验。WT588F系列语音芯片凭借其灵活的架构设计,在响应效率方面表现出色。本文将深入解析该芯片从接收指令到音频输出的全过程,并揭示不同工作模式下的时间性能差异。一、核心处理流程与时序分解1.1 典型指令执行路径指令接收 → 协议解析 → 存储寻址 → 数据读取 → 数模转换 → 音频输出1.2 关键阶段时间分布(典型值)处理阶段PWM模式耗时DAC模式耗时外挂Flash模式耗时指令解析2-3ms2-3ms3-5ms存储寻址1ms1ms5-10m
    广州唯创电子 2025-03-31 09:26 185浏览
  • 在环保与经济挑战交织的当下,企业如何在提升绩效的同时,也为地球尽一份力?普渡大学理工学院教授 查德·劳克斯(Chad Laux),和来自 Maryville 大学、俄亥俄州立大学及 Trine 大学的三位学者,联合撰写了《精益可持续性:迈向循环经济之路(Lean Sustainability: Creating a Sustainable Future through Lean Thinking)》一书,为这一问题提供了深刻的答案。这本书也荣获了 国际精益六西格玛研究所(IL
    优思学院 2025-03-31 11:15 67浏览
  • 据先科电子官方信息,其产品包装标签将于2024年5月1日进行全面升级。作为电子元器件行业资讯平台,大鱼芯城为您梳理本次变更的核心内容及影响:一、标签变更核心要点标签整合与环保优化变更前:卷盘、内盒及外箱需分别粘贴2张标签(含独立环保标识)。变更后:环保标识(RoHS/HAF/PbF)整合至单张标签,减少重复贴标流程。标签尺寸调整卷盘/内盒标签:尺寸由5030mm升级至**8040mm**,信息展示更清晰。外箱标签:尺寸统一为8040mm(原7040mm),提升一致性。关键信息新增新增LOT批次编
    大鱼芯城 2025-04-01 15:02 99浏览
  •        在“软件定义汽车”的时代浪潮下,车载软件的重要性日益凸显,软件在整车成本中的比重逐步攀升,已成为汽车智能化、网联化、电动化发展的核心驱动力。车载软件的质量直接关系到车辆的安全性、可靠性以及用户体验,因此,构建一套科学、严谨、高效的车载软件研发流程,确保软件质量的稳定性和可控性,已成为行业共识和迫切需求。       作为汽车电子系统领域的杰出企业,经纬恒润深刻理解车载软件研发的复杂性和挑战性,致力于为O
    经纬恒润 2025-03-31 16:48 54浏览
  • Shinco音响拆解 一年一次的面包板社区的拆解活动拉开帷幕了。板友们开始大显身手了,拆解各种闲置的宝贝。把各自的设计原理和拆解的感悟一一向电子爱好者展示。产品使用了什么方案,用了什么芯片,能否有更优的方案等等。不仅让拆解的人员了解和深入探索在其中。还可以让网友们学习电子方面的相关知识。今天我也向各位拆解一个产品--- Shinco音响(如下图)。 当产品连接上电脑的耳机孔和USB孔时,它会发出“开机,音频输入模式”的语音播报,。告诉用户它已经进入音响外放模式。3.5mm耳机扣接收电脑音频信号。
    zhusx123 2025-03-30 15:42 107浏览
  • 一、温度计不准的原因温度计不准可能由多种原因导致,如温度计本身的质量问题、使用环境的变化、长时间未进行校准等。为了确保温度计的准确性,需要定期进行校准。二、校准前准备工作在进行温度计校准之前,需要做好以下准备工作:1. 选择合适的校准方法和设备,根据温度计的型号和使用需求来确定。2. 确保校准环境稳定,避免外部因素对校准结果产生影响。3. 熟悉温度计的使用说明书和校准流程,以便正确操作。三、温度计校准方法温度计校准方法一般分为以下几步:1. 将温度计放置在
    锦正茂科技 2025-03-31 10:27 46浏览
  • 引言随着物联网和智能设备的快速发展,语音交互技术逐渐成为提升用户体验的核心功能之一。在此背景下,WT588E02B-8S语音芯片,凭借其创新的远程更新(OTA)功能、灵活定制能力及高集成度设计,成为智能设备语音方案的优选。本文将从技术特性、远程更新机制及典型应用场景三方面,解析该芯片的技术优势与实际应用价值。一、WT588E02B-8S语音芯片的核心技术特性高性能硬件架构WT588E02B-8S采用16位DSP内核,内部振荡频率达32MHz,支持16位PWM/DAC输出,可直接驱动8Ω/0.5W
    广州唯创电子 2025-04-01 08:38 94浏览
  • 在智能家居领域,无线门铃正朝着高集成度、低功耗、强抗干扰的方向发展。 WTN6040F 和 WT588F02B 两款语音芯片,凭借其 内置EV1527编解码协议 和 免MCU设计 的独特优势,为无线门铃开发提供了革命性解决方案。本文将深入解析这两款芯片的技术特性、应用场景及落地价值。一、无线门铃市场痛点与芯片方案优势1.1 行业核心痛点系统复杂:传统方案需MCU+射频模块+语音芯片组合,BOM成本高功耗瓶颈:待机电流
    广州唯创电子 2025-03-31 09:06 147浏览
  • 提到“质量”这两个字,我们不会忘记那些奠定基础的大师们:休哈特、戴明、朱兰、克劳士比、费根堡姆、石川馨、田口玄一……正是他们的思想和实践,构筑了现代质量管理的核心体系,也深远影响了无数企业和管理者。今天,就让我们一同致敬这些质量管理的先驱!(最近流行『吉卜力风格』AI插图,我们也来玩玩用『吉卜力风格』重绘质量大师画象)1. 休哈特:统计质量控制的奠基者沃尔特·A·休哈特,美国工程师、统计学家,被誉为“统计质量控制之父”。1924年,他提出世界上第一张控制图,并于1931年出版《产品制造质量的经济
    优思学院 2025-04-01 14:02 71浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦