Mac / PC ��Arduino Uno����篆<�������号��с��鐚�������������宴��������筝����������障����鐚������с��膣剛����������障��鐚�
Arduino�眼����PC��
Serial��篏帥�c��Arduino����絖������阪����鐚�Python�眼��������茯㏍�水����障��鐚�
Arduino��
void setup() {
Serial.begin(9600);
}
int data = 0;
void loop() {
data++;
Serial.println(data);
delay(1000);
}
�潟�潟���ゃ�������激���≪���≪���帥�ц;腓冴��������札筝����������医���紜���������茵�ず�����障��鐚�
1
2
3
4
5
6
PC / Mac
�障��python3���医���pyserial���ゃ�潟�鴻���若�����障��鐚�
$ pip3 install pyserial
Windows���c������膣��� pip install pyyaml
�潟�若����札筝��������с��鐚�
import serial
ser = serial.Serial('/dev/cu.usbmodem1101', 9600,timeout=None)
while True:
line = ser.readline() # �����т�茵����若�帥����緇�������byte��
stripped_str = str(line, 'ascii').strip() # byte������絖��������������緇�����醇�壕��ゅサ
data = int(stripped_str) # ��絖������医�ゃ��В�����眼��
print(data)
/dev/cu.usbmodem1101��������������arduino���ゃ�����c���������若����������鐚�Win����COM1����鐚�Arduino���激���≪���≪���帥���ゃ�����c���������с���障����鐚�
���������ゃ�潟��������若�帥������������絖�����������������������������鐚�python�眼�цВ���������若�帥������������������с��鐚���絖������障�障�с����羝�箙��ゃ���������膊���筝��純�����ф�医�ゃ��В������������綽�荀��с��鐚�
������������若�帥����������
AD�潟�潟���若�睡����������鋎帥�c�����若�帥�������翫����札筝�������
Arduino��
�潟�潟���у�阪���c���茵��������������若�帥�����鴻�������障��鐚�
void setup() {
Serial.begin(9600);
}
void loop() {
int data1 = analogRead(A1);
int data2 = analogRead(A2);
int data3 = analogRead(A3);
int data4 = analogRead(A4);
Serial.print(data1);
Serial.print(',');
Serial.print(data2);
Serial.print(',');
Serial.print(data3);
Serial.print(',');
Serial.println(data4);
delay(1000);
}
�激���≪���≪���帥�х∈茯�������札筝���������;腓冴�с��鐚�
311,301,292,305
364,336,316,315
287,283,278,286
274,274,272,275
Python��
import serial
ser = serial.Serial('/dev/cu.usbmodem1101', 9600,timeout=None)
while True:
line = ser.readline()
stripped_str = str(line, 'ascii').strip()
datas = [int(d) for d in stripped_str.split(',')]
print(datas)
���ゃ�潟���������� [int(d) for d in stripped_str.split(',')]
�������с��
�㍼����������鴻������茵����篏帥�c��stripped_str.split(��,��)�ц��c���������鴻�������若�帥��弘��菴����������������鴻���������������
��鐚�������������с����
��,���у�阪��������������絖�������,���у���蚊�������¥�������筝��や��ゃ�������int()�∽�違��篏帥�c���医�ゃ��В����鐚�����������������鴻��������
datas��撮�ャ���障���������������с����鐚��阪����札筝��������������障��鐚�
[365, 337, 317, 291]
[270, 272, 271, 267]
[260, 264, 265, 260]
[258, 263, 265, 258]
[257, 262, 264, 257]
[257, 262, 264, 257]
[365, 337, 317, 291]
PC����Arduino��
���������障���c������������������ON��OFF����絖������������������障��鐚�
Python��
import time
import serial
ser = serial.Serial('/dev/cu.usbmodem1101', 9600,timeout=None)
while True:
ser.write('ON\n'.encode())
time.sleep(1.0)
ser.write('OFF\n'.encode())
time.sleep(1.0)
Arduino��
���<������絖�����ON���c����鐚�OFF���c�����祉�祉�祉������������荐�菴違���障��鐚�
void setup() {
// put your setup code here, to run once:
pinMode(13, OUTPUT);
digitalWrite(13, HIGH);
Serial.begin(9600);
Serial.setTimeout(3000); /// 3 sec
}
void loop() {
// put your main code here, to run repeatedly:
String message = Serial.readStringUntil('\n');
message.trim();
if (message == "ON") {
digitalWrite(13, HIGH);
} else if (message == "OFF") {
digitalWrite(13, LOW);
}
}
ON����絖������c����Arduino�堺�推���LED (Pin 13) ���蚊����鐚�OFF����羔�����鐚������������с��鐚���絖�����紜������違�������������������障��鐚�
����篆<��腟<�障���������������с�����障����
�����������PC�����c����Arduino��菴���鐚�������������膵違��菴��������с��鐚���������������������������������障��鐚��堺�����������������с���������с�����������������帥�����������
����篁ヤ�������鐚���������PC����������Ή��Arduino�����若�帥��������������������������若�帥�������Arduino��������茵����c���祉�� ��鐚��������羆��������翫�������������Serial.available()�∽�違������篏帥���障��鐚�����篁ヤ������莨若�帥���������������с����昇�э