第35讲:智能温度测量系统(综合实验)c python import RPi.GPIO as GPIO import importlib import time import sys # BOARD pin numbering LedR = 11 LedG = 12 LedB = 13 Buzz = 15 #ds18b20 = '28-031467805fff' #location = '/sys/bus/w1/devices/' + ds18b20 + '/w1_slave' joystick = importlib.import_module('15_joystick_PS2') ds18b20 = importlib.import_module('26_ds18b20') beep = importlib.import_module('10_active_buzzer') rgb = importlib.import_module('02_rgb_led') joystick.setup() ds18b20.setup() beep.setup(Buzz) rgb.setup(LedR, LedG, LedB) color = {'Red':0xFF0000, 'Green':0x00FF00, 'Blue':0x0000FF} def setup(): global lowl, highl lowl = 29 highl = 31 def edge(): global lowl, highl temp = joystick.direction() if temp == 'Pressed': destroy() quit() if temp == 'up' and lowl < highl-1: highl += 1 if temp == 'down' and lowl >= -5: highl -= 1 if temp == 'right' and highl <= 125: lowl += 1 if temp == 'left' and lowl < highl-1: lowl -= 1 def loop(): while True: edge() temp = ds18b20.read() print 'The lower limit of temperature : ', lowl print 'The upper limit of temperature : ', highl print 'Current temperature : ', temp if float(temp) < float(lowl): rgb.setColor(color['Blue']) for i in range(0, 3): beep.beep(0.5) if temp >= float(lowl) and temp < float(highl): rgb.setColor(color['Green']) if temp >= float(highl): rgb.setColor(color['Red']) for i in range(0, 3): beep.beep(0.1) def destroy(): beep.destroy() joystick.destroy() ds18b20.destroy() rgb.destroy() GPIO.cleanup() if __name__ == "__main__": try: setup() loop() except KeyboardInterrupt: destroy()
2022-05-27 11:05:39 3KB 树莓派
1
用STM32F103控制,多路传感器同时采集数据,并有可视化上位机软件。附有源代码及详细的制作过程。
1
一种多用的智能温度测量仪器的设计及其实现的方法,涵盖制作的全过程
2021-06-28 20:37:16 430KB 智能 温度测量 仪器
1