华为14天鸿蒙设备开发实战笔记一

      最后更新:2022-07-14 10:39:48 手机定位技术交流文章

      目录

      物体网络的典型层次结构

      二.物体的共同互联网通讯协议

      1.常见通信协议1

      2.常见通信协议2

      3.常见通信协议3

      三.物体互联网设备访问方法

      1.有线通信技术

      2.短程无线通信技术

      3.蜂窝移动网络

      4.LPWA通讯技术

      四.香港设备的开发-环境建设

      1.环境搭建1

      2.环境搭建2

      五.本港设备开发-内核发展

      1.内核开发1

      2.内核开发2

      6. 鸿蒙设备的开发-驱动子系统的发展

      1.驱动子系统开发1

      2.驱动子系统开发2

      七.香港设备开发-网络通讯发展

      八.华为云IoT平台介绍

      物体网络的典型层次结构

      行业应用

      数据呈现及客户交互

      多协议多网络设备数据连接的分析和处理

      输入和传输网络

      本地数据自治,低时延

      信息收集和信号处理

      二.物体的共同互联网通讯协议

      1.常见通信协议1

      CoAP是受限制的应用协议(Constrained Application Protocol)的代名词,它在UDP协议上运行,而不是像HTTP那样在TCP上运行。环境规划署的协议很小,最小的数据包只有4字节。

      MQTT (Message Queuing Telemetry Transport,消息队列遥测传输协议)。它建立在TCP/IP协议上,用于较差的硬件性能和较差的网络条件的远程设备的发布/订阅型“轻量”通信协议,使用发布/订阅消息模式,它提供了多个消息分配和应用程序之间的分离.

      2.常见通信协议2

      ModBus网络是一种工业通信系统,由一个具有智能终端的可编程控制器和通过公共线或局部专用线连接的计算机组成,其系统结构包括硬件和软件,可用于各种数据收集和过程监控。

      ModBus通信协议分为物理层、数据链层和应用层。

      3.常见通信协议3

      OPC-UA(OPC Unified Architecture)协议由于其具有跨平台(无限制于架构平台)、面向服务的架构和信息和通信安全等强大的功能,广泛用于工业设备之间的通信。

      连通机制:

      只有在PLC之间,协议不能通过网络。

      交互机制:

      Client/Server和Publisher/Subscriber模式,以前的申请必须有单独的点点连接,后者可避免直接连接实现点到多个点传输,不需要任何额外的硬件来读写PLC地址,可以实现不同制造商设备之间的数据调用,这个阶段的客户端/服务器模式比较常见。

      话务机制:

      定期订阅可以直接配置和非定期读写。定期订阅可以配置用于发布周期、维护间隔、订阅监测号码、采用速度、寿命周期和读写加班配置。

      三.物体互联网设备访问方法

      1.有线通信技术

      通信方式

      特点

      适用场景

      ETH

      全面、一般、低成本协议

      智能终端、视频监控

      RS-232

      单一通信,低成本,更接近的传输距离

      少量仪表、工业控制

      RS-485

      巴士模式,低成本,强的抗干扰

      工业仪表、抄表

      USB

      单人通信,通用,快速

      智能家居、办公室、移动设备

      M-Bus

      用于复制表的设计,使用普通双挂线,强的抗干扰

      工业能源消耗数据收集

      PLC

      供电装载,广泛覆盖,安装方便

      电网传输、电表

      2.短程无线通信技术

      Bluetooth

      Wi-Fi

      ZigBee

      Z-Wave

      频段

      2.4GHz

      2.4GHz

      5GHz

      868MHz/915MHz,

      2.4GHz

      868.42MHz(欧洲)

      908.42MHz(USA)

      传输速率

      1 Mbps- 3Mbps

      (24Mbps over 802.11

      Link)

      11b: 11Mbps

      11g: 54Mbps

      11n: 600Mbps

      11ac: 1Gbps

      11ax: 9.6Gbps

      868MHz:20kbps

      915MHz:40kbps

      2.4GHz:250kbps

      9.6kbps或40kbps

      典型距离

      1-300m

      50-100m

      2.4GHz band:10-100m

      30米(室内)~100米(室外)

      典型应用

      智能家或鼠标,无线

      邻居包括耳机 、 手机 、 电脑等.

      近节点数据交换

      无线宽带,家用,室内高速上网

      家居自动化,建筑自动化

      远程控制

      智能家庭、监控和控制

      3.蜂窝移动网络

      2G

      3G

      4G

      5G

      频段

      授权频段

      (以900M为主)

      授权频段

      (900.1800M)

      授权频段

      (1800M-2600M)

      授权频段:

      C-band

      毫米波

      传输速率

      GSM:9.6Kbps

      GPRS:56-114Kbps

      TD-SCDMA:2.8Mbps

      CDMA2000:3.1Mbps

      WCDMA:14.4Mbps

      下行

      Cat.6、7:300Mbps

      Cat.9、10:450Mbps

      10Gbps

      (Barron500芯片支持)

      下坡速度为4.6Gbps;

      提升速度-2.5Gbps)

      典型应用

      POS,智能可穿的设备

      自动自动售货机,智能家庭

      移动终端、视频监控

      AR、VR、辅助驾驶、自主驾驶

      4.LPWA通讯技术

      SigFox

      LoRa

      NB-IoT

      eMTC

      频段

      SubG免授权频段

      SubG免授权频段

      主要为G级许可频率

      SubG授权频段

      传输速率

      100bps

      0.3-5kbps

      <250kbps

      <1Mbps

      典型距离

      1-50km

      1-20km

      1-20km

      2km

      典型应用

      智能家庭 、 智能计量器 、 移动医疗 、 远程监控

      智慧农业、智能建筑

      水台,停车场,烟警

      共享单车、POS

      四.香港设备的开发-环境建设

      1.环境搭建1

      Linux编译服务器:Ubuntu 16.04以上64位系统版本,壳牌使用bash

      Windows工作站:Windows XP/Windows 7/Windows 10

      Windows开发工具要求:

      开发工具

      用途

      Visual Studio Code

      代码编辑工具

      Hiburn

      代码烧录工具

      MobaXterm或其他超级终端

      远程连接Linux编译器

      CH341SER.EXE

      USB转串口驱动

      Linux 构造工具要求:

      开发工具

      用途

      Python3.7+

      编译构建工具

      SCons3.0.4+

      编译构建工具

      bash

      命令处理器

      gn

      生成忍者编译器脚本

      ninja

      执行忍者编译器脚本

      交叉编译器

      交叉编译工具

      2.环境搭建2

      (一)从镜像网站下载压缩文件

      ​ ​https://repo.huaweicloud.com/harmonyos/os/1.0/code-1.0.tar.gz​ ​

      (二)HPM网站组件表格

      HPM网站: https://hpm.Harmonyos."com/#/cn/home

      软环境要求:Linus服务器安装12.13.0+的Node.js

      (三)使用“包管理员”命令行

      hpm init -t default

      hpm install @bearpi/bearpi_hm_nano

      (四)从代码仓库获得

      您必须首先登记您的Gitee帐户并配置您的邮箱

      源码链接:​ ​https://gitee.com/bearpi/bearpi-hm_nano​ ​

      五.本港设备开发-内核发展

      1.内核开发1

      任务管理

      软件定时器

      信号量

      从系统的角度来看,任务是竞争系统

      资源的最小运行单位。

      2.职业调度机制+时间表转动调度

      有32个优先次序(0-31)。

      3.任务状态:初始,运行,封锁

      国家, 出口国, 和国家移民.

      4.任务管理:创建任务或删除任务

      任务被暂停, 任务被恢复.

      1.系统基于 Kick 时钟被软件中断

      模拟的定时器。

      2.计时精度和系统计时钟具有周期性

      关。

      3.使用系统一个队列&任务资源,触

      遵循队列规则,先前进。

      4.软件计时管理:创建/启动/停止/

      删除定时器。

      在一个多任务系统中,每个任务必须是

      同步或相互排斥实现关键资源保护,

      这可以通过信号数量来实现。

      2.当用作反向信号时,信号数量产生完整的跟踪数目;

      3.当用于同步时,创建后信号数量是空白的;

      4.信号体积操作:初始化/创建/应用/发布

      放/删除。

      2.内核开发2

      事件管理

      互斥锁

      消息队列

      1.事件是种实现任务间通信的       机制,可用于实现任务间的同        步,但事件通信只能是事件类型的通信,无数据传输。

      2.多任务环境下,任务之间往          往 需要同步操作。事件可以          提供一对多、多对多的同步          操作。

      3.读事件/写事件/清除事件,         写事件会触发任务调度。

      4.功能函数:创建事件标记对            象、设置事件标记、等待事          件标记触发、删除事件标记          对象。

      一种相互厌恶锁,又称相互厌恶信号数量,是一种

      实现一种特殊的二进制信号量

      共享资源的专属处理。

      2.在任何时候,只有两个相互排斥锁定状态:

      开锁或闭锁。

      3.当任务被执行时,相互锁定

      该任务获得相互排斥锁的状态

      有权。

      4.任务释放时,互锁被解除,任务失去互锁的所有权。

      5.确保只有一个任务同时被访问

      要求非共享公共资源及确保公共资金

      源操作的完整性。

      6.功能功能:创建/获取/发布/删除兼容

      斥锁。

      1.消息队列是常用的任务间通信。

      信的资料结构实现办公室的接收

      未固定的服务长度或中断消息。

      2.用户处理业务时提供消息队列

      介绍了异步处理机制,以作为消息缓冲器

      用。

      3.先进的前端,支持异步读写;读写团队

      列都支持超时机制。

      4.功能功能:创建消息队列,发送和删除

      单词, 获取消息, 删除消息队列.

      6. 鸿蒙设备的开发-驱动子系统的发展

      1.驱动子系统开发1

      (一)GPIO操作

      相应的GPIO端子是GPIO2, LED灯通过控制GPIO2等效器信号的输出点亮。 高功率通常点亮LED灯,低功率通常消灭LED灯。

      (2).GPIO中断

      F1和F2按键对应的GPIO引脚是分别是GPIO11和GPIO12,通过检测GPIO的电平信号来判断按键的状态。实现按键控制LED灯亮灭。

      (3).PWM输出

      通过实现不同占用率的PWM输出代码来改变ED的亮度。

      2.驱动子系统开发2

      (1).ADC采样

      根据输入参数读取指定的ADC通道的样品,编码电压值读取ADC通道5。

      (2).I2C总线

      NFC芯片I2C的相应GPIO参数分别是GPIO0和GPIO1,因此需要使用GPIO_0和GPIO_1编写软件生成I2C信号来控制 NFC芯片。

      (3).UART

      UART1的相应的GPIO参数分别是GPIO5和GPIO6,它们使用GPIO5和GPIO6来接收UART数据。

      七.香港设备开发-网络通讯发展

      1.UDP客户端

      编码实现UDP客户端创建过程,并使用Sockettool创建UDP服务端子进行测试。

      2.TCP服务端

      编码器实现一个TCP服务端,并使用Sockettool创建一个TCP客户端进行测试。

      3.TCP客户端

      TCP客户端的编码实现。

      4.UDP服务端

      编码UDP服务终止。

      5.MQTT客户端

      基于Paho MQTT, 编码实现MQTT客户端.

      八.华为云IoT平台介绍

      华为云物联网平台,即华为设备接入服务(IoT Device Access),提供连接高容量设备到云、设备和云侧双向消息通信、批量设备管理、远程控制和监控、OTA升级、设备连接规则等功能。它还可以灵活地将设备数据转移到其他Huawei云服务中,帮助互联网产品行业用户快速完成设备网络和行业应用集成.

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/29572.html

          热门文章

          文章分类