自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 物联网操作系统

列出几个身边的物联网应用?挑选一个物联网应用了解其采用的解决方案。(包括使用的终端设备,板载的操作系统,连接的云平台以及使用的通信协议)空气净化器,小爱同学,台灯等,均可组网,利用手机app或者小爱同学进行控制。 最近小区上线的中国移动和易充智能充电系统,针对小区电动自行车充电。集智能充电终端、移动物联专网、充电运营管理云平台、用户端app (iOS/安卓/微信端)。可广泛适用于共享充电、智慧社区、智慧城市、工厂园区等场景和领域,为广大电动车主提供更安全、更智能、更便捷的充电服务。思考物联...

2020-06-01 15:25:28 1071

原创 窄带物联网NB-IOT

除了上述应用,你还能想到NB-IoT能解决现在哪些应用的瓶颈?1、智能资产管理用于智慧工厂的固定资产定位盘点 ,NB-IoT技术低功耗和深度覆盖属性正好弥补了传统通信技术的诸多不足,这对于定位资产追踪无论是在室内隐秘地段还是室外的区域的物件都可以产生连接。2、智能租借设备,除了共享单车的应用外其他共享设备也可以被此项技术所激活更宽阔的共享经济领域的发展。3、智能路灯管理采用NB-IoT无线网络,实现远程分布式远程控制;路灯故障检测功能,主动上报故障路灯位置; 通信容量大,不会担心路灯过多过于密集导致.

2020-06-01 11:00:02 714

原创 Web可视化搭建和app可视化搭建

Web可视化搭建1. Web可视化搭建与传统的Web开发相比具有哪些优势Web 数据可视化是使用可视化大屏的方式来分析并展示庞杂数据的产品。Web旨让更多的人看到数据可视化的魅力,帮助非专业的工程师通过图形化的界面轻松搭建专业水准的可视化应用,满足您会议展览、业务监控、风险预警、地理信息分析等多种业务的展示需求。相比于传统图表与数据仪表盘,如今的数据可视化致力于用更生动、友好的形式,即时呈现隐藏在瞬息万变且庞杂数据背后的业务洞察。无论在零售、物流、电力、水利、环保、还是交通领域,通过交互式实时数据可视

2020-05-30 15:46:29 1301

原创 阿里云配置

而有的WiFi模块没有集成link kit SDK,需要手动生产sdk码接入eg:(签名算法验证,得到哈希值){ “ProductKey”: “a1Au5higfFs”, “DeviceName”: “smart_house”, “DeviceSecret”: “iAg6cS4TVpZw7f4lT8Q3ULNGFB7JPpNi” }example|securemode=3,signmethod=hmacsha1,timestamp=132323232|"mqttUsername:smart_ho.

2020-05-30 15:29:03 520 1

原创 物联网学习

传感器接口、通信网络、各种各样云平台,导致碎片快物联网操作系统解决碎片化问题,安全保障,降低开发时间,终端统一管理,健康行业生态物联网套件云端融合开发模式新型物联网应用示例NB-Iot(适合分散的)充电桩物联改造龙井溯源物联网水表与云平台LoRa(适合集中的)智慧园区智慧农业物联网的四层体系架构六大物联网开放子平台物联网平台产品与设备网关与设备三元组传统IOT开发和基于物模型的IOT开发MQTT协议的介绍

2020-05-27 17:15:44 322

原创 队列

队列  定义:满足先进先出的存储结构  分类:    链式队列 --用链表实现    静态队列 --用数组实现      静态队列通常都必须是循环队列      循环队列的讲解:        1、静态队列为什么必须是循环队列?        2、循环队列需要几个参数来确定        3、循环队列各个参数的含义        4、循环队列入队伪算法讲解        ...

2020-03-31 21:26:13 121

原创

栈定义:  一种可实现先进后出的存储结构  栈类似于箱子分类  静态栈:数组为内核  动态栈静态栈与动态栈的区别: 静态栈必须提前确定栈的大小(有限的),并且都是连续的. 动态栈可以无限大小(内存够的情况下),并且是不连续的作者:Y_N...

2020-03-28 15:39:20 253

原创 链表

离散存储【链表】定义:  n个节点离散分配  彼此通过指针相连  每个节点只有一个前驱节点,每个节点只有一个后续节点,首节点没有前驱节点,尾节点没有后续节点  专业术语:   首节点:第一个有效节点   尾节点:最后一个有效的节点   头结点:头结点的数据类型和首节点的类型一样,第一个有效节点之前的那个节点,头结点并不存放有效数据,加头结点的目的是为了方便对链表的操作   头指针...

2020-03-27 21:04:40 100

原创 typedef

#include <stdio.h>typedef int ZHANGSAN; //为int再重新多取一个名字,ZHANGSAN等价于inttypedef struct Student{ int sid; char name[100]; char sex;}ST;int main(void){ // int i = 10; //等价于ZHA...

2020-03-26 19:54:32 83

原创 数据结构数组构建,插入,删除,扩充,排序

数据结构概述  定义   我们如何把现实中大量而复杂的问题以特定的数据类型和特定的存储结构保存到主存储器(内存)中,以及在此基础上为实现某个功能(比如查找某个元素,删除某个元素等)而执行的操作,这个相应的操作也叫算法。  数据结构 = 个体+个体的关系  算法 = 对存储数据的操作模块一:线性结构  连续存储【数组】  离散存储【链表】  线性结构的两种常见应用之一 栈  线性...

