前提需要把micropython的固件安装到系统中

安装micropython到esp8266中

本实验需要:

1. ESP8266(我的是Wemos D1)

2. DHT11

3. Nokia5110 LCD

连线:

DHT11 out --> D2(GPIO-016) (-接入GND,+接入3.3vcc)

Nokia 5110 LCD

WeMos D1 (ESP8266) Nokia 5110  LCD 描述
D8  GPIO0 0 RST 0 --> Rst
D9 (GPIO2) 1 CE 2--> ce
D10 (GPIO15) 2 DC 15-->display data/command
D11 (GPIO13) 3 Din 13 SPI MOSI --> data input
D13 (GPIO14) 4 Clk 14 --> clk
3V3 5 Vcc 3.3V
D12 (GPIO12) 6 BL gpio12
Gnd 7 Gnd Ground

用到的库:

GitHub - mcauser/micropython-pcd8544: MicroPython driver for Nokia 5110 PCD8544 84x48 LCD modules

dht,micropython自带

上代码:

dht11.py

import dht
from machine import Pinclass DHT11():def __init__(self, pin=14):self.dht11 = dht.DHT11(Pin(16))def read_dht(self):self.dht11.measure()return [self.dht11.temperature(),self.dht11.humidity()]

ampy -p /dev/ttyUSB0 dht11.py

ampy -p /dev/ttyUSB0 pcd8544.py

main.py

import time, ustruct
from machine import I2C, Pin, SPI# Nokia 5110
import pcd8544, framebuf# Temp sensor
import dht11
temp_pin = 16
dht = dht11.DHT11(temp_pin)# Initialise SPI for display
spi = SPI(1, baudrate=80000000, polarity=0, phase=0)
ce = Pin(2)
dc = Pin(15)
rst = Pin(0)# backlight on
bl = Pin(12, Pin.OUT, value=1)lcd = pcd8544.PCD8544(spi, ce, dc, rst)# Initialise framebuffer for display
buffer = bytearray((lcd.height // 8) * lcd.width)
framebuf = framebuf.FrameBuffer1(buffer, lcd.width, lcd.height)# Update display
while(True):temp, humi = dht.read_dht()framebuf.fill(0)framebuf.text("DHT11 Temp Humi", 0, 0, 1)framebuf.text("Temp", 0, 11, 1)framebuf.text("%.1f" % temp, 0, 20, 1)framebuf.text("Humidity", 0, 31, 1)framebuf.text("%.1f" % humi, 0, 40, 1)lcd.data(buffer)time.sleep_ms(4000)

Python版本的温湿度+Nokia5110 display(SPI)相关推荐

  1. linux下载哪个python版本-Linux下切换Python版本的几种方法

    本篇博文面向Linux用户,在Ubuntu下测试通过 0 为什么需要有两个版本的Python Python2和Python3不兼容是每个接触过Python的开发者都知道的事,虽说Python3是未来, ...

  2. 2021-01-28 粒子群优化算法-Python版本和Matlab函数 particleswarm 调用

    粒子群优化算法-Python版本和Matlab函数 particleswarm 调用 前两天分享了粒子群优化算法的原理和Matlab原理实现,本文分享一下Python代码下的PSO实现以及Matlab ...

  3. linux下面升级 Python版本并修改yum属性信息

    最近需要在linux下使用python,故需要升级一下python版本,上网查询了一下相关资料,更新了一下linux下面的python环境,记录如下: linux下面升级 Python版本并修改yum ...

  4. opencv4 python 版本_Opencv4 with Python3.6

    最近在做一个手指追踪,涉及到opencv.一开始选了个基于nodejs的opencv项目,不过环境配置项目的examples死活无法运行,可能和我macOS自己升级了catalina测试版有关.不过倒 ...

  5. 是男人就坚持20秒—python版本

    记得玩这个游戏的时候是初中三年级,那时候在qq空间,网页版的,是男人就坚持20秒!很好奇!玩得忘了吃饭,还是坚持不到20秒,现在给大家机会! # coding = utf-8 # time 2015- ...

  6. 如何查看服务器上的显卡和Python版本信息

    1.查看显卡信息 可以看到,这个服务器上有十张英伟达的显卡,processes中是各显卡的内存利用率.显卡:3090,cuda:11.1. https://zhidao.baidu.com/quest ...

  7. 1.Python版本及其虚拟环境管理:pyenv和pyenv-virtualenv

    pyenv和pyenv-virtualenv管理Python工作环境 @[TOC](pyenv和pyenv-virtualenv管理Python工作环境) 使用pyenv管理不同的Python版本 1 ...

  8. 对python版本设置版本控制

    目录 一.linux版本控制 1.update-alternatives原理 2.查看版本信息 3.查看链接信息 4.软链接切换 5.清除链接 二.对python版本设置版本控制 1.设置python ...

  9. 多版本python共存,安装三方库到指定python版本 多Python版本和虚拟环境

    多个Python版本:在同一台机器上安装不同的Python,例如2.7和3.4. 虚拟环境:独立的环境,既可以同时安装特定版本的Python,也可以安装任何特定于项目的软件包,而不会影响任何其他项目. ...

最新文章

  1. Flask中实现数据库的增删改查
  2. 让你的名字在百度排名前列
  3. Spring中的常用注解
  4. leetcode-242-有效的字母异位词
  5. C语言中,scanf与scanf_s的简单区别
  6. matlab与微分方程
  7. hibernate缓存详解
  8. 安全系列之一:如何利用IPSec保证远程桌面的安全性!(上)
  9. C++顺序表(模板总结)
  10. css中visibility与display的区别
  11. Intel 的 micro-architecture 发展历程
  12. itextpdf实现多PDF文件合并为一个PDF文档
  13. AMD GPU任务调度(2)—— 内核态分析
  14. navicat 优化mysql_navicat怎么实现查询优化
  15. Termux设置自启动
  16. 【置顶】图灵近期出版和即将出版的新书
  17. 自动驾驶汽车为什么需要高精度定位?干货都在这里
  18. 【个人研究】21世纪西方运用脑电(EEG)的音乐研究动向分析(一)
  19. 百度云网盘链接不存在解决办法
  20. 2021年低压电工免费试题及低压电工考试总结

热门文章

  1. 多多情报通:拼多多可以看到什么软件?拼多多的大数据分析软件是什么?
  2. 人脸识别系统OpenCV+dlib+python(含数据库)Pyqt5界面设计 项目源码 毕业设计
  3. MFC中链接access2013数据库
  4. Web性能测试模型小结
  5. 陈浩计算机应用,陈浩
  6. 计算机组成原理仿真,计算机组成原理虚拟仿真实验平台研究
  7. 华为9306配置备忘(以太网
  8. 利用计算机计算极限切除时间的主要步骤,电力系统暂态复习题
  9. 电力系统暂态稳定仿真/simulink仿真 simulink搭建单机无穷大系统进行暂态稳定性仿真
  10. android 多媒体框架服务之StagefrightPlayer和OMXCodec实现原理学习