非暴力拆解:小熊派NB-IoT通信扩展板
摘要:相信大家对小熊派的NB-IoT通信扩展板已经非常了解了,但你有真正的了解过其内部构造吗?今天小编不聊技术,带你做一回拆·机·客!
相信大家对小熊派的NB-IoT通信扩展板已经非常了解了,但你有真正的了解过其内部构造吗?今天小编不聊技术,带你做一回拆·机·客!
拆解对象:BC35-G通信模组
BC35-G模组是由移远发布的一款基于海思Hi2115(又称:Boudica150)芯片的NB-IoT通信模组。BC35-G的运行方式支持以下两种:NB-IoT+MCU模式、OpenCPU模式。
NB-IoT+MCU模式是我们常见的一种组合方式(小熊派IoT即是此种组合方式),用MCU作为主控,进行数据采集及控制,MCU向模组发送AT命令来实现设备与互联网的数据交互。OpenCPU是利用模组自身处理能力来完成MCU的工作,从而省去MCU。
让我们脱掉它的“外衣”,看看它的内部构造

今天的主角就是那个最大的芯片:Hi2115,接下来小编就这款NB-IoT芯片进行深度解析。
Hi2115是华为海思研发的第二款NB-IoT通信芯片(第一款是Hi2110),主频48MHz,352KB Flash,64KB RAM,支持3GPP R14标准,在698-960 MHz和1695-2180 MHz的频率范围内工作,系统带宽为200 kHz。

接下来就由浅入深,透过这款芯片的外表来探究它最深处的“秘密”。
Hi2115芯片有三个处理器子系统,以分离不同的功能,方便认证和简化第三方应用程序开发。

