android 环形时间显示_使用Arduino构建OLED显示屏与Android手机接口的智能手表

背景知识视频教程

Arduino 训练营:通过项目学习​viadean.com
5ee7aa20d20879d6d67201b9d7874639.png
通过制作Arduino UNO FM收音机接收器学习Arduino I2C​viadean.com
a85a13d27d15805dc9db3b7602167fef.png
通过构建实际应用程序来掌握Arduino - 国外课栈​viadean.com
90a559c0e68a90a1205a7797a0359b8c.png

我们大多数人都熟悉16×2点阵液晶显示器,它在许多项目中用于向用户显示一些信息。 但是这些LCD显示器在他们能做的事情上有很多限制。 在本教程中,我们将使用OLED显示Android智能手机的一些基本信息,如时间,日期,网络强度和电池状态。 该项目提供了构建基于Arduino的SmartWatch的基本思想和框架,并可进一步扩展以在OLED显示屏上显示来电,消息等等。

所以我们在这里通过使用Android应用程序从Android手机获取一些信息,然后使用蓝牙模块和Arduino Pro Mini将此信息发送到OLED显示器。 Android智能手机已经内置蓝牙发送数据,在接收端我们使用蓝牙模块HC-06和Arduino。 蓝牙模块HC-05也可用于代替HC-06。

在Android应用程序中,数据从手机中获取并作为String发送到Arduino。 现在收到数据后,Arduino解码传入的字节串并将其放入临时变量中以在OLED显示屏上显示。

硬件

OLED显示器

术语OLED代表“有机发光二极管”,它使用与我们大多数电视机相同的技术,但与它们相比具有更少的像素。 让这些酷炫的显示模块与Arduino接口真的很有趣,因为它会让我们的项目看起来很酷。 在这里,我们使用的是单色4针SSD1306 0.96“OLED显示屏。 此显示只能用于I2C模式。

Arduino社区已经为我们提供了很多可以直接用来简化这些库的库。 我尝试了一些库,发现Adafruit_SSD1306库非常易于使用,并且有一些图形选项,因此我们将在本教程中使用相同的。 在这里,我们还需要在Arduino IDE中再安装一个库,可以从这里下载GFX图形库。

原理图

使用带有Arduino的4针SSD1306 OLED的电路图非常简单,如下所示

在这里,我们使用Arduino Pro Mini板来控制所有操作。 选择Arduino pro mini的原因是它可以在3.3v电源下工作。 4针OLED和蓝牙模块HC-06也可以在3.3v下工作,因此所有这些模块都可以通过一个3.7v Li-on供电。 锂电池是小巧轻便的电池,是可穿戴设备的完美选择。 在这里,我们还可以在这个项目中制作可穿戴的东西,就像一个简单的智能手表,可以与您的智能手机同步。

现在出现一个关于电源的问题,这里所有的模块都在3.3v工作,但锂离子电池正在提供3.7v,这可能会损坏模块。 因此,为了解决这个问题,我们已将电池的3.7v电源应用于Arduino pro mini的原始引脚,该引脚可将该电压转换为3.3v。

Android App通过蓝牙向Arduino发送数据

对于这款基于Arduino的智能手表,我们在Android Studio中创建了一个Android应用程序,这个应用程序可以从这里下载。 因此,只需在Android智能手机中下载并安装此应用,然后启用蓝牙并将HC-06模块与手机配对即可。 可能要求密码配对HC-06蓝牙模块,默认密码为1234或0000。

现在打开OLED应用程序并选择配对的蓝牙设备HC-06,如下图所示:

现在OLED应用程序将显示从Android手机获取的数据,如下所示:

用于OLED智能手表的Arduino编程

然后从包含所有必需的库开始

之后,我们为不同的操作定义了一些宏和变量。

之后写一个模拟时钟函数。

然后是数字时钟的另一个函数。

然后OLED将使用以下函数以数字和图形形式显示电池状态。

