ARM Cordio WSF(一)——架构简介

1. 关于WSF

WSF(wireless Software Foundation API),是一个RTOS抽象层。Wireless Software Foundation software service and porting layer,提供实时操作系统所需的基础服务,可基于不同平台进行实现,移植也非常简单,适合RTOS场景与无实时操作系统场景使用。

该框架开源与packetcraft蓝牙相关协议栈中,项目地址:github: packetcraft/inc/stacks。最新版本:r20.05,用于蓝牙协议栈。主要开发者JYI,前ARM BLE软件团队研发总监,现为packetcraft CEO。目前开源部分协议栈版本仅支持到5.2。

Packetcraft协议栈软件是实现蓝牙低功耗链路层、主机、配置文件和网格规范的嵌入式协议栈的集合。

WSF的目标是保持小巧和精简,仅支持系统所需的基本服务。包括以下组成部分:

  • 事件处理服务,支持事件和消息传递;
  • 定时器服务;
  • 队列和缓冲管理服务;
  • 可移植数据类型;
  • 关键区域和任务锁定;
  • Trace and Assert诊断服务;
  • 加密和随机数生成安全接口。

WSF不定义任何任务,但定义了一些与任务相关的接口,依赖于目标操作系统来实现任务,并通过目标操作系统的任务来管理定时器和事件处理服务。在没有操作系统的情况下,WSF也可以作为一个简单独立操作系统运行。

该项目最后更新时间为2020年,后应由packetcraft公司运营,部分代码并未继续开源,根据packetcraft官网介绍,当前其已经支持最新蓝牙协议到BLE 5.4,此外提供包括UWB在内的接入解决方案,以满足短距离无线技术的不断发展,使半导体企业能够通过更多功能和定制实现更大的产品差异化,此外,还提供包括最新的蓝牙测距技术(Channel Sounding)。

后续文章将陆续从以下几个点介绍:

  • 接口:WSF都提供了哪些接口,有什么功能。ARM Cordio WSF(二)——API接口
  • 移植:对于特定的硬件平台,如何移植WSF,以便用于应用中。
  • 应用:在应用的开发中,WSF到底应该怎么使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/795176.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI绘图cuda与stable diffusion安装部署始末与避坑

