可指令性Arduino管理器,强通用iOSApp允许通过约40个不同部件控制 Arduino板
部分可用部件有:
显示部件
LED部件
开关部件推键部件
knob部件
滑动器部件
Arduino管理员还提供(附加成本):
代码生成器 :上加允许生成基本 Arduino代码支持您选择部件
PIN代码生成器链接部件 Arduino PINs在许多情况下,你不需要写单行代码
语音命令 :允许通过语音命令控制大多数Arduino管理员部件
ESP32编程支持 ArduinoIDE多版自15.0.0 Arduino管理器可用ESP32运行微信代码
ArduinoiOS管理器可从iTunes商店7.99美元Android和MacOSX都可用(请注意所有平台上并非所有部件都可用)。
更多信息、文档、视频教程、库和Arduino管理器实例Arduino主管网站
步骤1:初始搭建
本节涵盖如何安装ESP32和所需开发工具MicroPython
下级步骤仅在你首次用MicroPython搭建棋盘时完成
搭建一切并运行 步步这些步骤
打开命令提示
安装rshell和estools使用:
pi安装rshellpi安装esptool
安装所需驱动并定位USB端口ESP32建立串行连接
安装MicroPython固件
sptool.py-chipe32-port
擦除esptool.py-chipe32-port
aud460800写-z0x1000
连接棋盘使用rshell
Rshell-p
双重检验iClud签名
if not, go toset并启动iPhone
启动 Arduino管理器iPhone或iPad
打开左侧菜单
拷贝必备python支持代码
返回命令提示并发布命令复制所需软件
Windows系统
cp -r iCloudDrive/iCloud~boco~fabrizio~ArduinoManager/Python/Support/* /pyboard/
MacOS系统
s-r/users/
/Library/Mobile\ Documents/iCloud~boco~fabrizio~ArduinoManager/Documents/Python/Support/* /pyboard/
inux系统Linux无法直接访问iCloud系统,你必须使用首选浏览器,从iCloud.com下载Python/Support文件夹到自选目录并输入下命令
s-r
/*/pyboard/
关闭 Rshell出入口
准备建简单示例电路并用MicroPython控制Arduino管理器
步骤2:测试电路
准备搭建简单测试电路参考电图和面包板图片构建
板测量温度(LM35)和电压至强力计并发至OS设备
OS设备发送命令开关LED1(Yellow)并命令移动Servo
LED2显示OS设备连接板
连接卡阅读器
CLK/SCK转GPIO18
DO/MISO转GPIO19
DI/MOSI转GPIO23
CS转GPIO17
步骤3:配置并运行示例代码
文本编辑器直接从文件夹iCloud驱动器打开示例码(example.py):
Arduino管理员/Python/Support
inux使用下载目录替代
随网络相应修改下列参数
网络SID
网络策略
棋盘IP
棋盘移植
NETWORKMASK(通常为255.552.50.0)
GateWAY地址
ESP32板连接计算机并启动外壳
Rshell-p
复制修改示例到棋盘
Windows系统
cp -r iCloudDrive/iCloud~boco~fabrizio~ArduinoManager/Python/Support/example.py /pyboard/
MacOS系统
s-r/users/
/Library/Mobile\ Documents/iCloud~boco~fabrizio~ArduinoManager/Documents/Python/Support/example.py /pyboard/
inux系统
s-r
/example.py/pyboard/
切换到Expl向棋盘输入发布命令
重试
启动示例代码
导入示例.main
似曾相识
INFO:AM服务器:Server Init完成INFO:AM服务器:INFO:AM服务器:socket_server
上台显示,你很好去
注意1:每次开机时,你必须使用rshell连接它,切换反转码比启动示例代码自动启动示例代码启动时,您必须重命名文件示例.py至maject.py
Rshell-p
sp/pyboard/example.py/pyboard/main.pyrm/pyboard/example.py
注2:不使用rshell和rpl,你可以使用更多方便用户工具写出ython代码并上传某些兼容MicroPython
步骤4:连接Arduino管理员
连接 Arduino管理员ESP32板时,
启动 Arduino管理器iPhone/iPad
打开左侧菜单
磁带连接板
上传磁带添加新连接
输入下列信息:
连接名 :随你例ESP32运行Python
IP地址 :IP值相同你输入示例.py
IP端口 :与示例中输入的值相同.py
超时 :可原封不动
磁带Ok
选择刚创建连接
几秒后屏幕左下端连接指示器应变绿,红色LED应拆开
步骤5:配置 Arduino管理器
开关使用底部右切
贴贴插入显示元件
磁场刚下拉并输入:T
您应该能读取LM35测量温度
添加另一个显示部件并输入:MLG
双滑显示部件、开机配置并切换文本
显示元件中文本消息应翻转
添加开关部件并输入:S1
触控开关时,应可开关黄LED
添加LED部件并输入:Led13
LED应跟随板上黄色LED
双击LED部件可选择首选颜色
添加knob部件并输入:knob
移动拨号,servo电机应改变位置
添加自定义部件
双击文件应能看到SD卡根目录中的文件列表并打开文件
添加推键部件并输入:推键1
按下按钮时,红色LED应关上几毫秒并重开
双击推键可选择首选颜色
添加图部件并输入:Pot
打开面包板电容计图应显示
添加定时器部件并输入:A1
双滑定时器部件并分分钟设置时间
定时器过期后,servo电机移到初始位置,连接LED闪存几毫秒
添加登录数据图部件并输入
双接部件和回接刷新
图显示自动存储到SD卡中的温度值
添加命令部件并输入:Cmd_01
双击部件并输入:blink
双击元件
md_01按键,红色LED应关几毫秒后回转
添加控制台部件
md_01按钮时,控制台部件上应显示消息
注1-移动部件移动部件 :
切换编辑模式
长拍部件移动直到边界变红
移动部件期望位置
注2-删除部件删除部件:
切换编辑模式
长拍部件移动直到边界变红
释放指头
滑动部件
简单探索Arduino管理器的一些特征和部分可用部件还有很多东西需要观察学习
下一节专门学习更多例子python代码
步骤6:理解Python代码
ython代码支持 Arduino管理员主要基于回调函数
做工函数定期调用 代码读传感器 命令启动器
processIncomingMessages- 从OS设备接收数据时调用此函数
processOutgoingMessages定期调用向iOS设备发送数据
doSync- 函数连接iOS设备后立即调用并用于向它发送状态信息
进程ARARM报警时调用
设备连接OS设备连接ESP32板时调用
deviceDisconnectedOS设备从ESP32板断开时调用
显示每个函数
DoWork函数中强力计位置读取(pa35.read())以同样方式读取温度传感器并实现电压转换温度后温度存入日志文件
async def doWork(): global pot global temperature global todayTSamplingCounter global todayTNumberOfSamples pot = pa35.read() temperature = 100 * getVoltage(pa32) if todayTSamplingCounter >= 10: todayTSamplingCounter = 0 todayTNumberOfSamples += 1 if iosController.sdFileSize('TodayT') == 0 or todayTNumberOfSamples == 100: iosController.sdPurgeLogData('TodayT') iosController.sdLogLabels('TodayT', 'V1') todayTNumberOfSamples = 0 iosController.sdLog('TodayT', temperature) return
进程InwareMessages调用接收的每一消息并有两个参数:
可变- 元件名称发送数据
传值数据关联部件
aync def进程 Int(value)sssservo.duce/servoLog/ioscentral/blink/ioscentral/
S1切换元件S1发送S1时,p5插件设置为1[p5value(int(value))]并开通LEDknob元件Knob1发送值时(范围0,1023),该值转换为范围40,115控制servo电机
进程输出Messages定期调用向连接iOS设备发送数据
async def进程流出Messages (): 等待iosCoverer. writeMessage ('Pot',pot)等待iosCovertrol.writeMessage('T',te
OS设备连接ESP32板并发送信息初始化某些部件如开关元件和Knob元件和显示元件配置为仅文本时,DoSync函数才调用一次
async def doSync(变量):如果变量sssagess
教程作者:Fab64