Beispiel #1
0
    global m

    if SAKS.dip_switch.is_on[0] == True and SAKS.dip_switch.is_on[1]==True:

        h+=1

    if SAKS.dip_switch.is_on[0] == False and SAKS.dip_switch.is_on[1]==True:

        m+=1

    if SAKS.dip_switch.is_on[0] == True and SAKS.dip_switch.is_on[1] == False:

        h-=1

    if SAKS.dip_switch.is_on[0] == False and SAKS.dip_switch.is_on[1]==False:

        m-=1

    return None



if __name__ == "__main__":

    SAKS.digital_display.show(("%02d%02d" % (0, 0)))

    SAKS.tact_event_handler = tact_event_handler()

    SAKS.digital_display.show(("%02d%02d" % (h, m)))
Beispiel #2
0
        resultlst.append(mark(result))  #将本次游戏的结果计入结果列表
        digr.off()  #熄灭数码管


def mark(gap):  #设置计分方式
    if gap >= 0.5:
        return 0
    elif gap >= 0.3:
        return 150 - 300 * gap
    elif gap >= 0.18:
        return 135 - 250 * gap
    else:
        return 100 - 55 * gap


SAKS.tact_event_handler = tact  #开始按键操作

resultlst = []  #创建记录结果的列表
for round in range(3):  #进行3次游戏
    beept = 3 + random.randrange(7)  #随机设置一个大于3秒的等待时间
    time.sleep(beept)
    prest = time.time()  #记录下开始时刻
    buz.beep(0.03)  #蜂鸣器响起
time.sleep(3)

SAKS.tact_event_handler = None  #停止按键操作
print(resultlst)
average = (resultlst[0] + resultlst[1] + resultlst[2]) / 3  #计算3次结果的平均值
a = (average // 10) % 10  #计算平均结果的各位数字
b = (math.floor(average)) % 10
c = (math.floor(10 * average)) % 10
Beispiel #3
0
    #判断是否是右边的轻触开关被触发,并且是在被按下
    if pin == PINS.TACT_RIGHT and status == True:
        #在小灯当前状态关着时将它们点亮并修改小灯当前状态为开; 在小灯当前状态开着时将它们灭掉并修改小灯当前状态为关
        if not __light_status:
            SAKS.ledrow.items[0].on()
            SAKS.ledrow.items[1].on()
            #检测第1位拨码开关状态是否为ON
            if SAKS.dip_switch.is_on[0] == True:
                #点亮第3个LED
                SAKS.ledrow.items[2].on()
            #检测第2位拨码开关状态是否为ON
            if SAKS.dip_switch.is_on[1] == True:
                #点亮第4个LED
                SAKS.ledrow.items[3].on()
        else:
            SAKS.ledrow.items[0].off()
            SAKS.ledrow.items[1].off()
            SAKS.ledrow.items[2].off()
            SAKS.ledrow.items[3].off()

        __light_status = not __light_status

    #print("%d - %s" % (pin, status))


if __name__ == "__main__":
    #设定拨码开关回调函数
    SAKS.dip_switch_status_changed_handler = dip_switch_status_changed_handler
    #设定轻触开关回调函数
    SAKS.tact_event_handler = tact_event_handler
    input("Enter any keys to exit...")
Beispiel #4
0
    :param pin: pin number which stauts of tact is changed
    :param status: current status
    :return: void
    '''
    # print('tact_event_handler')
    # print("%d - %s" % (pin, status))
    if status != True:
        # print('status is true')
        return

    # print("pin %d" % pin)
    saks.ledrow.off()
    if (pin == 16):
        # print("pin 16")
        show_temp_or_wet(1)
        saks.ledrow.on_for_index(0)
    else:
        # print("pin %d" % pin)
        show_temp_or_wet(2)
        saks.ledrow.on_for_index(7)


if __name__ == '__main__':
    saks = SAKSHAT()
    sensor = Adafruit_DHT.DHT11
    pin = 24

    saks.tact_event_handler = tact_event_handler
    while True:
        get_temp_or_wet()
        time.sleep(1)
Beispiel #5
0
            over,
        ))  #添加最后一个线程,关闭所有的元件,清空所有列表和字符串
        for t in threads:
            t.setDaemon(True)
            t.start()  #同时启动threads列表中的线程


##################
def bling(n):

    SAKS.ledrow.off_for_index(int(sled[(-1 - n)]))  #关闭上一次亮起的led灯
    SAKS.buzzer.beep(0.025)  #蜂鸣器工作
    SAKS.ledrow.on_for_index(int(sled[(-2 - n)]))  #点亮当前轮到的LED灯


def nums(n):
    SAKS.digital_display.show(
        sled[(-n - 5):(-n - 1)])  #在四位数码管显示当前及紧随其后的三个即将亮起的LED灯编码


def over():
    SAKS.ledrow.off()
    SAKS.digital_display.off()  #关闭各种显示,清空各种列表和字符串
    tlist[:] = []
    timelist[:] = []
    sled = ''


#################
SAKS.tact_event_handler = tact_event_handler  #将原始的按钮反应函数修改为我们所定义的新按钮反应函数
            light_on(x)
            time.sleep(0.3)
    '''print('I Have Been Touched!')
    #display_on()
    time.sleep(0.1)
    light_on(list_light[1])
    time.sleep(1)
    alarm_on()
    time.sleep(0.5)
    light_on(list_light[-1])
    time.sleep(1)
    #display_on(0,0)
    time.sleep(0.5)'''


SAKS.tact_event_handler = my_touch


def f_recieve():
    while 1:
        try:
            a = recieve_email()
        except:
            a = ''
        if a and a.startswith('to_mp3'):
            list_message.append(a[6:])
            change('收到一条消息,现在您共有%s 条未读消息!' % len(list_message))


def f():
    while 1: