pATAq 发表于 2020-7-24 11:04:37

LattePanda Delta 使用 Arduino 的正确方法?


看到社区有几位朋友讲到在 LPD 上使用板载 Arduino Leonardo 会有问题,看了一下描述,似乎是和 udev 设备规则没有正确设置有关,之前为 96boards-Hikey 烧录系统时遇见过类似的现象。关于 udev 的更多信息可以查看 (https://wiki.archlinux.org/index.php/Udev)。本文我们来安装 Arduino IDE 试试。

软件环境:
* Ubuntu MATE 18.04
* Arduino IDE 1.8.13
* Python 3.6.9
* `StandardFirmata` sketch
* `pyFirmataTest`to test Firmata communication

### 下载安装 Arduino IDE
由于 Ubuntu 18.04 软件仓库自带的 Arduino IDE 版本太过老旧,大家可以通过 PPA源 安装新版,或者至官网下载页面下载安装包,当前是 `Arduino IDE 1.8.13 Linux 64bits`。以后者为例进行安装,假设下载的安装包目录为 `~/Downloads`,打开终端,输入以下命令:

```shell
cd ~/Downloads
# 解压到 /opt 文件夹,如果提示权限问题,前面增加 sudo
tar -xvf arduino-1.8.*-linux64.tar.xz -C /opt
# 安装 Arduino IDE,并创建桌面快捷方式
cd /opt/arduino-1.8.* && sudo ./install.sh
# 发现目录下还有一个 `arduino-linux-setup.sh`,一并执行之,注意不需要管理员权限运行
arduino-linux-setup.sh $USER
```
从名称看 `arduino-linux-setup.sh` 肯定是要安装的,搜索可知其项目主页在 https://github.com/artynet/arduino-linux-setup,`Simple bash script to configure your Arduino IDE under Linux OS`,主要作用是设置 udev 规则,添加相关上传权限,设置用户组等。没有这些步骤就会出现各种奇怪的问题。

### 测试 Firmata
之前的文章 [『LattePanda 之深入学习 Firmata通讯』](https://www.cnblogs.com/sjqlwy/p/lattepanda_firmata.htm)里讲到的Firmata官方提供的 `firmata_test` 功能测试小程序已经年久失修,在 Linux 上运行不能(一个库不再默认提供,Windows 上还是ok的),找到另一个简单测试软件:[**pyFirmataTest**](https://github.com/rollingstarky/pyFirmataTest),使用起来很简单,首先运行 Arduino IDE,烧录 StandardFirmata 示例,然后运行以下命令:
```shell
cd ~/Projects && git clone https://github.com/rollingstarky/pyFirmataTest && cd pyFirmataTest
pip install pyfirmata -i https://mirrors.aliyun.com/pypi/simple
python3 firmata-test.py
```

连接正确的 Ports:`/dev/ttyACM0`,选择 `Pin13`,即可通过点选 `LOW/HIGH` 控制板载 D13 LED(蓝色开机指示灯旁边的红色灯)的开关,如果没反应可以按下 `Ard_RST` 重置一下 Arduino。


### 拓展
目前最新的 Firmata Protocol 版本为 (http://firmata.org/wiki/Download)。
从两方面来讲:
1. 常用的 pyFirmata 库简单好上手,但是目前仅支持到 Firmata 2.1
——> pymata4 库支持新版的 Firmata 协议,功能更多,但是代码繁琐一些。
2. `FirmataExpress` sketch 功能更强大,可以取代 `StandardaFirmata` sketch,但是测试不支持 pyFirmata 库。
> **FirmataExpress** adds support for:
> * HC-SR04 Ultrasonic Distance Sensors.
> * DHT Humidity/Temperature Sensors.
> * Stepper Motors.
> * Piezo Tone Generation.
> * Baud rate of 115200

简介如上,欢迎指正交流。

20060606 发表于 2020-7-30 17:47:04

lattepanda是不是出厂默认装win10?能当电脑用吗?

pATAq 发表于 2020-7-30 17:54:50

20060606 发表于 2020-7-30 17:47
lattepanda是不是出厂默认装win10?能当电脑用吗?

对,预装Windows 10,本身就是一台小电脑,手掌差不多大,性能还不错,比树莓派强多了。

#嘉诚欧巴# 发表于 2020-7-31 15:12:46

感谢填坑{:7_219:}

微笑的rockets 发表于 2020-8-3 15:57:59

感谢填坑!

pATAq 发表于 2020-8-3 22:03:34

微笑的rockets 发表于 2020-8-3 15:57
感谢填坑!

感谢大佬回复~

20060606 发表于 2020-8-18 11:28:32

pATAq 发表于 2020-7-30 17:54
对,预装Windows 10,本身就是一台小电脑,手掌差不多大,性能还不错,比树莓派强多了。 ...

谢谢指导

Shuuei 发表于 2020-8-28 22:21:18

啊 彦祖老哥好! 学习ing ing ing

gray6666 发表于 2020-9-30 17:57:48

看完帖子,感觉又想买板子了{:6_202:}

三春牛-创客 发表于 2023-7-18 21:40:48

不错!!

三春牛-创客 发表于 2023-7-18 21:42:08

赞赞赞赞!很棒的教程

花生编程 发表于 2023-7-19 23:26:19

赞赞赞赞赞

花生编程 发表于 2023-7-19 23:27:24

感谢指导!!
页: [1]
查看完整版本: LattePanda Delta 使用 Arduino 的正确方法?