技术:51单片机、串口、蓝牙、积木式编程
 

概述

这里简单入门了积木式编程,做了个简易APP用来开灯关灯,当然你可以继续添加内容,可以做智能家居、遥控汽车和环境监控等等。

详细

一、积木式编程

这里我们使用MIT App Inventor来进行积木式编程,开发APP

网址:app.gzjkw.net/login/

论坛:http://appbbs.gzjkw.net/forum.php

我简单说明下:


二、简易APP制作

点击项目->新建项目 (这里我项目名为:APP)

  • 接下来,我们先建立蓝牙连接:

这里需要:列表选择框(用户界面下)、对话框(用户界面下)、蓝牙客户端(通信连接下)

注:在组件属性 - 文本,可以修改名字,这里我修改为:Select_Bluetooth

  • 然后添加开灯、关灯按钮

这里需要:按钮*2

注:在组件属性 - 文本,可以修改名字,这里我修改为:turn on和turn off

  • 然后添加文本框输入(发送任意字符)

这里需要:文本选择框、按钮(添加水平布局,将文本选择框、按钮放入里面)

注:在组件属性 - 文本,可以修改名字,这里我修改为:Send out

这样就完成了,点击打包apk,手机扫描下载


三、51单片机——自制app点灯

硬件连接:

  • 51单片机烧写串口通信代码(与上节蓝牙篇代码一样)

远程控制代码:

if(receiveData=='1')
{
led=1; //接收1时,打开LED灯
}
if(receiveData=='0')
{
led=0; //接收0时,关闭LED灯
}
  • 蓝牙的配置,上节已经讲解了,这里不再多讲一次

网址:http://www.demodashi.com/demo/14912.html

  • 手机配对成功蓝牙后,打开你安装好的APP

  • 点击Select_Bluetooth,选择蓝牙(这里我的名字叫test)

  • 点击turn on为开灯

  • 点击turn off为关灯

  • 在文本输入框中发送也可以,发送1为开灯,发送0为关灯


四、总结

这里简单入门了积木式编程,做了个简易APP用来开灯关灯,当然你可以继续添加内容,可以做智能家居、遥控汽车和环境监控等等。


五、项目结构图

注:本文著作权归作者,由demo大师发表,拒绝转载,转载需要作者授权

积木式编程——自制app点灯的更多相关文章

  1. TurnipBit—MicroPython开发板:从积木式编程语言开始学做小小创客

    编程.建模.制作动画和游戏--这些当初我们默认只有成年人玩得转的事情,现在早已经被无数小孩子给颠覆甚至玩出新境界了.热爱科技和动手的"创客"(Maker)现在在全世界都炙手可热.今 ...

  2. Android中使用反应式编程RxJava

    GitHut 地址: https://github.com/ReactiveX/RxAndroid (1)RxJava简介: RxJava 是一个在Java虚拟机上实现的响应式扩展库:提供了基于obs ...

  3. [译] Swift 的响应式编程

    原文  https://github.com/bboyfeiyu/iOS-tech-frontier/blob/master/issue-3/Swift的响应式编程.md 原文链接 : Reactiv ...

  4. Swift 响应式编程 浅析

    这里我讲一下响应式编程(Reactive Programming)是如何将异步编程推到一个全新高度的. 异步编程真的很难 大多数有关响应式编程的演讲和文章都是在展示Reactive框架如何好如何惊人, ...

  5. Angular4学习笔记(五)- 数据绑定、响应式编程和管道

    概念 Angular中的数据绑定指的是同一组件中控制器文件(.ts)与视图文件(.html)之间的数据传递. 分类 流向 单向绑定 它的意思是要么是ts文件为html文件赋值,要么相反. ts-> ...

  6. 使用函数接口和枚举实现配置式编程(Java与Scala实现)

    概述 做报表时,有时需要根据不同的业务生成不同的报表.这样,需要能够动态地配置列字段,并根据列字段来输出对应的报表.使用函数接口结合枚举可以比较优雅地实现配置式编程. 问题描述如下: 假设有对象 St ...

  7. 函数响应式编程(FRP)思想-Callback风格

    序 ReactiveCocoa是IOS广为使用的技术框架,而ReactiveCocoa的核心思想就FRP.FRP不同于JAVA的object-oriented和AOP,FRP能让你的代码像数学一样简洁 ...

  8. Angular6 基础(数据绑定、生命周期、父子组件通讯、响应式编程)

    Angular相比于vue来说,更像一个完整的框架,本身就集成了很多模块,如路由,HTTP,服务等,而vue是需要另外引入比如(vuex,axios等).Angular引入了依赖注入.单元测试.类等后 ...

  9. RxJava(一):响应式编程与Rx

    一,响应式编程 响应式编程是一种关注于数据流(data streams)和变化传递(propagation of change)的异步编程方式. 1.1 异步编程 传统的编程方式是顺序执行的,必须在完 ...

随机推荐

  1. checkbox jquery操作总结

    $('input[name="myCheckbox"]').prop('checked','true'); // 全选 $('input[name="myCheckbox ...

  2. springboot整合springmvc上传文件

    1.pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www ...

  3. EurekaServer高可用

    前言 之前一篇文章文章<服务注册与发现---eureka>介绍了单点EurekaServer.但是实际环境中,这种单点的的模式可能会有很多隐形的问题.比如EurekaServer发生宕机, ...

  4. C#中的BeginInvoke和EndEndInvoke 异步问题

  5. 一个不错的Node.js进阶学习引导

    https://cnodejs.org/topic/58ad76db7872ea0864fedfcc

  6. BZOJ.3532.[SDOI2014]LIS(最小割ISAP 退流)

    BZOJ 洛谷 \(LIS\)..经典模型? 令\(f_i\)表示以\(i\)结尾的\(LIS\)长度. 如果\(f_i=1\),连边\((S,i,INF)\):如果\(f_i=\max\limits ...

  7. 基于asp.net的excel导入导出

    新建aspx文件.代码大概如下: <!--导入Excel文件--> <table width="99%" border="0" align=& ...

  8. 基于AT89C51单片机烟雾传感器

    #include <reg51.h> #include <stdio.h> #define uchar unsigned char //宏定义无符号字符型 #define ui ...

  9. [PA2014]Kuglarz

    [PA2014]Kuglarz 题目大意: 有一个长度为\(n(n\le2000)\)的0/1串,你可以花\(c_{i,j}\)的钱,询问区间\([i,j]\)的异或和.问至少要多少元才能知道原来的序 ...

  10. renren-vue 基于最新node10.8、npm6.2 在win7 x64系统 成功初始化启动

    renren-vue 基于最新node.npm初始化之路 renren-fast 是一个轻量级的 Spring Boot 快速开发平台,能快速开发项目并交付[接私活利器] 完善的 XSS 防范及脚本过 ...