Python端的一个带有Arduino卡的串行通信库

arduinopythonserialrpc的Python项目详细描述


ArduinopythonSerialPC公司

ArduinoPythonSerialRpc是带有Arduino卡的串行通信库的Python端。在

此通信的Arduino部分被实现到ArduinoSerialRpc存储库中。在

沟通模式的实施形式如下:

  • 远程方法调用。其中Arduino调用声明为Python类的方法。在
  • 远程过程调用。其中Python进程调用在Arduino草图中定义的函数。在

通信是点对点模式,通过串行(USB)端口执行。在

建筑

Tbdf公司

特点

  • 双向通信
  • 所需Arduino资源少
  • 易于学习的界面
  • 灵活的命名约定

入门

Arduino侧安装

要求:

Python侧安装

pip安装arduinopythonserialrpc

Arduino草图基本示例

#include<ArduinoSerialRpc.h>ArduinoSerialRpcrpc("Arduino www.mauxilium.it");voidsetup(){Serial.begin(9600);rpc.registerArduinoFunction("go",startTest);rpc.registerArduinoFunction("halt",stopTest);}// ##########################################################################// BE AWARE!!!// DO NOT FORGET TO ADD THE FOLLOWING serialEvent() FUNCTION INTO YOUR SKETCHvoidserialEvent(){rpc.serialEventHandler();}// ##########################################################################boolexecFlag=false;intcounter=0;voidstartTest(){execFlag=true;}voidstopTest(){counter=0;execFlag=false;}voidloop(){delay(200);if(execFlag){rpc.executeRemoteMethod("ping_from_arduino",counter,counter++);}}

Python类基本示例

Python测试程序的简化版本可以是:

^{pr2}$

构建并运行

在GitHub存储库中: https://github.com/Mauxilium/ArduinoPythonSerialRpc

您可以在源路径中找到另一个真正完整的用例:

  • ArduinopythonSerialPC\测试\集成\草图
  • ArduinoPythonSerialRpc\tests\integration\python

要执行此集成示例测试,请执行以下步骤:

  • 打开草图ArduInOptionserialRpc\tests\integration\sketch\素描.ino在
  • 下载到你的Arduino卡
  • 打开一个终端并转到ArduinoPythonSerialRpc\tests\integration\python
  • 修改集成的第158行上的端口名_测试.py根据你的系统
  • 执行以下命令
python integration_test.py

下一步

  • ArduinoPythonSerialRpc教程-一个教程,用于发现库的更复杂的使用(工作中)
  • www.mauxilium.it-我其他项目的参考站点(正在工作)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java不兼容类型:MainActivity无法转换为LifecycleOwner   java安卓是一种更有效的读取大文本文件的方法   java导出LWJGL本地人与项目?(IntelliJ IDEA)   JDK更新后,JavaJShell不再在下一行打印输出   父类对象上的继承Java比较子属性   Java:有没有一个容器可以有效地结合HashMap和ArrayList?   安卓 Java对象指针   java在annotationdriven Spring MVC应用程序中实现大气   java 安卓源代码构建应用找不到安卓supportv4。罐子   文件系统上的抽象层和Java中的jar/zip   java在水平滚动视图中添加多个图像?   java如何从firebase实时数据库中获取字符串数组   WIndows 10工作站上的java未满足链接错误   java命令在终端中工作,但在使用过程中出现“无结束引号”错误。执行官