Arduino

Arduino

Uno / Nano / 101 ……
开源、便宜、无尽创想
ESP物联网

ESP物联网

掌控板
ESP8266 / ESP32
App Inventor

App Inventor

手机平板应用开发
……
卡片电脑

卡片电脑

树莓派
虚谷号
3D打印

3D打印

三维立体绘图
打印机操作及技巧
激光切割

激光切割

2D矢量绘图
切割机操作及技巧
大开眼界

大开眼界

围观神级作品
学习软硬兼施
源创分享

源创分享

自撰美文
经验分享

3D打印漂流-网络课程

3D打印admin 发表了文章 • 0 个评论 • 273 次浏览 • 2019-06-03 16:32 • 来自相关话题

百度网盘地址 链接:https://pan.baidu.com/s/1wWo2SssPZtN0iSbOUJfH-Q ...查看全部

百度网盘地址

链接:https://pan.baidu.com/s/1wWo2SssPZtN0iSbOUJfH-Q

密码:xiuc


Arduino-IDE mpython环境构建

掌控板陈峻宇 发表了文章 • 2 个评论 • 506 次浏览 • 2019-05-26 14:16 • 来自相关话题

众所皆知,掌控板是基于esp-32架构的板子。 蓝牙自带,  但Mind+就是不支持。 有块屏幕,但IDE怎么就用不了! ...查看全部

众所皆知,掌控板是基于esp-32架构的板子。



蓝牙自带, 



但Mind+就是不支持。



有块屏幕,但IDE怎么就用不了!



实在影响使用。



所以—— 这是就需要点技术了



移花接木



首先,我们先同时下载IDE和Mind+



在IDE中打开文件>首选项>附加开发版管理器网址



输入附加网址https://git.oschina.net/dfrobot/FireBeetle-ESP32/raw/master/package_esp32_index.json



这其实只是做个底子,





windows用户可以



在路径



C:\Users\Administrator(你自己的管理员用户名)\AppData\Local\Arduino15\packages\esp32\hardware\DFRobot_FireBeetle-ESP32



找到安装文件夹





要替换什么见



https://github.com/JunYu-Chen/mpython--


本地WiFi热点

掌控板XUNUO678 发表了文章 • 0 个评论 • 384 次浏览 • 2019-04-15 13:10 • 来自相关话题

开启本机WiFi热点,连接掌控板 用管理员权限打开命令窗 1、设置热点的名称和密码   netsh wlan set hostednetwork mode=allow ssid=gymaker key=12345 ...查看全部
开启本机WiFi热点,连接掌控板 用管理员权限打开命令窗

1、设置热点的名称和密码

  netsh wlan set hostednetwork mode=allow ssid=gymaker key=12345678

2、启动WiFi热点

  netsh wlan start hostednetwork

3、停止WiFi热点

  netsh wlan stop hostednetwork

FireBeetleESP-32 and 掌控板 ——蓝牙使用指南

掌控板陈峻宇 发表了文章 • 1 个评论 • 812 次浏览 • 2019-04-14 14:28 • 来自相关话题

前言:我拿到掌控板以后, 一直在是用mpython,Mind+ 一类的软件练习, BUT—— Mind+,mpython ESP的蓝牙功能去哪里了!!!!!  回家以后,我爸才告诉我, ...查看全部
前言:我拿到掌控板以后,
一直在是用mpython,Mind+
一类的软件练习,
BUT——
Mind+,mpython
ESP的蓝牙功能去哪里了!!!!!
 回家以后,我爸才告诉我,
Arduino IDE
ESP-32有蓝牙的示例。
---------------------------------------------------------
本文使用掌控板为例
//This example code is in the Public Domain (or CC0 licensed, at your option.)
//By Evandro Copercini - 2018
//
//This example creates a bridge between Serial and Classical Bluetooth (SPP)
//and also demonstrate that SerialBT have the same functionalities of a normal Serial

#include "BluetoothSerial.h"

#if !defined(CONFIG_BT_ENABLED) || !defined(CONFIG_BLUEDROID_ENABLED)
#error Bluetooth is not enabled! Please run `make menuconfig` to and enable it
#endif

BluetoothSerial SerialBT;

