南方都下大雪了,苦逼的北方还没下雪,天寒地冻,不过这几天办公室空调开太大了就想到做一个温控小风扇,简单模型出来了。等夏天一定做一个美观精致的小风扇送给女朋友(如果有的话QAQ)话不多说直接上干货。(跪求附件怎么上传)

所需器件
  • TPYBoard v102板子 1块
  • 直流电机 1个
  • 面包板 1块
  • 数据线 1条
  • 三极管9014(NPN)1个
  • 杜邦线 若干
  • DS18B20 温度传感器1 个
首先连接DS18B20检测温度,不细说,直接上针脚图和接线方式
                              
TPYBoard v102的针脚与DS18B20的针脚对应关系如下:
TPYBoard DS18B20
3.3v VDD
GND GND
Y10 DO

接线OK后,将ds18x20.py和onewire.py这两个文件复制到PYBFLASH磁盘的根目录。(文件代码文章后边)复制文件后要安全退出磁盘,然后重新接入,不然找不到文件,即可运行main.py文件了,打印温度,即可用Putty看到当前的温度。

main.py源代码:
#
main.py
import pyb
from pyb import Pin
from ds18x20 import DS18X20 Pin("Y11",Pin.OUT_PP).low()#GND
Pin("Y9",Pin.OUT_PP).high()#VCC
pyb.delay(100)
DQ=DS18X20(Pin('Y10'))#DQ
while True:
tem = DQ.read_temp()
print(tem)
pyb.delay(1000)

  

OK,下面就是连接电机了,首先板子的电压驱动不了这个直流电机,所以我们需要加一个9014(三极管)放大一下电压。下图9014针脚
然后将三极管的集电极连接TPYBoard的3.3v,基极连接TPYBoard的X1,发射极连接电机一端,电机另一端连接TPYBoard的GND。然后当温度达到指定温度时电机就自行运转了。这里我设置的是18度
实物图
源代码
我们按照上面的步骤做完以后,然后通电,编写main.py文件,即可通过温度控制风扇的转动,
#main.py
import pyb
from pyb import Pin
from ds18x20 import DS18X20 Pin("Y9",Pin.OUT_PP).high()#VCC
Pin("Y11",Pin.OUT_PP).low()#GND
x1 = Pin('X1', Pin.OUT_PP)
pyb.delay(100)
DQ=DS18X20(Pin('Y10'))#DQ
while 1:
tem = DQ.read_temp()
if tem > 18:
x1.value(1)
else:
x1.value(0)

  

ds18x20.py   链接: https://pan.baidu.com/s/1eTEBeGM 密码: k1nw
onewire.py   链接: https://pan.baidu.com/s/1kWmaC55 密码: btq2

