Raspberry Pi 未通过 USB 连接到 Arduino
Raspberry Pi Not Connecting to Arduino via USB
我正在学习本教程:(http://www.seeedstudio.com/recipe/index.php?controller=recipe&action=show&recipe_id=166)
我有 Raspberry Pi 通过 USB 连接到 Arduino
当我在终端中 运行 python 时,命令按预期工作并且 arduino 按指示闪烁。
然而,当我将命令放入 python 脚本并执行 .py 文件时,无论我传递的数字是多少,引脚 13 上的 LED 会快速闪烁 3 或 4 次,然后暂停并再次缓慢闪烁。
我不明白为什么它没有像预期的那样 运行ning。 arduino 如何解释通过终端 python (>>>) 发送的串行消息和执行 arduino.py.
的方式存在明显差异
当我 运行 dmesg 时,我得到:
pi@raspberrypi ~ $ dmesg | grep tty
[ 0.000000] Kernel command line: dma.dmachans=0x7f35 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2709.boardrev=0xa01041 bcm2709.serial=0x4c5954ea smsc95xx.macaddr=B8:27:EB:59:54:EA bcm2708_fb.fbswap=1 bcm2709.disk_led_gpio=47 bcm2709.disk_led_active_low=0 sdhci-bcm2708.emmc_clock_freq=250000000 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000 dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
[ 0.002073] console [tty1] enabled
[ 0.195158] 3f201000.uart: ttyAMA0 at MMIO 0x3f201000 (irq = 83, base_baud = 0) is a PL011 rev2
[ 6.986035] usb 1-1.3: ch341-uart converter now attached to ttyUSB0
[ 271.283091] ch341-uart ttyUSB0: ch341-uart converter now disconnected from ttyUSB0
[ 273.926013] usb 1-1.5: ch341-uart converter now attached to ttyUSB0
[ 455.883149] ch341-uart ttyUSB0: ch341-uart converter now disconnected from ttyUSB0
[ 530.727358] usb 1-1.3: ch341-uart converter now attached to ttyUSB0
当我在终端中 运行 python --version 时,我得到 2.7.3
当我在脚本中打印 sys.version 时,它显示 [GCC 4.6.3]
arduino.py:
#!/usr/bin/env python
import serial
ser = serial.Serial('/dev/ttyUSB0', 9600)
ser.write("3")
已解决!
似乎打开串行连接导致我的 Arduino 重置...我在打开连接后放了一个 time.sleep(3)。
我的代码是:
import serial
import time
ser = serial.Serial('/dev/ttyUSB0', 9600)
time.sleep(3)
ser.write('2')
很奇怪这个问题发生在可执行文件中,而不是在控制台中。
我正在学习本教程:(http://www.seeedstudio.com/recipe/index.php?controller=recipe&action=show&recipe_id=166)
我有 Raspberry Pi 通过 USB 连接到 Arduino
当我在终端中 运行 python 时,命令按预期工作并且 arduino 按指示闪烁。
然而,当我将命令放入 python 脚本并执行 .py 文件时,无论我传递的数字是多少,引脚 13 上的 LED 会快速闪烁 3 或 4 次,然后暂停并再次缓慢闪烁。
我不明白为什么它没有像预期的那样 运行ning。 arduino 如何解释通过终端 python (>>>) 发送的串行消息和执行 arduino.py.
的方式存在明显差异当我 运行 dmesg 时,我得到:
pi@raspberrypi ~ $ dmesg | grep tty
[ 0.000000] Kernel command line: dma.dmachans=0x7f35 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2709.boardrev=0xa01041 bcm2709.serial=0x4c5954ea smsc95xx.macaddr=B8:27:EB:59:54:EA bcm2708_fb.fbswap=1 bcm2709.disk_led_gpio=47 bcm2709.disk_led_active_low=0 sdhci-bcm2708.emmc_clock_freq=250000000 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000 dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
[ 0.002073] console [tty1] enabled
[ 0.195158] 3f201000.uart: ttyAMA0 at MMIO 0x3f201000 (irq = 83, base_baud = 0) is a PL011 rev2
[ 6.986035] usb 1-1.3: ch341-uart converter now attached to ttyUSB0
[ 271.283091] ch341-uart ttyUSB0: ch341-uart converter now disconnected from ttyUSB0
[ 273.926013] usb 1-1.5: ch341-uart converter now attached to ttyUSB0
[ 455.883149] ch341-uart ttyUSB0: ch341-uart converter now disconnected from ttyUSB0
[ 530.727358] usb 1-1.3: ch341-uart converter now attached to ttyUSB0
当我在终端中 运行 python --version 时,我得到 2.7.3
当我在脚本中打印 sys.version 时,它显示 [GCC 4.6.3]
arduino.py:
#!/usr/bin/env python
import serial
ser = serial.Serial('/dev/ttyUSB0', 9600)
ser.write("3")
已解决!
似乎打开串行连接导致我的 Arduino 重置...我在打开连接后放了一个 time.sleep(3)。
我的代码是:
import serial
import time
ser = serial.Serial('/dev/ttyUSB0', 9600)
time.sleep(3)
ser.write('2')
很奇怪这个问题发生在可执行文件中,而不是在控制台中。