以树莓派作为控制板,通过树莓派的GPIO与BME/P280连接起来,同时将温湿度显示在两个4位数码管的模块上。
网上关于该模块介绍较少,且多是C语言,来一个python版本。
python代码如下:
数码管显示模块代码:
def Show(i_data,area):
while i_data > 10000:
i_data = i_data - 10000
............................
............................
def LED4_Display(i_index,hx_location,area,p):
if p==1:
................................
..............................
def LED_OUT(X,area):
if area == 1:
......................................
.....................................
X<<=1
def show_():
.....................
窗口界面代码
def refresh():
global text1,text2
.............................
.............................
def in_():
global text1,text2,windows
windows = tk.Tk()
.................................
.................................
温湿度读取代码
Temp = Hum = 0
bus.write_byte(address,0x88)
dig_T1_1 = bus.read_byte(address)
bus.write_byte(address,0x89)
dig_T1_2 = bus.read_byte(address)
dig_T1 = (dig_T1_2<<8|dig_T1_1)
bus.write_byte(address,0x8A)
dig_T2_1 = bus.read_byte(address)
......................
.....................
......................
def read():
global Temp,Hum
while True:
#温度相关数值读取和计算
bus.write_byte(address,Temp_MSB)
T_value1 = bus.read_byte(address)
bus.write_byte(address,Temp_LSB)
T_value2 = bus.read_byte(address)
bus.write_byte(address,Temp_XLSB)
T_value3 = bus.read_byte(address)
Temp = (T_value1<<16|T_value2<<8|T_value3)>>4
........................
........................
........................
#湿度相关数值读取和计算
bus.write_byte(address,Hum_MSB)
H_value1 = bus.read_byte(address)
bus.write_byte(address,Hum_LSB)
H_value2 = bus.read_byte(address)
............................
............................
............................