void setup() {
Serial.begin(115200);
SerialBT.begin("ESP32test"); //Bluetooth device name
Serial.println("The device started, now you can pair it with bluetooth!");
}

void loop() {
if (Serial.available()) {
SerialBT.write(Serial.read());
}
if (SerialBT.available()) {
Serial.write(SerialBT.read());
}
delay(20);
}

 好简单……
可以看到,ESP-32的蓝牙在一定程度上,特别像一个——串口
捕获.PNG

开发板参数。

捕获1.PNG


捕获3.PNG

以上结果必须关掉电脑管家,
好坑

捕获2.PNG

手机端不放了

两块arduino用蓝牙通信

Uno / Nano /……袁卓杰 发表了文章 • 0 个评论 • 510 次浏览 • 2019-04-14 11:16 • 来自相关话题

一直纠结于无线串口的使用,不如用两个HC06模块。不过这就很头疼了,模块默认都是从机模式,搜索全是HC05的资料,06的资料少之又少,刚开始使用05的资料套,大多指令都不一样。最重要的是我没有usb转串口的模块,还好我有R3板子,就为了把板子弄成USB转ttl ...查看全部
一直纠结于无线串口的使用,不如用两个HC06模块。不过这就很头疼了,模块默认都是从机模式,搜索全是HC05的资料,06的资料少之又少,刚开始使用05的资料套,大多指令都不一样。最重要的是我没有usb转串口的模块,还好我有R3板子,就为了把板子弄成USB转ttl,折腾一下午。
程序如下(没有USB转ttl才用)
#include
SoftwareSerial sc(7, 8);
void setup(){
 // put your setup code here, to run once:
Serial.begin(9600);
sc.begin(9600);
}
void loop() {
 while (Serial.available())
 {
  char shuju = Serial.read();
sc.print(shuju);
char c = sc.read();
Serial.print(c);
 }
}
因为没有转换模块,所以用板子代替,还好arduino有软窜口的库,看程序将蓝牙模块TX,RX,接好,这里因为模块出场设置的波特率是9600,停止位为1,这里我们就不用再去过多的设置,好。。。开始发射AT指令
打开串口,依次输入
AT
模块返回ok
//下一步更改波特率
发送:AT+BAUD1
      模块返回:OK1200
发送:AT+BAUD2
模块返回:OK2400
……
1---------1200
2---------2400
3---------4800
4---------9600
5---------19200
6---------38400
7---------57600
8---------115200
///////两个模块波特率必须一直,更改方法相同
更改模块主从
AT+ROLE=M//设置为主
//模块返回//OK+ROLE:M//
AT+ROLE=S//设置为从
//模块返回//OK+ROLE:S
//设置对方密码
AT+PINXXXX///四位,密码必须跟主机一样
主机模块设置完成
断电后将量模块通电,就有。。。。。gg...完,模块完了
重启后如果两个蓝牙通电后指示灯亮着不闪那就是配对成功了
 
设置完成后,将模块接在两块arduino板上,双机通信
主机程序:

#include
SoftwareSerial sc(7, 8);//7接rx,8接tx
void setup()
{
  // put your setup code here, to run once:
Serial.begin(9600);
  sc.begin(9600);

}

void loop() {
  while (Serial.available())
    {
    char shuju = Serial.read();

  sc.print(shuju);




    }
}
/////////////////////////////////////////////////////////////////丑陋的分割线////////////////////////////////////////////////////////////////
从机程序:

#include
SoftwareSerial sc(6, 7);
void setup()
{
  // put your setup code here, to run once:
Serial.begin(9600);
  sc.begin(9600);

}

void loop() {
  while (sc.available())
    {
    char shuju = sc.read();

  Serial.print(shuju);



    }
}
设置完了?那就打开串口监视器发信息吧(两个串口都打开)
PS:只能主机发给从机,除非你得蓝牙很NB
现在主机给从机发信息
先输入
捕获.PNG

发送,可以看到从机串口接到了主机信息

捕问问获.PNG

 

想学其它编程语言的点进来

大开眼界毕业生卢铸天下第一 发表了文章 • 0 个评论 • 321 次浏览 • 2019-04-14 10:02 • 来自相关话题

