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

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

3天内不再提示

如何使用便携式应用程序控制Arduino

454398 来源:wv 2019-10-17 10:09 次阅读

步骤1:上传Arduino代码

首先,我们需要在arduino上上载代码。

下载源代码:http://utest .madnerd.org

下载arduino nano的驱动程序:http://nano.madnerd.org

在Arduino软件上(http://arduino.madnerd。 org/)

将 utest文件夹复制到您的 sketch文件夹

上传 utest .ino

(工具:Arduino Nano/ Processo r:Atmega328)

您将需要一个 Arduino nano克隆(ch340g),因为应用程序只会检测到它。

您可以使用串行监视器 》,以测试您的arduino:

无行尾/115200

UTest : return OK

ON : Turn on internal ledpin13)

OFF: Turn off internal led (pin13)

步骤2:控制Arduino使用Utest

utest是便携式应用程序,您无需安装即可安装可以。

最终会自动找到arduino

您可以尝试拔出它/插入将它放在另一个 USB端口上,它将重新连接。

utest可能由于缺少.dll而无法在Windows 7上运行。

如果您的计算机是最新的,则不会发生这种情况

来源:http://stackoverflow.com/questions/34218333/pyins 。..

下载该应用程序:http://utestapp.madnerd.org

单击 utest.exe

步骤3:创建自己的应用程序

让我们看看如何重复使用此应用程序,以创建自己的应用程序。

首先,我们需要安装 python 3 对其进行修改。

