0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

物联网全栈教程-从云端到设备(十四 完结)

技新电子 2018-05-28 11:26 次阅读

设备端的开发是一个非常简单的工作。零妖今天就简单讲解一下物联网弹幕器这个设备的源代码,给大家提供一个裸机上云的思路。连载文章更新到这里要告一段落,因为真的没啥要讲的了。

首先要说的是使用技小新的MQTT单片机编程小工具生成一个C语言的头文件,这个在之前的文章里已经说过了。你的单片机要干的事情就是通过串口把这些16进制的数据发送给CH9121模块,然后CH9121模块会自动把这些数据打包一下以TCP的形式发送给服务器。

14.1.jpg

单片机的串口资源真的非常好用。STM32F103C8T6这个型号的单片机有三个可以独立使用的串口资源,物联网弹幕器真正用的其实是两个,一个是串口1和电脑的串口连接,调试代码时候输出数据用的,一个是串口3用来和CH9121通信用的。在代码上你可以让串口1和串口3连接在一起,这样就可以在电脑上发送数据给CH9121了,实现的方法请看代码。

14.2.jpg

14.3.jpg

在单片机的内部程序里,也是可以控制串口3发送任何数据的,所以就能发送小工具生成的数组到CH9121了。代码如下。

14.4.jpg

从云端下发给设备的信息可能每次都不一样,比如说弹幕信息,每个人发送的都不一样那么单片机接收的数据长度就不一样,这需要你使用循环队列的方法来接收数据。首先你要预测一下云端一次性有可能下发数据的最大字节数,然后队列缓冲区的大小要是它的两倍以上。这样的处理可以非常有效的防止数据接收丢失的问题。

14.5.jpg

为了示范物联网设备的数据上报流程,物联网弹幕器上面安装了一个温度传感器。这个温度传感器输出的是一个电压信号,这个电压的大小是和温度成正比例关系的。单片机能够通过一种叫ADC的方法来获取这个电压数值,然后就可以计算温度了。

14.6.jpg

在开始做规划的时候,我从来没有认为显示一个汉字会是整个项目中最大的绊脚石。从网页上下发的弹幕信息是一个字符串,这个字符串是UTF8编码的,英文字母一切正常,但是涉及到汉字就一定会乱码,因为单片机这边按照往年经验直接做了GBK编码的处理。

经过零妖老哥的不断摸索,终于发现了一个曲折的救国之路,就是先把UTF8编码转换为Unicode编码,然后再把它转化为能够显示再OLED上面的点阵信息,存到外部存储器里面,需要的时候就读取一下并显示出来。相关代码如下:

14.7.jpg

14.8.jpg

好了,零妖老哥的物联网全栈教程分享到这里就结束了。感谢各位兄弟的支持和鼓励让我有动力连载完毕(坚持做一件事情真的好难)。尤其感谢阿里巴巴IOT事业部的同学提供技术上的帮助。

有很多的想法和具体的细节是没办法在一个文章里写清楚的,为了能帮助更多的朋友快速上云,零妖把这个教程拍成了一个系列的视频教程,同时提供了物联网弹幕器的相关硬件(前面已经给了你开源地址,你完全可以自己做硬件哦)给想节约时间的工程师评估物联网项目使用。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 物联网
    +关注

    关注

    2867

    文章

    41571

    浏览量

    358240
收藏 人收藏

    评论

    相关推荐

    联网专业前景怎么样?

    联网专业人才在团队协作和跨领域项目中有很强的竞争力。4.创新潜力:联网处于快速发展的阶段,不断涌现新的应用场景和技术创新。联网专业人才有
    发表于 10-20 09:48

    MCU是怎么为联网端点设备提高安全性的?

    MCU 是怎么为联网端点设备提高安全性的?
    发表于 10-17 08:53

    IIC协议中是怎么确定主的?

    是通过什么方式来判断一个设备是主还是
    发表于 10-10 06:01

    HarmonyOS/OpenHarmony原生应用开发-华为Serverless云端服务支持说明(一)

    应用开发实现的数据即后端服务是和以前、现在的互联网、移动互联网应用是一样的,等于只实现了前端交互界面的原生而已。如果数据、后台、云端出问题,那么整个应用就不可运行了。 所以,鸿蒙原生应用开发,应该也包括
    发表于 10-08 10:22

    基于飞腾派的边缘联网

    网络连接实现远程控制和监管。还可以通过手机 APP 或云端平台控制教室中的设备,以及监管设备的运行状态和故障情况。边缘联网关在智慧教室场景
    发表于 09-21 16:50

    阿里云联网平台基础概念讲解

    产品 设备的集合,通常指一组具有相同功能的设备联网平台为每个产品颁发全局唯一的ProductKey。每个产品下可以有成千上万的设备
    发表于 09-11 07:41

    联网简介

    联网(IoT)是由物理设备、车辆等组成的网络,家用电器和嵌入有电子设备、软件、传感器等的其他物品,致动器,以及使这些物体能够连接和交换数据。
    发表于 09-11 07:18

    新唐对应四大联网安全攻击的保护措施

    区分为四种类型: 联网设备和服务器之间数据传输的通讯攻击 联网设备
    发表于 08-21 08:14

    浅谈工业联网平台

    工业互联网平台 工业互联网平台的本质是在传统云平台的基础上叠加联网、大数据、人工智能等新兴技术,搭建对工业数据采集、存储、分析和应用的模块体系,实现工业互
    发表于 08-10 15:45

    【华秋推荐】联网入门学习模块 ESP8266

    随着全球信息技术的不断进步和普及,联网成为当今备受关注的技术热点之一。通过物理和数字设备之间的连接来实现自动化和互联互通的网络。无线传感器、云计算和大数据分析等技术,
    发表于 08-04 11:27

    设计一个片上系统-为安全的联网创建一个系统设备

    本指南适用于系统设计人员,可能使用Arm Flexible access。我们假设您希望为安全的联网设备开发片上系统(SoC),并且您打算SoC将用于智能咖啡机。然而,该指南可能与任何相关的
    发表于 08-02 09:33

    程序员进阶之苦,为什么我的问题都没人回答。 #编程 #联网

    联网
    学习电子知识
    发布于 :2023年07月10日 21:48:02

    Linux OS联网优势是什么?

    近年来,联网相关技术逐步成熟并扩展至生活应用,在整合云端运算技术的发展下,其拥有快速反应服务需求、信息更新等优势,导入云端服务更可节省服务器、带宽等软硬件大量建构成本,有效地提升开发
    发表于 06-25 06:55

    联网无线通信技术比较

      联网在经过多年由概念到实践的蛰伏,起伏之后,现在已经呈燎原之势,联网时代已经到来。起的太早的,有些已经在沙滩上了,再晚了的需要迎头赶上了。   
    发表于 05-15 15:57