python串口

因为每次运行都是串口已经打开了,不知道是不是树莓派的串口自动打开,于是把ser.open()注释了

#!/usr/bin/env python
import serial
import time

def main():
	ser = serial.Serial("/dev/ttyACM0",9600,timeout=0.5) #树莓派连接arduino的串口
	print(ser.name)
	print(ser.port)
	#ser.open()	

	while True:
		a = input('''please input control command:
1 led->high
2 led->low
''')
		if (a==1):
			ser.write("1")
		if (a==2):
			ser.write("2")
		time.sleep(2)
		data = ser.readline()
		print(data)
	#ser.close()
		
if __name__ == '__main__':
	main()

arduino代码:Arduino 的输出基本就用两个函数 print 和 println,区别在于后者比前者多了回车换行

int val;
int ledpin=13;
  
void setup()  
{  
  Serial.begin(9600);
  pinMode(ledpin,OUTPUT);
}  
  
void loop()  
{  
  val=Serial.read();
  if(val=='1')
  {
    digitalWrite(ledpin,HIGH);
    Serial.println("led light");
    delay(500);      
  } 
  if(val=='2')
  {
    digitalWrite(ledpin,LOW);
    Serial.println("led dark");
    delay(500);      
  } 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值