2020-03-26 17:15:12 365

原创 C

什么叫分配内存,什么叫释放内存 操作系统把某一块内存空间的使用权利分配给程序叫分配内存; 操作系统把分配给该程序的内存空间的使用权利收回,该程序就不能够再使用这一块内存空间, 这叫内存释放 附注:释放内存不是把该内存的内容清0变量为什么要初始化 不初始化,则变量通常就是垃圾值 为什么要函数 有助于程序模块化 避免重复性操作什么是指针,地址,指针变量以及三者关...

2020-03-23 11:44:21 133

原创 链表

链表算法:通俗定义:解题的方法和步骤狭义定义:对存储数据的操作广义定义:广义的算法也叫泛型无论数据是如何存储的,对该数据的操作都是一样的链表:专业术语:头结点头结点的数据类型和首节点的数据类型一模一样头结点是首节点前面的那个节点头结点并不存放有效数据设置头结点的目的是为了方便对链接的操作头指针存放结点地址的指针变量 首节点 ...

2020-03-23 10:37:22 84

原创 补码

负整数转二进制已知十进制求二进制 求负整数的二进制 先求与该负数相对应的正整数的二进制代码,然后将所有位取反,末尾加1,不够位数时,左边补1已知二进制求十进制如果首位是1,则表明是负整数, 将所有位取反,末尾+1,所得数字就是该**负数的绝对值**先求与该负数相对应的正整数的补码,然后将所有位取反,末尾加1,不够位数时,左边补10000 0000 – ...

2020-03-20 15:59:14 97

原创 动态构造

#include <stdio.h>#include <malloc.h>struct Student{ int age; float score; char name[100];}int main(void){ int len; struct Student * pArr; int i,j; struct...

2020-03-20 11:08:25 208

原创 冒泡排序

#include <stdio.h>void sort(int *pArr, int len){ int i,j,t; for(i=0; i<len-1; ++i) { for(j=0; j<len-4-i; ++i) { if(a[j]>a[j+1]) //>为升序,&l...

2020-03-20 10:31:19 68

原创 结构体指针变量作为函数参数传递

#include <stdio.h>#include <string.h>struct Student{ int age; char sex; char name[100];}; //分号不能省void InputStudent(struct Student * pstu);//pstu只占4个字节,对结构体输入,必须发送地址void OutputS...

2020-03-20 10:05:41 3129 1

原创 结构体

为什么需要结构体为了表示一些复杂的事物,而普通的基本类型无法满足实际要求什么叫结构体把一些基本类型数据组合在一起形成的一个新的数据类型,这个叫结构体如何定义结构体3种方法,推荐使用第一种怎么使用结构体变量标题赋值和初始化 定义的同时可以整体赋初值 如果定义完之后,则只能单个的赋初值如何取出结构体变量的每一个成员【重点!】1.结构体变量名.成员名2.指针变量名->成员...

2020-03-14 16:24:47 145

原创 跨函数使用内存

#include <stdio.h>void f(int ** q) //q是个指针变量,无论q是什么类型的指针变量,都只占4个字节{ int i = 5; //q是p的地址,所以*q就等价于p // *q = i; //error, 因为*q = i; 等价于 p = i;错误 *q = &i; //p = &i ...

2020-03-14 15:17:42 137

原创 多级指针

多级指针int main(void){ int i = 10; int * p =&i; int ** q =&p; int *** r = &q; //r = &p; //因为r是int ***类型, r只能存放int **类型变量的地址}void f(int ** q){ //*q就是p}voi...

2020-03-14 14:14:26 116

原创 C语言动态内存分配

malloc 是 memory allocate(内存分配)#include <malloc.h>int i = 5; //分配了4个字节 静态分配int * p =(int *)malloc(4); //12行/* 要使用malloc函数,必须添加malloc.h这个文件 malloc函数只有一个形参,并且形参是整型 4表示请求系统为本程序分配四个字节...

2020-03-14 11:29:40 466

原创 GPIO工作模式

(1)GPIO_Mode_AIN 模拟输入(2)GPIO_Mode_IN_FLOATING 浮空输入(3)GPIO_Mode_IPD 下拉输入(4)GPIO_Mode_IPU 上拉输入(5)GPIO_Mode_Out_OD 开漏输出(6)GPIO_Mode_Out_PP 推挽输出(7)GPIO_Mode_AF_OD 复用开漏输出(8)GPIO_Mode_AF_PP 复用推挽输出...

2020-03-13 14:53:40 110

原创 STM32库函数用法RCC_APB2PeriphClockCmd

RCC_APB2PeriphClockCmd该函数原型是void RCC_APB2PeriphClockCmd(u32 RCC_APV2Periph, FunctionalState NewState)第一个参数就是由上面选取,第二个参数则为ENABLE或者DISABLE镜像函数RCC_APB1PeriphClockCmd什么时候用RCC_APB1PeriphClockCmd这个外设时钟...

2020-03-13 14:23:19 46529 8

原创 STM32的_I,_IO,_O,volatile,const,_INLINE

__I ,__O, __IO__I “只读”__O“只写”__IO“读/写”#define __I volatile const /*!< defines ‘read only’ permissions /#define __O volatile /!< defines ‘write only’ permissions /#define __IO volatile /!&l...

2020-03-12 08:36:30 390

原创 求极限的方法

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

2020-01-03 20:38:40 583

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除