python - 从 Python 3 控制 Arduino 继电器

标签 python python-3.x arduino serial-port

我正在尝试用 Python 编写一个程序。它的作用是向 Arduino 发送一个数字,然后 Arduino 打开或不打开继电器。但它不会打开继电器。

Arduino:

const int pinLED = 8;

void setup()
{
  Serial.begin(9600);
  pinMode(pinLED, OUTPUT);
}

void loop()
{
  digitalWrite(pinLED, HIGH);
  if (Serial.available() > 0)
  {
    char option = Serial.read();
    if (option == '1')
    {
      digitalWrite(pinLED, LOW);

    }
  }
}

Python:

import serial, time
arduino = serial.Serial("COM6", 9600)
time.sleep(2)
arduino.write(b'1')
arduino.close()

最佳答案

从代码来看,如果您将写入设置为低,它会立即被这部分代码覆盖为高:

void loop()
{
  digitalWrite(pinLED, HIGH);
  if (Serial.available() > 0)
  {
....

因此,使用“0”创建新条件,并删除在每个循环中写入的 digitalWrite 行:

const int pinLED = 8;

void setup()
{
  Serial.begin(9600);
  pinMode(pinLED, OUTPUT);
}

void loop()
{
  if (Serial.available() > 0)
  {
    char option = Serial.read();
    if (option == '1')
    {
      digitalWrite(pinLED, LOW);

    }
   if (option == '0')
    {
      digitalWrite(pinLED, HIGH);

    }

  }
}

关于python - 从 Python 3 控制 Arduino 继电器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54271009/

相关文章:

python - 如何使用生成器在换行符上拆分套接字读取数据

python - Django 管理员 : __str__ returned non-string (type int)

python : correct use of set_completion_display_matches_hook

bluetooth - 无法将 HM-10 蓝牙连接到 Arduino Uno

node.js - 任务计划管理

python - 如何在 Windows 中查找 python 进程/对象使用的内存总量

python - 在python中比较多个文件的最有效方法

c++ - 将图像转换为像素数组

python - 在 apache 服务器上运行的 Cherrypy 应用程序出现套接字错误

python-3.x - 将 HTML 结果转换为 float