下面的函数也用于显示数字和图形表格中的网络状态。

在安装功能之后,我们初始化了我们在这个项目中使用的所有通信和模块。

在循环函数中,我们从android mobile接收数据并解码该数据,然后将其发送到OLED显示器。

这就是我们如何通过无线方式连接OLED和智能手机,并可以将我们想要的任何数据从智能手机发送或同步到OLED。

源代码

使用Arduino构建OLED显示屏与Android手机接口的智能手表 - 国外课栈​viadean.com
39e8f907aaeb2bb86ed677bc59c128df.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/502675.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机的安全设置在哪儿,电脑防火墙在哪里设置

随着微软系统的更新,现在的Windows 10系统对于网络防护非常的安全,但是有的朋友电脑需要测试一些软件,就需要关闭电脑的防火墙,但是不懂怎么设置电脑防火墙,不用担心下面就让小编教你电脑防火墙在哪设置吧。下面电脑防…

python的加减乘除运算_python实现四则运算

https://gitee.com/szh123/four_arithmetic_implementation.git 1.需求分析: 实现四则运算题目及答案生成,控制生成题目的个数,题目中数值不超过10且有分数存在并用真分数表示。 可以生成10000道题 运算符不超过3个 题目不能出现重复即不能经…

微众银行软件测试笔试题,微众银行4月8日笔试题目及部分代码

