找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 2327|回复: 0

[讨论] 两个py程序同时对一个串口进行操作,为什么不冲突?

1

主题

1

帖子

1

积分

贫民

积分
1
serenity 发表于 2018-10-22 17:39:17 | 显示全部楼层 |阅读模式
写了两份一样的py代码,分别控制同一个串口的两个开关A和B.在两个进程1和2中分别运行该脚本,发现两个操作都可以正常执行,没有报错也没冲突.

想请教一下:
1.为什么进程1使用串口后,进程2再去调用串口连接,没有报错?
2.两个进程是共用了一个串口连接吗?我尝试打印两个串口ser的信息,发现两个进程的id都是一样的.是不是python在运行两个进程时,也实现了两个串口实例的引用?
代码大概如下所示:
  1. import serial,time
  2. flag = 0
  3. ser = serial.Serial('/dev/ttyUSB0',9600,timeout=30)
  4. while 1:
  5.     if 0 == flag:
  6.         ser.write('open a')
  7.         flag = 1
  8.     else:
  9.         ser.write('close a')
  10.         flag = 0
复制代码
  1. import serial,time
  2. flag = 0
  3. ser = serial.Serial('/dev/ttyUSB0',9600,timeout=30)
  4. while 1:
  5.     if 0 == flag:
  6.         ser.write('open b')
  7.         flag = 1
  8.     else:
  9.         ser.write('close b')
  10.         flag = 0
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表