arduino                
            Как Python интегрируется с Arduino Uno
        
        
            
    Поиск…
Синтаксис
-  
Serial.begin(baudrate) // Set baud rate (bits per second) for serial data transmission -  
Serial.println(value) // Print data to serial port followed by Carriage Return \r and Newline character \n -  
serial.Serial((port=None, baudrate=9600, bytesize=EIGHTBITS, parity=PARITY_NONE, stopbits=STOPBITS_ONE, timeout=None, xonxoff=False, rtscts=False, write_timeout=None, dsrdtr=False, inter_byte_timeout=None) // Initialize serial port with all parameters -  
serial.readline() // Read serial data which contains Carriage Return \r and Newline character \n 
параметры
| параметр | подробности | 
|---|---|
| последовательный | Пакет Python содержит классы и методы для доступа к последовательному порту | 
| время | Пакет Python включает функции, связанные с временем | 
замечания
Я использую Arduino Uno с Arduino IDE 1.6.9 и Python 2.7.12, работающими в Windows 10.
Первая последовательная связь между Arduino и Python
В этом первом примере базовая операция последовательной записи запускается с устройства Arduino.
void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
}
void loop() {
  // put your main code here, to run repeatedly:
  Serial.println("Hello World!");
  delay(100);
}
  В setup() функция Serial.begin(9600) устанавливает скорость передачи данных для последовательной передачи данных. В этом примере используется скорость в бодах 9600. Другие значения можно прочитать здесь: Функция Arduino Serial.begin () 
 В loop() первое сообщение, которое мы хотели бы отправить, это «Hello World!». Это сообщение передается с помощью Serial.println("Hello World!") он отправит эту строку в последовательный порт в формате ASCII. В конце сообщения есть Return Carriage (CR, \r) и символ Newline (\n) . Кроме того, задержка 100 миллисекунд используется каждый раз, когда программа печатает на последовательный порт. 
Затем загрузите этот эскиз Arduino через COM-порт (помните этот номер COM-порта, как он будет использоваться в программе Python).
Программа Python, считывающая последовательные данные, отправленные с устройства Arduino, показана ниже:
import serial
import time
ser = serial.Serial('COM8', 9600)
while (1):
    print ser.readline()
    time.sleep(0.1)
 Сначала необходимо импортировать пакет pyserial. Для получения дополнительной информации об установке pyserial в среде Windows ознакомьтесь с этой инструкцией: Установка Python и pyserial . Затем мы инициализируем последовательный порт с номером COM-порта и скоростью передачи. Скорость передачи должна быть такой же, как в эскизе Arduino.
 Полученное сообщение будет напечатано во время цикла с использованием функции readline() . Здесь также используется задержка в 100 миллисекунд так же, как и в эскизе Arduino. Обратите внимание, что функция pyserial readline() требует таймаута при открытии последовательного порта (pyserial documentation: PySerial ReadLine ).