Hi2115芯片内部结构框图
Hi2115芯片的三个处理器子系统分别是:
1.应用核处理器(Application):应用核心支持用户在应用程序上执行第三方应用代码
2.安全核处理器(Security Core):安全核心通过验证系统上运行的代码来维护Hi2115的安全性和完整性,也会生成随机数并控制其他两个核心的内存访问。
3.协议核处理器(Protocol Core):协议核心充当通信处理器,构成实现通信协议栈所有层的基础。它包括一个专用的ARM Cortex M0核和一个具有专用片上RAM的Dual-MAC DSP。有一个USIM接口允许与外部SIM操作,以及一个MIPI RFFE接口用于与外部射频电路接口连接。
三个子处理器之间,通过内存共享方式达成数据共享。每个核都独立运行,相互之间没有干扰。应用核可放心开放出所有用户权限,以供用户侧APP开发。
Hi2115芯片有三种工作模式,这三种模式确定了不同节电级别的可用功能。
1.活跃模式(Active)
在此模式下,芯片的所有功能均可用,并且所有处理器都在正常运行。无线电的传输和接收均是在这种模式下执行的。同时待机模式和深度睡眠模式只能在活动模式下进行转换。
2.待机模式(Standby)
在待机模式下,所有的处理器处于非活跃状态,但所有的外围设备(包括DMA和嵌入式Flash)均处于活跃状态。系统时钟处于活跃状态并通过时钟门控与电源门控降低功耗。当所有处理器执行等待中断(WFI)指令时,进入待机模式。
3.深度睡眠模式(Deep-Sleep)
处于此模式时只有32.768kHz的RTC和某些外围设备运行。芯片可以通过RTC中断或者通过外围设备的外部事件发送消息,唤醒处于深度睡眠模式的模块。此模式需要所有处理器输入设置成深度睡眠模式才能进入,然后执行等待中断(WFI)指令。
探索完框架之后,下面我们来具体了解下Hi2115芯片的外设部分:
- 1个通用UART(最高1.5Mbit/s)
- 2个低功耗UART(支持低功耗下异步操作)
- 2个IIC(最高1Mbit/s)
- 2个SPI(最高 24Mbit/s)
- 1个10bit ADC(818 ksps)
- 1个10bit DAC
- 1个高速模拟比较器
- 22个可编程IO(可配置)
Hi2115芯片的40个PIO中,有24个PIO在应用核上可用。对于每个PIO的IO引脚功能均有软件进行控制,包括:方向、中断配置、驱动强度以及集成的上拉和下拉电阻。
了解完前面这些,有没有种拨开云雾见月明的感觉?让我们带着这种feel,继续解析芯片的内部架构。
- 芯片供电
Hi2115芯片由单个电源供电,双模式(PWM / PFM)降压稳压器SMPSU为数字内核供电并针对深度睡眠的电流进行优化。而集成线性稳压器提供了模拟和无线电电源轨道,实现高发射功率和隔离噪声干扰物。这些线性稳压器由第二个片上SMPSU供电,以提高功耗效率,并且为了减少功耗,该芯片可以自动禁用内部无线电电源轨道。 - 参考时钟
Hi2115需要一个低相位噪声参考时钟为PLL和ADC提供频率参考,并且该芯片还需要32.768 kHz的晶振用于定时和深度睡眠唤醒。处理器由内部生成的时钟驱动,不依赖两个参考时钟启动。 - 射频功能
Hi2115芯片的无线电是用于在蜂窝频率下的NB-IoT通信。有两个阻抗为100Ω、可通过外部组件来配置的差分LNA输入,以用于LB(低频带698-960 MHz)和MB(中频带1695-2180 MHz)。发射机有两个阻抗为50Ω的单端输出,一种用于LB,另一种用于MB。
收发器射频端口与天线之间有以下几个部件:
1.TX功率放大器
这是一个能够产生23 dBm输出功率的PA,其具有20-30 dB的增益和足够的线性度,使之满足3GPP要求。
2.TX谐波滤波器
其规格取决于PA的选择。在某些情况下,它可能会集成到PA中,不需要单独使用。
3.TX/RX开关
RF开关将天线连接到PA输出和RX输入, 此开关可由Hi2115的一个或多个PIO控制。
4.RX谐波滤波器
用于滤除电力系统中某一次或多次谐波的装置
5.RX匹配组件/巴伦
Hi2115芯片还支持MIPI RFFE接口v1.0和v2.0,此接口用于控制功率放大器和支持1.8V接口的RF前端模块,且支持的SCLK频率范围为32kHz~26MHz。
非暴力拆解:小熊派NB-IoT通信扩展板的更多相关文章
- 小熊派IoT开发板系列教程正式发布——免费学习
[摘要] 小熊派开源社区针对小熊派IoT开发板首次规划了小熊派未来的系列教程.从基础到进阶的设计,可适应具有不同基础的开发者,通过该系列教程的学习,开发者能够轻松掌握IoT产品的开发.该系列教程包括单 ...
- 华为云MVP熊保松谈物联网开发:华为云IoT是首选,小熊派是神器
摘要:在AI.5G的技术驱动下,物联网行业的发展愈加如火如荼,开发者在技术的快速更迭间,也得乘风破浪跟上新技术的节奏. 在AI.5G的技术驱动下,物联网行业的发展愈加如火如荼,开发者在技术的快速更迭间 ...
- HC大会,华为联合合作伙伴发布一站式物联网IoT开发工具小熊派BearPi
传统的物联网产品开发步骤复杂,涉及硬件开发.软件开发.云端开发等众多流程.而且产品的开发周期长.开发成本高.产品稳定性不佳.维护成本高.而物联网设备本身市场竞争激烈,价格低,设备更新迭代快,所以在保证 ...
- 基于小熊派Hi3861鸿蒙开发的IoT物联网学习【一】
基于小熊派鸿蒙季BearPi-HM_Nano HarmonyOS 鸿蒙系统Hi3861开发板NFC 开发步骤:1.购买开发板:某宝上购买就行 2.安装开发环境 3.下载源码 4.编写案例并执行 开发 ...
- 手把手教你丨小熊派移植华为 LiteOS-M
摘要:本文详细讲解如何移植 LiteOS 到小熊派. 本文分享自华为云社区<小熊派移植华为 LiteOS-M(基于MDK)>,作者: JeckXu666. 前言 之前使用小熊派实现了鸿蒙动 ...
- 如何利用小熊派获取MPU6050六轴原始数据
摘要:使用小熊派开发板,通过硬件IIC与MPU6050六轴传感器模块通信,完成相应寄存器配置,成功获取陀螺仪.加速度计数据. 本问主要讲述使用小熊派开发板+MPU6050六轴传感器,获取加速度计以及陀 ...
- 开发实践丨用小熊派STM32开发板模拟自动售货机
摘要:本文内容是讲述用小熊派开发板模拟自动售货机,基于论坛提供的工程代码,通过云端开发和设备终端开发,实现终端数据在的华为云平台显示. 本文内容是讲述用小熊派开发板模拟自动售货机,基于论坛提供的工程代 ...
- 小程序接入云通信IM
小程序接入云通信IM--插件 小程序微信后台搜索AI情报官组件即可获得小程序云通信IM的即时通信能力
- 小熊派4G开发板初体验
开发板硬件资源介绍 前阵子小熊派发布了一款超高性价比的4G开发板(19.8元包邮),但是板子仅限量1000套.小熊派官方给我送了一块,我们一起来学习学习: 板子做得小巧精致,控制核心用的是移远的EC1 ...
- 实践案例丨利用小熊派开发板获取土壤湿度传感器的ADC值
摘要:一文带你用小熊派开发板动手做土壤湿度传感器. 一.实验准备 1.实验环境 一块stm32开发板(推荐使用小熊派),以及数据线 已经安装STM32CubeMX 已经安装KeilMDK,并导入stm ...
随机推荐
- windows开发环境备份,再也不怕重装系统了
每次重装系统后,都要重新安装软件,配置环境变量,极为繁琐.故作环境环境变量备份,常用软件恢复记录,前提是你的软件要安装在非系统盘,D/E盘等 软件安装在非系统盘 开发软件安装在非系统盘,建好目录.重装 ...
- 源码搭建zabbix平台
1.基于lnmp部署zabbix监控平台; zabbix优点: 1.支持自动发现服务器和网络设备: 2.分布式的监控体系和集中式的WEB管理: 3.支持主动监控和被动监控模式: 4.基于SNMP.IP ...
- HTTP工具类文件request.js的完善和优化
request.js 在现代前端项目中通常被称为一个HTTP请求工具或HTTP工具类文件.它的主要作用是对项目中用到的HTTP请求进行统一的配置和处理. 应用示例: // 查询用户列表 export ...
- React 基础介绍以及demo实践
这篇文章是之前给新同事培训react基础所写的文章,现贴这里供大家参考: 1.什么是React? React 是一个用于构建用户界面的JavaScript库核心专注于视图,目的实现组件化开发 2.组件 ...
- 【本博客所有关于git文章迭代汇总】git操作(暂存,回退,绑定远程等),看这一篇就够了
1.git常用操作 git 小白操作,无非是clone,然后拉取,提交分支,第一次clone的时候,关联远程分支可能会遇到问题,可以看第四条git关联远程分支 # 在当前目录新建一个Git代码库 $ ...
- 工控机中部署Ubuntu 22.04 系统
1.下载Ubuntu系统服务器版本 获取Ubuntu服务器版 | Ubuntu 2.下载启动盘制作工具 UltralSO(试用就可以) 文件 > 打开(Ubuntu.ISO) > 启动 & ...
- 简单地聊一聊Spring Boot的构架
本文由葡萄城技术团队发布.转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 前言 本文小编将详细解析Spring Boot框架,并通过代码举例说明每个层的作用 ...
- 对 .NET程序2G虚拟地址紧张崩溃 的最后一次反思
一:背景 1. 讲故事 最近接连遇到了几起 2G 虚拟地址紧张 导致的程序崩溃,基本上 90% 都集中在医疗行业,真的很无语,他们用的都是一些上古的 XP,Windows7 x86,我也知道技术人很难 ...
- Excel表格数据可视化的六大常见方式,看看你都会吗?
当涉及到Excel表格数据的可视化,有许多不同的方式可以展示和呈现数据.以下是六种常见的Excel表格数据可视化方式的详细介绍. 1. 条形图(Bar Chart) 条形图是一种常见的数据可视化图表类 ...
- jmeter工具中vars与props命令的区别和使用
话不多说直接干活!!!!! vars 和 props命令存在于"jsr223 预处理器"."BeanShell 预处理程序"."JSR223 后置处理 ...