python中while true怎么用_如何在python中运行两个whiletrue语句?

我正在尝试用Python为我的覆盆子Pi制作一个门刷卡系统。我把程序分成两部分:一个门报警器和一个刷卡记录系统。这两个程序单独工作,但是如何将这两个程序合并到一个python文件中呢?我试过穿线,但似乎不管用。在

以下是程序:

1.)门警报:如果门保持打开一段时间,led将闪烁,然后警报将响起import time

import RPi.GPIO as gpio

led = 37

buzzer = 11

door = 16

gpio.setmode(gpio.BOARD)

gpio.setwarnings(False)

gpio.setup(buzzer, gpio.OUT)

gpio.setup(led, gpio.OUT)

gpio.setup(door, gpio.IN, pull_up_down=gpio.PUD_UP)

def blink(buzzer):

gpio.output(buzzer, True)

time.sleep(0.1)

gpio.output(buzzer, False)

time.sleep(0.1)

return

def blink(led):

gpio.output(led, True)

time.sleep(1)

gpio.output(led, False)

time.sleep(1)

return

while True:

if gpio.input(door):

time.sleep(3)

for i in range(0,5):

blink(led)

for i in range (0,5):

blink(buzzer)

else:

gpio.output(buzzer, False)

gpio.cleanup()

2)刷卡记录系统:当有人刷卡时,led闪烁并拍照

^{pr2}$

(更新)另外,下面是我在线程方面的尝试:import time

import RPi.GPIO as gpio

import os

import datetime

from threading import Thread

led = 37

buzzer = 11

door = 16

t = datetime.datetime.now()

gpio.setmode(gpio.BOARD)

gpio.setwarnings(False)

gpio.setup(buzzer, gpio.OUT)

gpio.setup(led, gpio.OUT)

gpio.setup(door, gpio.IN, pull_up_down=gpio.PUD_UP)

def blink(buzzer):

gpio.output(buzzer, True)

time.sleep(0.1)

gpio.output(buzzer, False)

time.sleep(0.1)

return

def blink(led):

gpio.output(led, True)

time.sleep(1)

gpio.output(led, False)

time.sleep(1)

return

def doorsensor():

while True:

if gpio.input(door):

time.sleep(3)

for i in range(0,5):

blink(led)

for i in range (0,5):

blink(buzzer)

else:

gpio.output(buzzer, False)

def cardreader():

while True:

card = raw_input()

f = open("Laptop Sign Out" + '.txt', 'a')

f.write("OneCard Number: " + card[1:10] + " Time: " + t.strftime("%m-%d-%Y %H:%M:%S"))

f.write('\n')

f.write(';')

f.write('\n')

f.close()

time.sleep(1)

for i in range(0,3):

blink(led)

os.system('fswebcam ~/Desktop/Photos/%H%M%S.jpeg')

time.sleep(3)

f1 = Thread(target = doorsensor())

f2 = Thread(target = cardreader())

f2.start()

f1.start()

gpio.cleanup()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值