Micropython TPYBoard 智能温控小风扇资料分享的更多相关文章

  1. [Micropython]TPYBoardV102 DIY智能温控小风扇

    1.实验目的 1. 学习在PC机系统中扩展简单I/O 接口的方法. 2. 进一步学习编制数据输出程序的设计方法. 3. 学习DS18B20的接线方法,并利用DS18B20检测当前温度. 4.学习三极管 ...

  2. [MicroPython]TPYBoard智能小车“飞奔的TPYBoard装甲一号”

    智能小车作为现代的新发明,是以后的发展方向,他可以按照预先设定的模式在一个环境里自动的运作,不需要人为的管理,可应用于科学勘探等等的用途.智能小车能够实时显示时间.速度.里程,具有自动寻迹.寻光.避障 ...

  3. [转]Android 学习资料分享(2015 版)

    转 Android 学习资料分享(2015 版) 原文地址:http://www.jianshu.com/p/874ff12a4c01 目录[-] 我是如何自学Android,资料分享(2015 版) ...

  4. 我是如何自学Android,资料分享(2015 版)

    自己学了两三个月的Android,最近花了一周左右的时间写了个App——Diigoer(已开源),又花了一两周时间找工作,收到了两个Offer,也算是对自己学习的一种认可吧:我刚开始学习总结的——&l ...

  5. 我是如何自学Android,资料分享

       我是如何自学Android,资料分享(2015 版) 已经完成,我的建议是先把这一篇看完,再看2015 版的.关于我在学习中开发的项目代码,已经发布在: 爱开发-源码搜索,集成了上万个App源码 ...

  6. Android,资料分享(2015 版)

    Java 学习 我要再次强调,一定要有Java 基础(虽然现在使用其他语言也可以开发Android,但毕竟是很小众),也不要认为学习Java 两三周就可以不用管了,这会在以后的深入学习中暴露出问题,所 ...

  7. python资料分享

    python入门资料分享:链接:https://pan.baidu.com/s/1aATizMh5e0ON6xfmtxXPzA  密码:m8bf 提高资料:链接:https://pan.baidu.c ...

  8. 知乎live考研数学冲刺135+资料分享

    前言 各位学弟学妹,您好,live中本来是给出了我的邮箱,通过邮箱来获取资料,但是没有想到,后来我每天打开邮箱,都是需要回复的邮件,少则一两封,多则四五封,每天如此,也是一个比较繁琐费时的方式.我决定 ...

  9. MicroPython TPYBoard v702实现HTTP应用功能

    [Micropython]TPYBoard v702 HTTP应用功能 转载请注明文章来源,更多教程可自助参考docs.tpyboard.com,QQ技术交流群:157816561,公众号:Micro ...

随机推荐

  1. SQL语句 我喜欢上海

    select * from [user] wherer name like '上海%'

  2. precmd:6: job table full or recursion limit exceeded

    使用GDC Data Transfer Tool下载10999个isoforms.quantification.txt文件时,写了shell循环的小脚本: cat all_id_file |while ...

  3. Python学习_03_列表、元组、字符串

    列表.元组.字符串这些通过顺序访问的对象统称为序列. 序列的标准操作符 对于一般的序列对象,包括列表.元组.字符串,都具有以下的标准操作: 1. element [not] in seq判断一个元素是 ...

  4. Layout 不可思议(二)—— 两侧定宽的三列布局

    三列布局作为网页设计中最常见的布局,其实现方法早已被诸位前端大神摸透 网上相关的文章很多,原本已无必要再做赘述 不过既然开了 Layout 系列,三列布局就是必修课 本文整理了一些常用的实现方法,然后 ...

  5. angular4.0路由传递参数、获取参数最nice的写法

    研究ng4的官网,终于找到了我想要的方法.我想要的结果是用'&'拼接参数传送,这样阅读上是最好的.否则很多'/'的拼接,容易混淆参数和组件名称.一般我们页面跳转传递参数都是这样的格式:http ...

  6. Python数据分析与可视化(经典学习资料)

    Numpy:来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多,本身是由C语言开发.这个是很基础的扩展,其余的扩展都是以此为基础.数据结构为 ...

  7. java String 不可变

    关于String不可变的问题也看了很多,最近看了一篇讲的非常好的文章,总结如下 所谓的不可变,并非真的不可变String s = "123"; s = "456" ...

  8. hexo next主题为博客添加分享功能

    title: hexo next主题为博客添加分享功能 date: 2018-01-06 20:20:02 tags: [hexo博客, 博客配置] categories: hexo next主题配置 ...

  9. windbg蓝屏调试

    一般在写Windows内核程序的时候,经常会出现蓝屏的问题,这个时候一般是采用记录下dump文件然后用windbg查看得方式,具体的过程就不说了,网上一大堆的内容.现在我主要记录自己当初按照网上的方案 ...

  10. office漏洞利用--获取shell

    环境: kali系统, windows系统 流程: 在kali系统生成利用文件, kali系统下监听本地端口, windows系统打开doc文件,即可中招 第一种利用方式, 适合测试用: 从git下载 ...