I Belive有很多同学都像我一样想学习其它的编程语言不仅仅只局限在C 但网上许多教程都是需要付费的 于是,我找到了这个网站,并分享给大家               免费的自主学习的编程教学网站这是一个免费的自主学习的编程语言教学网站我对比了许多其它网站, ...查看全部
  • I Belive
  • 有很多同学都像我一样想学习其它的编程语言
  • 不仅仅只局限在C
  • 但网上许多教程都是需要付费
  •  
  • 于是,我找到了这个网站,并分享给大家
               免费的自主学习的编程教学网站
  • 这是一个免费自主学习的编程语言教学网站
  • 我对比了许多其它网站,这家的是最完整
  • 如果有同学有兴趣学习这类其它编程语言
  • 可以考虑一下这个网站

关于Arduino IDE上传时的波特率

Arduino陈峻宇 发表了文章 • 0 个评论 • 758 次浏览 • 2019-04-06 17:40 • 来自相关话题

前言 上一次市赛时,我电脑里安装了一个Arduino 1.8.7, 还有一个米思奇里的1.8.5。 在学校里准备时, 我先测试了1.8.7. 上传一个Blink, 然后 ...查看全部
前言
上一次市赛时,我电脑里安装了一个Arduino 1.8.7,
还有一个米思奇里的1.8.5。
在学校里准备时,
我先测试了1.8.7.
上传一个Blink,
然后


>上传项目失败


????
我当时根本不知道为啥。
直接换1.8.5参加比赛。
今天——终于知道了
 
首先我发现IDE有更新的版本,所以就下载了1.8.8 和1.8.9
捕获.PNG

都试了试,都不行。
在首选项里,我为了查明真相,
把这俩勾上了
捕获1.PNG

再次上传
 resp=0xb6,
再次上传
 resp=0x01
错误代码还不一样。。。。
不过我注意到1.8.9后1.8.5有一个上传参数不一样
1.8.5:
Overriding Baud Rate          : 57600
1.8.9:
Overriding Baud Rate          : 112500
然后安装了以前的1.8.3
Overriding Baud Rate          : 57600
上传成功
所以注意上传波特率是十分重要的

关于如何使用按钮控制oled的显示内容

Arduinonoia 回复了问题 • 4 人关注 • 2 个回复 • 593 次浏览 • 2019-03-19 13:44 • 来自相关话题

如何将Arduino端口的数据传输到web客户端上,并在安卓手机上用APP Inventer接收——帅危

回复

Arduino路人周 发起了问题 • 2 人关注 • 0 个回复 • 400 次浏览 • 2019-03-13 13:42 • 来自相关话题

python------之for循环

编程笔记XUNUO678 发表了文章 • 0 个评论 • 270 次浏览 • 2019-02-06 18:39 • 来自相关话题

  在很多编程软件中,一定会有循环这些语句,只不过表达的方式可能不同,比如python,它里面就提供了两种供我们使用的循环语句------for循环和while循环。那循环有什么用呢?如果你要做一个叠加,要1一直加到100,你总不能写成这样吧:s=1+2 ...查看全部

  在很多编程软件中,一定会有循环这些语句,只不过表达的方式可能不同,比如python,它里面就提供了两种供我们使用的循环语句------for循环和while循环。那循环有什么用呢?如果你要做一个叠加,要1一直加到100,你总不能写成这样吧:s=1+2+3+4······+100?这肯定不行,就算可以,你也不能一直这样吧,所以就提供了循环这一个语句模块,for循环的格式是这样的:

for 变量 in 列表或元组:

执行的命令 那这一些循环都能将list列表和tuple元组的每一个元素打印出来,程序如下:

classmates=['a','b','c']#list列表

for x in classmates:#将classmates列表里的abc分别代入到变量x里。

print(x)#再用print()指令 将classmates列表里的各个元素都打印出来。 如果我们要做从1加到100的运算,我们可以用range()来生成一个整数列表,可是range()只能生成小于这一个填进去的数的所有数。也就是说,我们如果要用range()模块进行生成整数序列,一定要填末尾元素+1的那一个数。再用list()就能将它变成list列表。从而达到直接生成列表的作用。