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事业部的同学提供技术上的帮助。

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

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

    关注

    2933

    文章

    46487

    浏览量

    395935
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    低代码联网云平台功能解析:设备接入智能应用

    设备、数据与应用的核心枢纽,其功能覆盖了设备接入数据处理、应用开发的流程。以下是其主要功能的详细说明: 一、
    的头像 发表于 07-31 15:23 ?247次阅读

    联网的应用范围有哪些?

    在生活中的一个小小体现。 技术层面看,联网融合了多种技术,包括传感器技术、网络通信技术、大数据与云计算技术等。传感器负责采集各种物理量、化学量等信息,如温度传感器感知环境温度,压力传感器检测物体受力
    发表于 06-16 16:01

    艾默生 SolaHD 通过 \"地板云端?\"解决方案和在线产品配置器推进电能质量管理

    SolaHD是艾默生(Emerson)旗下专注于电能质量解决方案的子公司,正以其\"设备云端?\"(Floor to Cloud?)的创新理念及全新升级的在线产品配置工具引领
    发表于 06-10 14:50

    联网工程师为什么要学Linux?

    联网工程师需要掌握Linux的主要原因可以技术生态、开发需求、行业应用及就业竞争力四个角度来分析: 一、技术生态与行业适配性 1)嵌入式开发的主流平台
    发表于 05-26 10:32

    开发进阶指南:LuatOS-log库入门实战!

    本文将带你深入探索LuatOS系统中log库的核心原理与实战技巧,通过代码示例解析日志管理、错误追踪及性能优化的最佳实践,助力工程师构建更稳健的联网应用。 今天,我们一起来认识L
    的头像 发表于 05-15 16:12 ?2400次阅读
    <b class='flag-5'>全</b><b class='flag-5'>栈</b>开发进阶指南:LuatOS-log库<b class='flag-5'>从</b>入门<b class='flag-5'>到</b>实战!

    云端终端:RAKsmart服务器构筑AI云平台智慧城市解决方案

    传统服务器方案常面临算力分散、运维复杂、能效比低等问题,导致AI算法难以高效落地。而RAKsmart服务器凭借其技术创新与服务能力,正在为AI云平台智慧城市提供云端算力
    的头像 发表于 05-09 09:47 ?289次阅读

    有人物联网:工业联网解决方案专家??

    全球众多企业提供了可靠的工业联网解决方案,助力企业实现智能化转型与升级。? 一、公司实力:芯片云端
    的头像 发表于 03-27 17:39 ?828次阅读

    边缘计算 云端计算

    边缘计算与云端计算的区别与联系 ? 一、核心区别? 数据处理位置? 边缘计算?:在靠近数据源的设备或边缘节点(如传感器、本地服务器)完成计算,减少数据传输距离?。 云端计算?:依赖远程数据中心集中
    的头像 发表于 03-27 08:30 ?449次阅读
    <b class='flag-5'>从</b>边缘计算 <b class='flag-5'>到</b><b class='flag-5'>云端</b>计算

    工业联网平台解析:数据采集设备维护

    构建工业联网平台,是实现制造业数字化、网络化、智能化转型的关键步骤。搭建一个高效、可靠、可扩展的工业联网平台,以全面感知、全域互联、全程智控为目标,为企业的智能化升级提供坚实的技术
    的头像 发表于 03-17 17:11 ?618次阅读

    蜂窝联网怎么选

    、数据传输、固件更新、额外的基础设施设置和维护等)至关重要,因为不同技术的成本可能会因预期使用情况的不同而大相径庭。蜂窝联网有多种连接模式,统一费率按数据付费,带来了可预测的成本
    发表于 03-17 11:46

    宇树科技在联网方面

    给其他设备云端进行分析和处理。 与通信企业合作:宇树科技可能与通信企业展开合作,共同探索5G、6G等新一代通信技术在机器人领域的应用,以提升机器人的通信效率和稳定性,满足联网场景下
    发表于 02-04 06:48

    曙光云开启智能时代

    近日,“可信 云中生智”曙光云战略发布会召开。曙光云首创“城市云”进化实现“智能云”
    的头像 发表于 12-19 15:11 ?718次阅读

    联网学习路线来啦!

    联网学习路线来啦! 联网方向作为目前一个热门的技术发展方向,有大量的人才需求,小白的学习入门路线推荐以下步骤。 1.了解
    发表于 11-11 16:03

    特斯拉FSD,自研智能驾驶的未来

    技术已然成为各车企研发的主要方向之一。在众多自动驾驶技术的探索者中,特斯拉(Tesla)凭借FSD(Full Self-Driving)系统,占据了行业的领先地位。FSD系统自发布以来,经历了外部合作到自研的转型,并在感知
    的头像 发表于 10-29 16:27 ?1293次阅读
    特斯拉FSD,<b class='flag-5'>从</b><b class='flag-5'>全</b><b class='flag-5'>栈</b>自研<b class='flag-5'>到</b>智能驾驶的未来

    边缘设备云端平台,合宙DTU&amp;RTU打造无缝联网解决方案

    ? 如今,联网(IoT)技术飞速发展,万互联的时代已然到来,那么,高效、稳定地连接边缘设备云端平台,实现数据的实时采集、传输与处理,就
    的头像 发表于 09-18 14:55 ?839次阅读
    <b class='flag-5'>从</b>边缘<b class='flag-5'>设备</b><b class='flag-5'>到</b><b class='flag-5'>云端</b>平台,合宙DTU&amp;RTU打造无缝<b class='flag-5'>物</b><b class='flag-5'>联网</b>解决方案