欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: Micropython教程之TPYBoard開發板DIY智能溫控小風扇 [打印本頁]

作者: bodasister    時間: 2018-12-24 13:57
標題: Micropython教程之TPYBoard開發板DIY智能溫控小風扇
    1.實驗目的

    1.?學習在PC機系統中擴展簡單I/O?接口的方法。
    2.?進一步學習編制數據輸出程序的設計方法。??
    3.?學習DS18B20的接線方法,并利用DS18B20檢測當前溫度。
    4.學習三極管9014的用法。
    5.通過18B20智能控制直流電機驅動小風扇。
    2.所需元器件

    TPYBoard板子一塊
    直流電機一個
    面包板一塊
    數據線一條
    18b20溫度傳感器
    三極管9014(NPN)一個
    杜邦線若干(蘿卜學科編程教育tpyboard。com)

    3.學習DS18B20的接線方法,檢測當前溫度




    先看一下DS18B20針腳含義,如上圖:

    TPYBoard的針腳與DS18B20的針腳對應關系如下:

TPYBoard       DS18B20   
   ————————————————     
    # 3V3   or any Pin  => VDD      
   # any   Pin        =>   DO
   #   GND           => GND

   還是看不明白的話,直接上針腳編號
   TPYBoard       DS18B20   
   ————————————————————————————
   3.3v        =>   VDD      
   GND        =>   GND
   Y10         =>   DO         


    接線ok后,在MicroPython的源碼目錄中,進入drivers\onewire\目錄,然后將目錄下的文件ds18x20.py和onewire.py復制到PYBFLASH磁盤的根目錄。復制文件后要安全退出磁盤,然后重新接入,不然找不到文件,即可運行main.py文件了,打印溫度,即可用Putty看到當前的溫度。

    main.py源代碼:

  1. #main.py
  2. import pyb
  3. from pyb import Pin
  4. from ds18x20 import DS18X20

  5. Pin("Y11",Pin.OUT_PP).low()#GND
  6. Pin("Y9",Pin.OUT_PP).high()#VCC
  7. pyb.delay(100)
  8. DQ=DS18X20(Pin('Y10'))#DQ
  9. while True:
  10.         tem = DQ.read_temp()
  11.         print(tem)
  12.         pyb.delay(1000)
復制代碼




    4.三極管的原理




    在這里我們用到三極管的開關與放大功能,給基極不同電平控制直流電機電流的通斷,以達到控制電機轉動的目的,根據三極管特性我們將集電極連接TPYBoard的3.3v,發射極連接電機一極,電機另一極接TPYboard的GND,通過溫度傳感器18B20檢測溫度,當溫度到達指定溫度時,通過TPYBoard控制三極管基極的電平,驅動直流電機轉動。

    5.源代碼




    我們按照上面的步驟做完以后,然后通電,編寫main.py文件,即可通過溫度控制風扇的轉動,具體代碼如下:
  1. #main.py
  2. import pyb
  3. from pyb import Pin
  4. from ds18x20 import DS18X20

  5. Pin("Y9",Pin.OUT_PP).high()#VCC
  6. Pin("Y11",Pin.OUT_PP).low()#GND
  7. x1 = Pin('X1', Pin.OUT_PP)
  8. pyb.delay(100)
  9. DQ=DS18X20(Pin('Y10'))#DQ
  10. while 1:
  11.     tem = DQ.read_temp()
  12.     if tem > 18:
  13.         x1.value(1)
  14.     else:
  15.         x1.value(0)
復制代碼









歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1