AC,大致思路就是算一下该字符串能组成的最大回文长度,然后按差值奇偶性输出胜利者,本来以为“最优策略”的删除任意一个字符会很复杂,但是试了下就过了。import java.util.Scanner;public class Main {public static void main(St…

水晶底是什么材质_蓝宝石水晶镜面,贵是有道理的!

表友们在选择手表的时候,常常会在意机芯、性能等,但是你第一眼爱上的往往是它的外观。在手表上,有一样部件,你总是最先看到,占据着你视线的C位,但是你却总是忽略它。这个部分就是表镜,这个重要却…

dedecms 漏洞_dedescan一款织梦漏洞扫描器

dedescan是一款可以扫描所有已公开的dedecms漏洞的扫描器。... ... ... ... ... ... …

post获取重定向的链接 python_欧美音乐网站Python爬虫项目实战

爬虫项目实战0x01 目标分析最近发现一个比较好的欧美音乐下载网站,可以下载大部分高质量欧美音乐。该爬虫项目要实现自动化批量获取用户想要下载的音乐。本文从网站分析、爬虫设计、代码实现三个方面出发,系统介绍该爬虫项目。项目完整代码在Github中可以…

中国志愿者服务器注册,如何注册成为志愿者?中国志愿服务网注册流程

西宁市团员、团干、青年志愿者个人和组织网上注册方式为“志愿汇”和“全国志愿服务信息系统(www.chinavolunteer.cn)”两个网站平台双线注册。志愿者注册流程基本操作指引一、PC电脑端操作注:本篇内容较多,建议先“收藏”文章或点击底部“在看”。1、PC…

python s d是什意思_python里d是什么意思

python中的fd()是turtle模块中的一个方法。fd 方法的实参是像素距离。turtle模块:它可以让你使用海龟图形(turtle graphics)绘制图像 turtle模块其中的函数: 1)turtle.pensize():设置线条的粗细&#xff1b…

计算机二级如何接受审阅者修订,操作方法 合并修订文档 步骤1 要求审阅者

工作中,经常需要将文档交予多人同时审阅,那么如何实现让多人同时修改一个文档呢?解决方案审阅者在修订模式下修改文档,再将所有的修订文档合并。操作方法合并修订文档步骤1 要求审阅者,在修订模式下,修改文档&#xf…

vue中的uri_浅谈vue-resource和vue-axios的区别

可能有的人对vue-resource 和vue-axios比较陌生,也可能用到了都不知道。他其实就是我们vue请求里面的 this.$http.*** 和 this.axios.***vue-resourcevue-resource是Vue.js的一款插件,它可以通过XMLHttpRequest或JSONP发起请求并处理响应。也就是说&…

open表和closed表_011 Ruby 多Word表写入Excel

Hey,最近有很多粉丝私信询问,2020年已过半,又该统计半年报表信息了。你关心的是,Ruby能否像VBA、Python一样,实现多表格快速汇总?答案是肯定的。这期,为你讲解如何将多个Word表格汇总到Excel里。…

审计工作存在的难点和问题_电力工程造价审计的难点与对策有哪些?学习安装电力造价广联达计价看这里!!...

目前电力工程审计的难度较大,对于审计人员的专业素质要求很高,尤其是在电力工程施工发生变动时,需要考虑工程的实际情况,及时对其进行工程造价审计。文章对电力工程造价审计中的难点进行了分析,并提出了相应的解决措施…

蒙特卡洛分析_随机模拟:马尔科夫链蒙特卡洛采样MCMC与EM算法「2.3」

最近学习了机器学习中的马尔科夫链蒙特卡洛(Markov Chain Monte Carlo, 简称MCMC) 相关的知识。主要内容包括:【1】蒙特卡洛原则,及其应用于采样的必要性(已经发布在头条)【2】用于求解最大似然、近似推断、期望问题的经典采样算法:Metropoli…

三维错切变换矩阵_图像的仿射变换

目录:概述图像基本变换仿射变换原理python实现一、概述图像的几何变换主要包括:平移、缩放、旋转、仿射、透视等等。图像变换是建立在矩阵运算基础上的,通过矩阵运算可以很快的找到不同图像的对应关系。理解变换的原理需要理解变换的构造方法…

app系统服务器出错怎么回事,app连接服务器出错

app连接服务器出错 内容精选换一换接口调用出错将无法获取建立相应隧道连接的必要信息,将无法正常建连云手机设备实例,具体报错示例如下:首先,尝试使用adb connect重新建立连接,依旧报错可通过查看安装目录下的日志adb…

js foreach 跳出循环_VUE.js

Vue.js模板语法vue.js使用了基于HTML的模板语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据,其核心就是一个允许开发者采用简洁的模板语法来将数据渲染进DOM系统。使用各种组件来做成一个项目的话,需要结合单页应用。插值数据绑定最…

2异常处理_异常是什么?什么是常用类?

第一节 异常1. 异常的概念​ 异常(Exception) 即例外,程序没有按自己预想的结果运行出来,出现了非正常情况,即“程序得病了”。怎么让我们写的程序做出合理的处理,不至于崩溃是我们关注的核心。 异常机制就是当程序出现错误&#…

origin三元相图_扩增子图表解读7三元图:三组差异数量和关系

点击上方蓝色「宏基因组」关注我们!专业干货每日推送!背景介绍(Introduction)宏基因组学宏基因组学目前的主要研究方法包括:16S/ITS/18S扩增子、宏基因组、宏转录组和代谢组,其中以扩增子研究最为广泛。目的意义本系列文章将带领大…

写出python字符串三种常用的函数或方法_python中几种常用字符串函数

1、lower()把所有字符换成小写 2、upper()把所有字符换成大写 3、swapcase()大小写互换 4、title()把每个单词首字母大写,他是以所有英文字母的字符来区别是否为一个单词的,eg:s "a是傻b" s2 s.title() 结果为"A傻B",a和b都变成了大写,因为他是根据英文字…

python app开发模块_Python pytkapp包_程序模块 - PyPI - Python中文网

用于开发应用程序的python包 多文档/单文档界面 利用tkinter库和附加tkinter集 小部件。 查看可用演示: pytkapp/demo/run_ptapoptionsdemo.py-为选项的容器运行gui demo(可用的小部件、规则) pytkapp/demo/run_ptamdidemo.py-运行MDI应用程序…