stable diffusion的安装说起来很讽刺,最难的不是stable diffusion,而是下载安装cuda。下来我就来分享一下我的安装过程,失败了好几次,几近放弃。 一、安装cuda 我们都知道cuda是显卡CPU工作的驱动(或者安装官网的解释…

揭示GPU上的批处理策略

本文深入探讨了批处理在现代GPU上的工作原理,以及它是如何影响深度学习模型的推理速度,基于此,作者为模型优化提供了实用指导。通过优化批处理策略,研究人员和工程师可以更有效地利用计算资源,提高模型的推理效率。 &a…

《状态模式(极简c++)》

本文章属于专栏- 概述 - 《设计模式(极简c版)》-CSDN博客 模式说明: 方案:状态模式是一种行为设计模式,用于在对象的内部状态发生改变时改变其行为。它包括三个关键角色:上下文(Context&#x…

攻防世界:mfw[WriteUP]

根据题目提示考虑是git库泄露 这里在地址栏后加.git也可以验证是git库泄露 使用GitHack工具对git库进行恢复重建 在templates目录下存在flag.php文件&#xff0c;但里面并没有flag 有内容的只有主目录下的index.php index.php源码&#xff1a; <?phpif (isset($_GET[page…

Web 安全之 SSL 剥离攻击详解

目录 SSL/TLS简介 SSL 剥离攻击原理 SSL 剥离攻击的影响 SSL 剥离攻击的防范措施 小结 SSL 剥离攻击&#xff08;SSL Stripping Attack&#xff09;是一种针对安全套接层&#xff08;SSL&#xff09;或传输层安全性&#xff08;TLS&#xff09;协议的攻击手段&#xff0c;…

Scaling Law解析

文章目录 scaling law一个token的计算量幂律关系幂律规律实际指导 scaling law 幂律法则&#xff1a;对大模型数据量、参数量、算力之间的最优分配 不仅仅是对语言大模型&#xff0c;对主要基于tranformer的多模态大模型基本都有效 对于Decoder-only结构模型(GPT架构)&#…

C语言如何调⽤编译后的函数?

一、问题 在C程序中调⽤被 C 编译器编译后的函数&#xff0c;为什么要加 extern “C" &#xff1f; 二、解答 1. 问题解析 外部函数就是可以被其他源⽂件调⽤的函数。定义外部函数时&#xff0c;使⽤关键字 extern 进⾏修饰。在使⽤⼀个外部函数时&#xff0c;要先⽤ ex…

解决Vue中仓库持久化的问题,不借助插件用原生JS实现仓库持久化。了解仓库的插件机制、监听的时机

1、演示 前言&#xff1a;目前Vue有两种仓库&#xff0c;一种是Vuex&#xff0c;一种是Pinia&#xff0c;懂得都懂&#xff0c;这里就不详细介绍这两者的区别了 2、什么是持久化 仓库里面的数据是需要跨越页面周期的&#xff0c;当页面刷新之后数据还在&#xff0c;在默认情况下…

YoloV8改进策略:下采样改进|自研下采样模块(独家改进)|疯狂涨点|附结构图

摘要 本文介绍我自研的下采样模块。本次改进的下采样模块是一种通用的改进方法,你可以用分类任务的主干网络中,也可以用在分割和超分的任务中。已经有粉丝用来改进ConvNext模型,取得了非常好的效果,配合一些其他的改进,发一篇CVPR、ECCV之类的顶会完全没有问题。 本次我…

【网站项目】平面设计课程在线学习平台系统

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

定风波:苏轼

定风波&#xff1a;苏轼 该片围绕诗文、书画、美食、旅游、民生等主题&#xff0c;多维度描绘苏东坡的为官之道、志趣审美和精神世界&#xff0c;深入解读苏东坡在21世纪的价值。 生平 1.出生于眉山 2.进京参加会考 3.母亲去世&#xff0c;回乡奔丧 4.开始担任官职 5.恰逢王…

《债务与国家的崛起》西方民主制度的金融起源 - 三余书屋 3ysw.net

债务与国家的崛起&#xff1a;西方民主制度的金融起源 你好&#xff0c;今天我们来聊聊由英国知名经济与金融历史学家詹姆斯麦克唐纳所著的《债务与国家的崛起》这本书。19世纪世界历史上发生了一次巨变&#xff0c;即“大分流”。当时西方通过工业革命实现了科技和经济的飞速…

Java 学习和实践笔记(51):二分法查找(折半检索)

二分法查找&#xff08;折半检索&#xff09;又叫binary search. 要在一堆数据中查找是否存在某一个已知数&#xff0c;二分法查找的步骤&#xff1a; 第一步&#xff0c;对数据实现排序 第二步&#xff0c;将该数与排序后的数据集的中间一个数进行比较 第三步&#xff0c;…

SAP S/4HANA的常见部署方式

SAP S/4HANA是SAP面向企业数字化转型推出一代商务ERP 套件&#xff0c;与传统的SAP ERP系统相比&#xff0c;它基于内存计算和先进的数据处理技术&#xff0c;提供更快的数据处理速度、实时分析和更好的用户体验。SAP S/4HANA可以根据企业的需求以多种部署方式进行实施&#xf…

《FPGA接口与协议》专栏的说明与导航

&#xff08;1&#xff09;为什么成了付费专栏&#xff1f; 知识付费时代&#xff0c;多做一些尝试免费内容非常容易被其他网站爬虫获取&#xff0c;付费是某种意义上的版权保护付费即意味着责任&#xff0c;有利于提高专栏质量&#xff0c;驱使作者对读者、对内容更负责 &…

Java项目实战笔记--基于SpringBoot3.0开发仿12306高并发售票系统--(二)项目实现-第二篇-前端模块搭建及单点登录的实现

本文参考自 Springboot3微服务实战12306高性能售票系统 - 慕课网 (imooc.com) 本文是仿12306项目实战第&#xff08;二&#xff09;章——项目实现 的第二篇&#xff0c;详细讲解使用Vue3 Vue CLI 实现前端模块搭建的过程&#xff0c;同时其中也会涉及一些前后端交互的实现&am…

分享webgl魔幻星球

界面截图 webgl 是在网页上绘制和渲染三维图形的技术&#xff0c;可以让用户与其进行交互。divcss、canvas 2d 专注于二维图形。 对公司而言&#xff0c;webgl 可以解决他们在三维模型的显示和交互上的问题&#xff1b;对开发者而言&#xff0c;webgl 可以让我们是实现更多、更…

[从零开始学习Redis | 第九篇] 深入了解Redis数据类型

前言&#xff1a; 在现代软件开发中&#xff0c;数据存储和处理是至关重要的一环。为了高效地管理数据&#xff0c;并实现快速的读写操作&#xff0c;各种数据库技术应运而生。其中&#xff0c;Redis作为一种高性能的内存数据库&#xff0c;广泛应用于缓存、会话存储、消息队列…

2024 极术通讯-小米SU7汽车智驾芯片一览

导读&#xff1a;极术社区推出极术通讯&#xff0c;引入行业媒体和技术社区、咨询机构优质内容&#xff0c;定期分享产业技术趋势与市场应用热点。 芯方向 一文读懂Cache一致性原理 本文详细阐述了Cache一致性的重要性和实现原理&#xff0c;特别是在多核系统中。文章解释了由…

栈的ADT实现——有空间限制的栈

1、研究有空间限制的栈的原因 当我们使用很多软件时都有类似“undo”功能,比如Web浏览器的回退功能、文本编辑器的撤销编辑功能。这些功能都可以使用Stack实现,但是在现实中浏览器的回退功能也好,编辑器的撤销功能也好,都有一定的数量限制。因此我们需要的不是一个普通的Sta…