下载python 3(https ://www.python.org/downloads/)

在安装过程中,勾选将Python 3.5添加到PATH

然后我们需要安装 pySerial 与我们的arduino通信

打开命令提示符(Windows键+ cmd)

键入:

pip install serial

最后,测试应用程序,该应用程序可从源代码(http://utest.madnerd.org)中的 apps/utest/

打开命令提示符

转到源代码文件夹( apps/utest/)

类型:

步骤4:创建界面

我们拥有修改应用程序所需的一切。

检查出源代码:utest.py(github)

让我们看看

如何管理我们的arduino

如何用 tkinter

建立图形界面为了最简单地管理arduino,一切都由模块处理 lib/usb.py

USB

到目前为止,该模块只有两个命令

usb = USB.Device( 。.. )

连接到每个串行端口,这些串行端口在 CH340 他的名字

发送 UTest 到串行端口

如果收到“ 确定” ,它将与之连接

python utest.py

一切都在单独线程内部,以避免阻塞应用程序。

usb.write (《斯特龙g》 s 调整 )

发送字符串到arduino

如果串行端口不可用,它将尝试重新连接

GUI(TKinter)

最好使用 tkinter 来管理GUI(图形界面)

您可以在 tkinter 上找到更多信息:http://www.tkdocs.com/tutorial/index.html

创建窗口:

from lib import USB

device_name = “CH340” #Device name in Windows

device_type = “UTest” #Device type (in the arduino sketch)

device_return_string = “OK” #Answer when a response is correct

device_baudrate = 115200 #Baudrate

usb = USB.Device(device_name,device_type,device_return_string,device_baudrate,status)

创建按钮

from tkinter import *

root = Tk()

为按钮打开

Button(text=“on”,command=on).pack()

创建标签

def on():

print(“on”)

如果要修改小部件,我们需要将其保存到变量,并在另一行上使用 .pack()。我们发送标签到 USB模块 显示 连接的当前状态

status = Label(text=“Searching.。.”)

status.pack()

最后,我们生成 GUI循环。

usb = USB.Device(。..,status)

步骤5:向Arduino添加命令

我们的界面已准备就绪,

但我们需要教我们的 arduino ,以理解我们将发送的命令。

签出源代码:utest.ino(Github)

串行功能

我们使用两个功能来管理串行通信。

root.mainloop()

检查串行端口,并将任何消息转换为 string (在 readString 内部) p》

serialManager()

如果收到 UTest ,请回答确定

设备名称

您可以在第一行

serialCheck()

中更改 usb 设备的名称。添加命令

我们在 void loop()

const String usb_name = “UTest”;

内部为每个命令创建一个条件,例如

void loop() {

serialManager();

//If string received

if (readString.length() 》 0) {

serialCheck();

if (readString == “ON”){

digitalWrite(13,1);

}

if (readString == “OFF”){

digitalWrite(13,0);

}

}

//We clean the serial buffer

readString = “”;

}

发送

if (readString == “ON”){

digitalWrite(13,1);

}

时,打开内部LED指示灯可执行文件

arduino/应用程序已准备好捆绑为.exe

安装 pyinstaller ,我们将使用它来进行转换将我们的应用程序转换为单个可执行文件

pip install pyinstaller

您可以使用脚本 compile.bat 来编译应用程序》

pyinstaller --onefile --noconsole utest.py

如果要显示调试消息,请使用以下命令:

pyinstaller --onefile utest.py

您现在应该有一个/dist/utest.exe 文件

您可能会收到有关api-ms 。.. dll文件的警告。

这应该不是问题,因为这些DLL(通用C运行时)已预先安装在Windows 10上,并且以前的Windows如果它们是最新的,也应该具有它们。

步骤7:。..继续

我希望这是有用的 ,这将启发您创建Arduino应用程序!

进行一些修改后,该应用程序应可在 MacOS/Linux上运行。

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

    关注

    184

    文章

    6427

    浏览量

    184815
收藏 人收藏

    评论

    相关推荐

    LTC5599为什么不受程序控制

    近期在用LTC5599混频器,但是不受程序控制,请指教,谢谢~
    发表于 01-05 12:46

    户外便携式储能电源怎么用

    户外旅行或露营活动中,便携式储能电源是一款非常实用且方便的设备。它可以为我们提供可靠的电力支持,为各种电子设备充电。但是,对于一些新手用户来说,可能并不清楚如何正确使用户外便携式储能电源。在本文
    的头像 发表于 12-07 15:31 693次阅读

    一种超低功耗便携式高斯计的设计方案

    引言高斯计是用于测量磁场的仪器,在采矿、冶金、磁性材料生产等领域有着广泛的应用。目前国内的便携式高斯计产品存在一个重大缺点——电池寿命短,通常为20一50 h.正常使用情况下,几天时间就需要更换电池
    发表于 10-10 06:52

    采用LM358N设计的便携式太阳能充电器电路

    便携式太阳能充电器电路电子项目是使用一些常见的电子部件设计的。 如您所见,便携式太阳能充电器电路基于一个LM358N运算放大器和一个晶体管。 该稳压器提供恒定的 2.4 伏直流电,可用于为需要
    发表于 09-11 17:20

    Arduino做一个语音应用程序来打开和关闭警报

    电子发烧友网站提供《用Arduino做一个语音应用程序来打开和关闭警报.zip》资料免费下载
    发表于 07-10 10:46 0次下载
    用<b class='flag-5'>Arduino</b>做一个语音<b class='flag-5'>应用程序</b>来打开和关闭警报

    使用Arduino和处理Android应用程序DIY车速表

    电子发烧友网站提供《使用Arduino和处理Android应用程序DIY车速表.zip》资料免费下载
    发表于 07-06 11:23 0次下载
    使用<b class='flag-5'>Arduino</b>和处理Android<b class='flag-5'>应用程序</b>DIY车速表

    应用程序控制的机器人

    电子发烧友网站提供《应用程序控制的机器人.zip》资料免费下载
    发表于 07-06 10:21 0次下载
    <b class='flag-5'>应用程序控制</b>的机器人

    用于控制Arduino 10开关的PC应用程序

    电子发烧友网站提供《用于控制Arduino 10开关的PC应用程序.zip》资料免费下载
    发表于 06-28 15:30 0次下载
    用于<b class='flag-5'>控制</b><b class='flag-5'>Arduino</b> 10开关的PC<b class='flag-5'>应用程序</b>

    使用Arduino Nano 33构建嵌入式语音识别应用程序

    电子发烧友网站提供《使用Arduino Nano 33构建嵌入式语音识别应用程序.zip》资料免费下载
    发表于 06-28 14:50 1次下载
    使用<b class='flag-5'>Arduino</b> Nano 33构建嵌入式语音识别<b class='flag-5'>应用程序</b>

    使用Zerynth应用程序控制电动气动电路

    电子发烧友网站提供《使用Zerynth应用程序控制电动气动电路.zip》资料免费下载
    发表于 06-27 14:22 1次下载
    使用Zerynth<b class='flag-5'>应用程序控制</b>电动气动电路

    使用Arduino、Sigfox和Ubidot构建物联网应用程序

    电子发烧友网站提供《使用Arduino、Sigfox和Ubidot构建物联网应用程序.zip》资料免费下载
    发表于 06-20 09:20 0次下载
    使用<b class='flag-5'>Arduino</b>、Sigfox和Ubidot构建物联网<b class='flag-5'>应用程序</b>

    带有RT-Thread的Arduino应用程序

    电子发烧友网站提供《带有RT-Thread的Arduino应用程序.zip》资料免费下载
    发表于 06-14 11:22 5次下载
    带有RT-Thread的<b class='flag-5'>Arduino</b><b class='flag-5'>应用程序</b>

    是否可以通过Android应用程序控制ESP?

    您好我是这个论坛的新手,需要一些帮助。我正在使用 ESP-01 制作一个简单的 wifi 灯控制器。我想知道是否可以通过 Android 应用程序控制 ESP。
    发表于 05-10 07:04

    如何将ESP库安装到arduino IDE中?

    我想在工作中将ESP库安装到arduino IDE中。我有代理限制,我无法通过 IDE 中的库管理器下载它。 但我可以下载任何我想要的东西。只有大多数程序有限制。 我不想将它下载回家并进行便携式安装。
    发表于 05-08 07:44

    如何在Arduino ESP8266和Android应用程序中正确地实现WebSockets?

    所以,现在我也迷上了新的 IOT 家庭自动化浪潮,并想为我的家庭构建一些应用程序(调光灯、热水器温度控制)。控制部分不是问题,我想我可以说,我在 Arduino 开发方面有很好的经验,
    发表于 04-28 08:42