Synchronous Serial Port 协议详解
1、简介
Synchronous Serial Port (SSP) ,基于下图文档的设计标准
1.1、包含3种数据帧格式:
- a Motorola SPI-compatible interface(以下简称SPI)
- a Texas Instruments synchronous serial interface(简写SSI,以下简称SSP格式)
- a National Semiconductor Microwire interface(以下简称Microwire)
1.2、共同点:
- 都用4根线,CS、TXD、RXD、CLK
- 都有master和slave模式
1.3、差异点:
- SSP的CS由一个时钟周期的高电平脉冲表示开始,SPI和Microwire的CS是拉低有效,SSP的章节会详细展开
- SPI比SSP和Microwire更为灵活,相位、极性可配,SPI的章节会详细展开
- Microwire需要配置方向,告知发送还是接收;SSP和SPI,写数据寄存器就是发送,读数据寄存器就是接收;SPI的章节会详细展开
2、SPI(Motorola SPI-compatible interface)
- SPI是一种同步的全双工通信协议,TXD和RXD可以同时工作。
- 时钟由主机产生。
- 支持一个master对多个slave,CS拉低控制哪个slave被选中。
- 支持各种bit宽度的帧格式,一帧一般小于等于32bit。
- 有多种工作模式,只发、只收、同时收发等。
- 时钟极性和相位可配置,极性决定空闲时CLK的电平高低,相位决定第几个时钟沿采样数据
2.1、连接线
- CS:片选线,也叫SS,拉低后开始传输,拉高后结束传输,支持发多帧数据时CS一直拉低,支持每帧以CS拉低开始CS拉高结束
- CLK:时钟由master提供,支持的频率很宽泛
- TXD:发送脚,又名MOSI,master输出脚接slave输入脚。TXD接对测设备RXD。
- RXD:接收脚,又名叫MISO,master输入脚接slave输出脚。RXD接对测设备TXD。
对接方式如下图:
2.2、传输模式
(1)、只发不收
-
只用到TXD,CS和CLK这3根线,顾名思义,只发送数据,不接收数据
-
控制LCD屏幕,会用到只发不收模式,LCD屏只接收控制命令数据。
-
例如下图,发送1帧数据,0x15BF的数据宽度为13bit
-
注意:数据一般是先发送高位,有些控制器大小端可配
(2)、同时收发
- 4根线都会用到,发送数据的同时也在接收数据
- 控制FLASH、EEPROM,会用到此模式。FLASH接收到命令后延时一段时间,才会返回真实的数据,所以master需要发几帧无效的数据,等待slave返回真实值。
- 例如下图,读FLASH设备ID,发送1帧命令+4帧dummy,接收5帧数据,数据宽度为8bit
- 发送数据为:0xAB、0xFF、0xFF、0xFF、0xFF(命令:0xAB)
- 接收的数据为:0xFF、0xFF、0xFF、0xFF、0x17(FLASH ID:0x17)
(3)、只收不发
- 只用到RXD,CS和CLK这3根线,只接收数据,不发送数据
- 比如作为slave模式时,只接收master发来的数据
- 波形和只发不收模式类似,master的TXD接到slave的RXD
2.3、CS的多种实现方式
(1)、用GPIO模式CS脚
- 有些SPI控制器规定,在TXFIFO发空后,CS会被拉高,CLK时钟也会停止。对于FLASH这种器件,需要先发送命令,再接收数据的需求就不能满足,不可能TXD一直在发送dummy byte,尤其是读大量数据时。那么CS就可以复用成GPIO功能,或用另外一个GPIO代替。
- 需要CS拉低时,GPIO输出低
- 需要CS拉高时,GPIO输出高
- 这需要熟读FLASH手册,且软件操作相对复杂
- 例如ST的示例代码,就是用GPIO模拟CS,可以得到同时收发模式的波形:
u32 SPI_FLASH_ReadDeviceID(void)
{u32 Temp = 0;/* GPIO 输出低,Select the FLASH: Chip Select low */SPI_FLASH_CS_LOW();/* Send "RDID " instruction */SPI_FLASH_SendByte(W25X_DeviceID);SPI_FLASH_SendByte(Dummy_Byte);SPI_FLASH_SendByte(Dummy_Byte);SPI_FLASH_SendByte(Dummy_Byte);/* Read a byte from the FLASH */Temp = SPI_FLASH_SendByte(Dummy_Byte);/* GPIO 输出高,Deselect the FLASH: Chip Select high */SPI_FLASH_CS_HIGH();return Temp;
}
(2)、SPI自带的CS功能
- 缺点TXFIFO发空后CS就拉高了
- 连续发送多个数据之后(在TXFIFO阈值内),再查询TXFIFO满状态,保证一直有数据可发
- 通常这种方式只适用于同时收发模式,发送的同时也把数据收了。
- 不一定能保持一直拉低的效果,需要抓波形确认。
- 下图是CS每帧都拉高的情况:
- 或者使用DMA,事先把所有数据都准备好,一次性发完,就可以保证CS一直拉低。
2.4、SPI的相位和极性
- CPOL,clock polarity,极性,决定空闲时CLK电平高低
- CPHA,clock phase,相位,决定第几个时钟沿采样数据,有2种相位情况
(1)、第1个时钟沿采样,第2个时钟沿数据正在改变
(2)、第1个时钟沿数据正在改变,第2个时钟沿采样 - 至于第1个时钟沿是上升沿还是下降沿,由时钟极性决定
- 采样数据时,数据线上的电平值是稳定的,高电平表示1,低电平表示0
- 发送数据时,数据正在发生改变,由0变1,或1变0
(1)、CLK空闲时为高电平,第1个时钟沿采样数据
- 下图的CS空闲时为高电平
- 第1个时钟沿(上升沿)采样数据,第2个时钟沿(下降沿)数据正在改变
- 后续数据都是按上升沿采样,下降沿数据改变
(2)、CLK空闲时为低电平,第1个时钟沿采样数据
- 第1个沿为上升沿,第2个沿为下降沿
(3)、CLK空闲时为高电平,第2个时钟沿采样数据
和(1)类似,只是变成了第2个时钟沿采样数据
(4)、CLK空闲时为低电平,第2个时钟沿采样数据
和(2)类似,只是变成了第2个时钟沿采样数据
3、SSP(Texas Instruments synchronous serial interface)
- 特性和SPI类似
- 相位和极性是固定的不可选
- 最显著的差异点是,SSP的片选信号为脉冲信号,高有效。一个时钟周期的高电平表示传输开始,接下来CS会拉低,接着发送数据。
- 下图可以直观的了解SSP的传输原理
-
实在有点特殊,逻辑分析仪没有解析的方法,不过也不复杂
-
CS先发一个周期高电平,发送完一帧数据,CS再发一个周期高电平,再发下一帧数据
-
下图表示帧结束的波形,CS保持低电平状态:
4、Microwire(National Semiconductor Microwire interface)
- 相对于SSI和SSP来说,Microwire只是半双工协议,不能同时收发
- 波形和SPI类似
- TXD发送期间,RXD无效
- RXD接收期间,TXD无效
- 从功能上来说和用SPI控制FLASH一样,需要先发命令,再发数据或接收数据
- 发完命令再接收数据,会有一个dummy bit的等待时间才采样RXD数据
- 和SPI的同时收发模式对比,Microwire先发送控制命令0xAB,再接收4个字节,也能读到FLASH ID
- Microwire因为会延后1个dummy bit才采样RXD数据的原因,数据做如下说明:
波形上显示读到的数据为: 0xFF、0xFF、0xFF、0x17
实际FIFO读到的数据为: 0xFF、0xFF、0xFE、0x2E
FIFO的数据需要往右移动1位才是FLASH ID值:0x2E >> 1 = 0x17
- 支持Microwire协议的设备,接收到命令后,默认延后1个dummy bit才返回数据。但FLASH一般不会,用Microwire控制flash,需要对FIFO数据做移位操作。
5、slave模式说明
-
上述章节描述的都是master模式下的功能,slave模式和master类似,但也有需要注意的地方
-
slave支持只收、同时收发等模式
-
因为CLK由master提供,需要2端配合传输。slave接收到数据之后,才会往外发送数据,所以会有1~2个dummy byte的延迟,master才会收到数据。具体延迟多少,可以抓波形确认。
-
例如SSP帧格式,2个控制器master、slave都配置为同时收发模式,下图为2端交互的波形
-
上图可以看到,master在发完0xFF之后,slave才开始发送第1个数据0x00,是为了完成同步,所以多发了一个0xFF,那么为了最后不丢数据,也要多接收一个字节
-
例如收发256个字节:
master向slave发送0x00 ~ 0xFF,依次加1
slave向master发送0xFF ~ 0x00,依次减1
- 假如不做同步,只收发256个字节,master接收slave发来的数据时,会出现前2个字节都为0,最后还有2个字节没收完的情况:
相关文章:
Synchronous Serial Port 协议详解
1、简介 Synchronous Serial Port (SSP) ,基于下图文档的设计标准 1.1、包含3种数据帧格式: a Motorola SPI-compatible interface(以下简称SPI)a Texas Instruments synchronous serial interface(简写SSIÿ…...
BSM和BMS什么区别?
BSM BSM(Battery System Manager)是指用于管理和控制电动车辆的电池系统的设备,其功能包括监测电池状态、控制充放电过程、保护电池安全等。 BMS BMS(Battery Management System)是指用于监测、控制和保护电池组的设…...
基于海思soc的智能产品开发(巧用mcu芯片)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 对于开发车规级嵌入式软件的同学来说,socmcu这样的组合,他们并不陌生。但是传统的工业领域,比如发动机、医疗或…...
R语言混合模型回归GBTM群组轨迹模型绘图可视化研究
全文链接:https://tecdat.cn/?p38581 在回归分析的广袤领域中,面对具有多条未知函数线的复杂数据时,传统方法常常捉襟见肘。混合模型作为一种强有力的分析手段应运而生,其在处理此类复杂情境时展现出独特的优势与潜力(…...
Flink2.0未来趋势中需要注意的一些问题
手机打字,篇幅不长,主要讲一下FFA中关于Flink2.0的未来趋势,直接看重点。 Flink Forward Asia 2024主会场有一场关于Flink2.0的演讲,很精彩,官方也发布了一些关于Flink2.0的展望和要解决的问题。 1.0时代和2.0时代避免…...
android recycleview 中倒计时数据错乱
原因 recyceleview 当页面划出屏幕外后,默认会有两条进入缓存区,这些item的结构会被保存,数据被清除,方便其他新进入屏幕的数据复用item,超过两条外的item会进入缓存池被完全销毁重用。 如果我们的页面上有editText 或…...
康冠科技嵌入式面试题及参考答案
LCD 驱动你自己做了哪些内容? 在 LCD 驱动开发中,首先是硬件层面的理解。需要仔细研究 LCD 的数据手册,明确其引脚定义,包括电源引脚、数据引脚、控制引脚等。比如,对于常见的 RGB 接口 LCD,要清楚哪几个引脚是用于传输红、绿、蓝三种颜色的数据,以及像 VSYNC(垂直同步…...
FreeRTOS的任务调度
1.启动任务调度器 vTaskStartScheduler void vTaskStartScheduler( void ) { BaseType_t xReturn;/* Add the idle task at the lowest priority. */#if ( INCLUDE_xTaskGetIdleTaskHandle 1 ){/* Create the idle task, storing its handle in xIdleTaskHandle so it canbe …...
scala中模式匹配的应用
package test34object test6 {case class Person(name:String)case class Student(name:String, className:String)// match case 能根据 类名和属性的信息,匹配到对应的类// 注意:// 1 匹配的时候,case class的属性个数要对上// 2 属性名不需…...
基于Springboot人口老龄化社区服务与管理平台【附源码】
基于Springboot人口老龄化社区服务与管理平台 效果如下: 系统登陆页面 系统主页面 社区信息页面 社区文件页面 活动报名页面 走访任务管理页面 社区资讯页面 老人信息管理页面 研究背景 随着社会老龄化的加剧,老年人口比例逐渐增加,对老年…...
前端生成docx文档、excel表格、图片、pdf文件
一、前端将页面某区域内容下载为word文档:html-to-docx、file-saver插件组合使用 import HTMLtoDOCX from html-to-docx; import { saveAs } from file-saver;const exportTest async () > {const fileBuffer await HTMLtoDOCX(<h2>文件标题</h2>&…...
Ubantu22系统安装Miniconda3
1、Anaconda和Miniconda异同 清华源镜像的Miniconda3和Anaconda都是用于管理Python环境和软件包的工具,但它们之间存在一些关键的不同之处。下面将分别介绍它们的特点以及使用清华源镜像的差异。 相同点: (1)功能相似:…...
详细解读TISAX认证的意义
详细解读TISAX认证的意义,犹如揭开信息安全领域的一颗璀璨明珠,它不仅代表了企业在信息安全管理方面的卓越成就,更是通往全球汽车供应链信任桥梁的关键一环。TISAX,即“Trusted Information Security Assessment Exchange”&#…...
kubeadm_k8s_v1.31高可用部署教程
kubeadm_k8s_v1.31高可用部署教程 实验环境部署拓扑图**部署署架构****Load Balance****Control plane node****Worker node****资源分配(8台虚拟机)**集群列表 前置准备关闭swap开启ipv4转发更多设置 1、Verify the MAC address and product_uuid are u…...
MyBatis写法汇总
Mybatis写法汇总 1. 批量操作 1.1 批量插入 <insert id"batchInsert" parameterType"java.util.List">INSERT INTO user (username, password, create_time) VALUES<foreach collection"list" item"item" separator"…...
【C++】优先级队列以及仿函数
本篇我们来介绍一下优先级队列 priority_queue 。优先级队列的底层是数据结构中的堆,在C中它是一个容器适配器,这个容器适配器比之前的栈和队列更复杂。 1.priority_queue的介绍 1.1 优先级队列的底层 因为优先级队列就是堆,堆的底层是数组…...
【VUE】13、安装nrm管理多个npm源
nrm(npm registry manager)是一个 npm 源管理器,它允许用户快速地在不同的 npm 源之间进行切换,以提高包管理的速度和效率。以下是对 nrm 使用的详细介绍: 1、安装nrm 在使用 nrm 之前,需要先确保已经安装…...
selenium工作原理
原文链接:https://blog.csdn.net/weixin_67603503/article/details/143226557 启动浏览器和绑定端口 当你创建一个 WebDriver 实例(如 webdriver.Chrome())时,Selenium 会启动一个新的浏览器实例,并为其分配一个特定的…...
Reactor 响应式编程(第三篇:R2DBC)
系列文章目录 Reactor 响应式编程(第一篇:Reactor核心) Reactor 响应式编程(第二篇:Spring Webflux) Reactor 响应式编程(第三篇:R2DBC) Reactor 响应式编程(…...
从零开始掌握 React 前端框架:入门指南与实战案例
🚀 从零开始掌握 React 前端框架:入门指南与实战案例 📖 前言 React 是由 Facebook 推出的前端框架,用于构建高效、可复用的用户界面(UI)。本文将手把手教你如何从零开始掌握 React,内容覆盖 …...
【日常笔记】Spring boot:编写 Content type = ‘text/plain‘ 接口
一、项目场景: 接口:Context-Type:text/plain 方式:POST 项目场景:硬件回调接口 二、实战 PostMapping(value "/xx/xxx", consumes "text/plain" ) 2.1、接口 /*** return String* time 202…...
探索 Seaborn Palette 的奥秘:为数据可视化增色添彩
一、引言 在数据科学的世界里,视觉传达是不可或缺的一环。一个好的数据可视化不仅能传递信息,还能引发共鸣。Seaborn 是 Python 中一款广受欢迎的可视化库,而它的调色板(palette)功能,则为我们提供了调配绚…...
多智能体/多机器人网络中的图论法
一、引言 1、网络科学至今受到广泛关注的原因: (1)大量的学科(尤其生物及材料科学)需要对元素间相互作用在多层级系统中所扮演的角色有更深层次的理解; (2)科技的发展促进了综合网…...
【中标麒麟服务器操作系统实例分享】java应用DNS解析异常分析及处理
了解更多银河麒麟操作系统全新产品,请点击访问 麒麟软件产品专区:https://product.kylinos.cn 开发者专区:https://developer.kylinos.cn 文档中心:https://documentkylinos.cn 情况描述 中标麒麟服务器操作系统V7运行在 ARM虚…...
设计模式12:状态模式
系列总链接:《大话设计模式》学习记录_net 大话设计-CSDN博客 参考:设计模式之状态模式 (C 实现)_设计模式的状态模式实现-CSDN博客 1.概述 状态模式允许一个对象在其内部状态改变时改变其行为。对象看起来像是改变了其类。使用状态模式可以将状态的相…...
AI @国际象棋世界冠军赛: 从棋盘到科研创新之路
点击屏末 | 阅读原文 | 在小红书和 Google 谷歌回顾 WCC...
LeetCode刷题day29——动态规划(完全背包)
LeetCode刷题day29——动态规划(完全背包) 377. 组合总和 Ⅳ分析: 57. 爬楼梯(第八期模拟笔试)题目描述输入描述输出描述输入示例输出示例提示信息 分析: 322. 零钱兑换分析: 279. 完全平方数分…...
C++对象数组对象指针对象指针数组
一、对象数组 对象数组中的每一个元素都是同类的对象; 例1 对象数组成员的初始化 #include<iostream> using namespace std;class Student { public:Student( ){ };Student(int n,string nam,char s):num(n),name(nam),sex(s){};void display(){cout<&l…...
主曲率为常数时曲面分类
主曲率为常数 ⇔ K , H \Leftrightarrow K,H ⇔K,H 为常数,曲面分类: 1.若 k 1 k 2 0 k_1k_20 k1k20,则 S S S为全脐点曲面——平面的一部分; 2.若 k 1 k 2 ≠ 0 k_1k_2\neq0 k1k20,则 S S S为全脐点曲面——球面的一部分&…...
单片机:实现HC-SR04超声波测距(附带源码)
使用单片机实现 HC-SR04 超声波测距模块 的功能,通常用于测量物体与超声波传感器之间的距离。HC-SR04 模块通过发射超声波信号并测量其返回时间来计算距离。单片机(如 STM32、51 系列、Arduino 等)可用来控制该模块的工作,并处理返…...
分布式全文检索引擎ElasticSearch-数据的写入存储底层原理
一、数据写入的核心流程 当向 ES 索引写入数据时,整体流程如下: 1、客户端发送写入请求 客户端向 ES 集群的任意节点(称为协调节点,Coordinating Node)发送一个写入请求,比如 index(插入或更…...
mfc140u.dll是什么文件?如何解决mfc140u.dll丢失的相关问题
遇到“mfc140u.dll文件丢失”的错误通常影响应用程序的运行,这个问题主要出现在使用Microsoft Visual C环境开发的软件中。mfc140u.dll是一个重要的系统文件,如果它丢失或损坏,会导致相关程序无法启动。本文将简要介绍几种快速有效的方法来恢…...
ChatGPT生成接口测试用例(一)
用ChatGPT做软件测试 接口测试在软件开发生命周期中扮演着至关重要的角色,有助于验证不同模块之间的交互是否正确。若协议消息被恶意修改,系统是否能够恰当处理,以确保系统的功能正常运行,不会出现宕机或者安全问题。 5.1 ChatGP…...
Jenkins 中 写 shell 命令执行失败,检测失败问题
由于项目的 依赖复杂,随着版本的增多,人工操作,手误几率太大,我们选取kenins 来自动化发布、更新。 这里主要解决,发布 的 每个阶段,确保每个阶段执行成功。 比如: js 运行,…...
Dot Foods EDI 需求分析及对接流程
Dot Foods 是一家美国领先的食品和非食品产品的中间批发分销商,主要为食品服务、零售和分销行业的客户提供服务,是北美大型食品中间分销商之一。Dot Foods (以下简称 Dot)的业务模式是通过整合多个供应商的产品,为客户…...
数据特性库 前言
文章目录 一、num-traits库简介二、核心功能三、更新功能四、使用方式五、应用示例六、结论 一、num-traits库简介 num-traits是Rust编程语言中的一个开源库,专注于为数值类型提供一系列的数学运算特性和接口。它支持泛型数学计算,允许开发者在不指定具…...
项目授权无法正常操作的解决方法
概述 在非saas环境的项目中,授权页面的接口不需要token,但是在某些时候会导致页面无法正常操作,暂时用该文档中的解决方法来处理,后续会修复该问题。 现象描述 登录时报未授权跳转至该页面,有时该页面会弹出登录超时对…...
python学opencv|读取图像(十七)认识alpha通道
【1】引言 前序学习进程中,我们已经掌握了RGB和HSV图像的通道拆分和合并,获得了很多意想不到的效果,相关链接包括且不限于: python学opencv|读取图像(十二)BGR图像转HSV图像-CSDN博客 python学opencv|读…...
WSL2安装到自定义盘教程(非先安装后打包)
step1:环境配置 按照官方教程从头到尾配置一遍,直到从微软商店下载好Ubuntu20.04为止 step2:拷贝下载内容 使用微软商店下载的应用安装包会默认保存在C:\Program Files\WindowsApps目录下 在该目录下找到以CanonicalGroupLimited开头的文…...
环境变量的知识
目录 1. 环境变量的概念 2. 命令行参数 2.1 2.2 创建 code.c 文件 2.3 对比 ./code 执行和直接 code 执行 2.4 怎么可以不带 ./ 2.4.1 把我们的二进制文件拷贝到 usr/bin 路径下,也不用带 ./ 了 2.4.2 把我们自己的路径添加到环境变量里 3. 认识PATH 3.…...
【python】OpenCV—Image Moments
文章目录 1、功能描述2、图像矩3、代码实现4、效果展示5、完整代码6、涉及到的库函数cv2.moments 7、参考 1、功能描述 计算图像的矩,以质心为例 2、图像矩 什么叫图像的矩,在数字图像处理中有什么作用? - 谢博琛的回答 - 知乎 https://ww…...
优化 HTTP 接口请求:缓存策略与实现方法
前言 在前端开发中,HTTP 请求的处理是至关重要的一环。Axios 作为一个流行的 HTTP 客户端,其简洁性和灵活性使得它广受开发者青睐。然而,为了优化应用性能和提升用户体验,合理地缓存请求结果显得尤为重要。本文将深入探讨如何在 …...
图形 3.3 曲面细分与几何着色器_大规模草渲染
细分后的顶点曲面细分与几何着色器 大规模草渲染 B站视频:图形 3.3 曲面细分与几何着色器 大规模草渲染 文章目录 细分后的顶点曲面细分与几何着色器 大规模草渲染着色器执行顺序曲面细分着色器概述曲线和曲面相关概念输入与输出总体流程Hull Shader常量外壳着色器…...
shell8
until循环(条件为假的时候一直循环和while相反) i0 until [ ! $i -lt 10 ] doecho $i((i)) done分析 初始化变量: i0:将变量i初始化为0。 条件判断 (until 循环): until [ ! $i -lt 10 ]:这里的逻辑有些复杂。它使用了until循环…...
嵌入式驱动RK3566 HDMI eDP MIPI 背光 屏幕选型与调试提升篇-eDP屏
eDP是嵌入式显示端口,具有高数据传输速率,高带宽,高分辨率、高刷新率、低电压、简化接口数量等特点。现大多数笔记本电脑都是用的这种接口。整个eDP是很复杂的,这里我们不讲底层原理,我们先掌握如何用泰山派来驱动各种…...
2024年华为OD机试真题-字符串分割-C++-OD统一考试(E卷)
最新华为OD机试考点合集:华为OD机试2024年真题题库(E卷+D卷+C卷)_华为od机试题库-CSDN博客 每一题都含有详细的解题思路和代码注释,精编c++、JAVA、Python三种语言解法。帮助每一位考生轻松、高效刷题。订阅后永久可看,发现新题及时跟新。 题目描述: 给定非空字符串…...
图书馆管理系统(三)基于jquery、ajax
任务3.4 借书还书页面 任务描述 这部分主要是制作借书还书的界面,这里我分别制作了两个网页分别用来借书和还书。此页面,也是通过获取books.txt内容然后添加到表格中,但是借还的操作没有添加到后端中去,只是一个简单的前端操作。…...
【练习Day20】字符串变形
链接:字符串变形_牛客题霸_牛客网 方法一:双逆转(推荐使用) 思路: 将单词位置的反转,那肯定前后都是逆序,不如我们先将整个字符串反转,这样是不是单词的位置也就随之反转了。但是单…...
鸿蒙项目云捐助第二十讲云捐助项目物联网IOT的使用
鸿蒙项目云捐助第二十讲云捐助项目物联网IOT的使用 在鸿蒙技术完成云捐助项目中,物联网技术也是具有一定生命力的存在。这里也会在云捐助项目中使用物联网的技术。 一、华为云IoT物联网操作 这里以华为云的Iot物联网操作来介绍华为云I ot物联网技术。 这里从百度…...
Linux设置篇
查看主机名 hostname 修改主机名 hostnamectl set-hostname 主机名 配置ip映射 vi /etc/hosts 192.168.1.10 pure 限制SSH登录的IP a) 设置禁止所有ip连接服务器的SSH vi /etc/hosts.deny sshd:all:deny b) 设置允许指定ip连接服务器的SSH(这边建议设置一个备…...