在树莓派环境下 Arduino 上传固件可以使用图形界面和ssh 界面两种方式上传固件。
一、用CLI 方式的话主要使用avrdude软件,可以用另外的简化shell 来实现。
git clone https://github.com/sakunamary/AVRDuino.git
进入AVRDuino目录,运行下面命令:
cd AvrDuino
chmod +x ./avrduino.sh
sudo ./avrduino.sh install
脚本会自动处理,下载软件、拷贝文件等。
使用方式:
avrduino MCU type programmer port .hex file like this :
sudo avrduino uno usbtiny usb:001:001 ./boot.hex
注意的是hex文件最好是绝对路径,这样不会拷贝错误数据。
二、用图形界面,不过需要用到虚拟机,因为图形界面是win版本软件。用的软件叫 AVRDUDESS
1、安装虚拟环境 mono
sudo apt-get install libmono-system-windows-forms4.0-cil
这是简单版的运行环境,不需要安装完整版。
2、安装avrdude
sudo apt-get install avrdude gcc-avr
3、在下载网页下载zip包 然后解压,在解压后的目录中
运行 sudo mono avrdudess.exe
项目主页http://blog.zakkemble.net/avrdudess-a-gui-for-avrdude/
github : https://github.com/zkemble/AVRDUDESS
如果 树莓派连接arduino的TX/RX不行的情况下,可以修改 /boot/config.txt
在最后添加 一句
dtoverlay=pi3-miniuart-bt
Ctrl+X 保存退出。
或者使用以下语句,直接在/boot/config.txt 插入配置语句
echo dtoverlay=pi3-miniuart-bt | sudo tee -a /boot/config.txt
然后再关闭蓝牙的uart服务。
sudo systemctl disable hciuart
用于关闭树莓派串口。不过副作用就是蓝牙被关闭了。