micopython 18b20_MicroPython控制8*8LED點陣顯示溫度

MicroPython顧名思義就是可以在單片機上跑的Python,借助Micro Python,用戶完全可以通過Python腳本語言實現硬件底層的訪問和控制,比如說控制LED燈泡、LCD顯示器、讀取電壓、控制電機、訪問SD卡等。目前支持MicroPython的開發板有好幾種,下面就以TPYBoard為例,簡單介紹一下簡易溫度傳感器的制作方法。

164844_LBRo_2849130.jpg

1、實驗目的

1. 學習在PC機系統中擴展簡單I/O 接口的方法。

2. 進一步學習編制數據輸出程序的設計方法。

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

3. 學習8*8LED點陣接線方法,并將當前溫度顯示

2、所需元器件

TPYBoard板子一塊

數據線一條

杜邦線若干

8*8LED點陣一個

DS18B20溫度傳感器一個

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

164956_KnL9_2849130.png

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

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

TPYBoard DS18B20

----------------

# 3V3 or any Pin => VDD

# any Pin => DO

# GND => GND

還是看不明白的話,直接上針腳編號

TPYBoard LCD5110

----------------------------

3.3v => VDD

GND => GND

Y10 => DO

接線ok后,在MicroPython的源碼目錄中,進入drivers\onewire\目錄,然后將目錄下的文件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)

4、點亮8*8LED點陣

165201_Vnv5_2849130.png

點陣后面有兩排針腳,一排以1開頭,即1-8針腳,一排以9開頭,即9-16針腳,上圖中〇中的數字對應的即為針腳的對應的數字,當ROW 的PIN NO.高電平,COL PIN NO.低電平時候,我們的LED即全部點亮了,為了方便操作行和列,我們可以將ROW的8個引腳接到我們TPYBoard的X1-X8,COL的8個引腳接到我們TPYBoard的Y1-Y8,這樣我們控制X引腳Y引腳就可以控制哪個點亮跟滅了,想顯示任何字都沒問題,快來試試吧。

5、點將溫度顯示在8*8LED點陣上

接線成功以后,我們將測試出溫度通過分割函數將十位,個位,小數點,以及后面的數字顯示出來,代碼如下:

import pyb

from pyb import Pin

from ds18x20 import DS18X20

x_PIN = [Pin(i, Pin.OUT_PP) for i in ['X1','X2','X3','X4','X5','X6','X7','X8']]

y_PIN = [Pin(i, Pin.OUT_PP) for i in ['Y1','Y2','Y3','Y4','Y5','Y6','Y7','Y8']]

temp=['0000,0110,0110,0110,0110,0110,0110,0000','1101,1101,1101,1101,1101,1101,1101,1101,

'0000,1110,1110,0000,0111,0111,0111,0000','0000,1110,1110,0000,1110,1110,1110,0000',

'0101,0101,0101,0000,1101,1101,1101,1101','0000,0111,0111,0000,1110,1110,1110,0000',

'0000,0111,0111,0000,0110,0110,0110,0000','0000,1110,1110,1110,1110,1110,1110,1110',

'0000,0110,0110,0000,0110,0110,0110,0000','0000,0110,0110,0000,1110,1110,1110,0000']

tempValue=0

def show(l_num,r_num):

flag=0

for x_ in range(0,8):

for x_ in range(0,8):

if x_!=flag:

x_PIN[x_].value(0)

left_ = temp[l_num]

left_item=left_.split(',')

right_ = temp[r_num]

right_item=right_.split(',')

li_l=left_item[flag]

li_r=right_item[flag]

y_PIN[0].value(int(li_l[:1]))

y_PIN[1].value(int(li_l[1:2]))

y_PIN[2].value(int(li_l[2:3]))

y_PIN[3].value(int(li_l[3:4]))

y_PIN[4].value(int(li_r[:1]))

y_PIN[5].value(int(li_r[1:2]))

y_PIN[6].value(int(li_r[2:3]))

y_PIN[7].value(int(li_r[3:4]))

x_PIN[flag].value(1)

flag=flag+1

pyb.delay(2)

def display(time_,l_num,r_num):

for x in range(0,time_):

for y in range(0,110):

show(l_num,r_num)

if __name__=='__main__':

#time_t=Timer(4,freq=5,callback=randSensor)

DQ=DS18X20(Pin('Y10'))#DQ

while 1:

tempValue =int(DQ.read_temp())

print(tempValue)

l_n=tempValue//10

r_n=tempValue%10

print(l_n)

print(r_n)

display(60,l_n,r_n)

for i in x_PIN:

i.value(0)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/532170.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/532170.shtml
英文地址,請注明出處:http://en.pswp.cn/news/532170.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

計算機組裝維護文獻,組裝計算機論文,關于《計算機組裝維護》課程教學相關參考文獻資料-免費論文范文...

導讀:此文是一篇組裝計算機論文范文,為你的畢業論文寫作提供有價值的參考。【摘 要】計算機硬件知識的教與學對于計算機相關專業的學生來說,重要性是不言而喻的.由于教學資源缺乏,面對這門以操作性強為特點的課程,如何利用學校有限的條件培養出符合職業資格標準的學生是該專業教…

ip變更會影響賬號登陸嗎_【教程】PUBG賬號被盜導致封禁申訴解封教程

很多朋友詢問PUBG在被盜號后被盜號者開掛導致永封該如何申訴解封,現在結合一些玩家被盜號及成功申訴的經歷,詳列一下步驟。本方法只適用于被盜后開掛導致封禁的賬號,那些自己開掛被封的孤兒不用往下看了。一.先向steam客服申訴 找回自己的ste…

html5專著,參考文獻專著

參考文獻類型:專著[M],會議論文集[C],報紙文章[N],期刊文章[J], 學位論文[D], 報告[R], 標準[S], 專利[P],論文集中的析出文獻[A]關于你又知道多少呢?下面是小編為大家整…

濾鏡怎么調_手機、電腦怎么剪輯視頻?真心求推薦實用工具

自從加入了短視頻自媒體運營這個行業以后,我就開始接觸到各種各樣的手機、電腦視頻剪輯、制作軟件,用它們來處理、完成被安排到的工作任務。很多時候,我也用它們來剪視頻,借此來練練手、積累下素材。記得剛進入這個行業的時候&…

2021計算機基礎知識題庫,2021~2021計算機基礎知識練習題

2021~2021計算機基礎知識練習題 2021~2021計算機基礎知識練習題 北京聯合大學 2021~2021計算機基礎知識練習題 一、選擇題 1.記錄在存儲介質上的一組相關信息的集合稱為______。 A)程序 B)磁盤 C)軟件 D)文件 2.當一個文件更名后,文件的內容會______。 A)完全消失 B…

計算機背板知識,你知道背板的選購技巧嗎?

原標題:你知道背板的選購技巧嗎?背板就是母板,子板插在上面構成系統,計算機背板說成背板也成立,只不過背板更多的知識線路板而已,沒有實際的器件,只起信號通路作用。背板在設備機箱的后面。一般…

git 切換分支_git 入門教程之分支總覽

分支就是一條獨立的時間線,既有分支,必有主干,正如一棵樹談到樹枝,必有樹干一樣的道理.我們先前對git 的全部操作默認都是在主干上進行的,這個主干也是一種特殊的分支,名為 master 分支.無論是穿越歷史還是撤銷更改,我們都或多或少接觸過時間線,git 管理的版本串在一起就組成了…

計算機應用技術專業全國排名,計算機應用技術專業全國排名

排名學校名稱等級排名學校名稱等級排名學校名稱等級1清華大學A19武漢大學A37合肥工業大學A2浙江大學A20華南理工大學A38蘇州大學A3北京航空航天大學A21電子科技大學A39江蘇大學A4華中科技大學A22大連理工大學A40大連海事大學A5北京大學A23天津大學A41中山大學A6上海交通大學A24…

python中加減乘除是什么數據類型_python中,數字類型計算

說明: 今天在看python數字類型的操作,在此記錄下。 操作過程: 1.數字的加減乘除 >>> 2 2 4 >>> 4 - 2 2 >>> 2 - 4 -2 >>> 2 * 2 4 >>> 2 / 2 #除法的結果會返回小數的結果,如果是…

正在鎖定計算機 win7轉圈圈打不開,Win7網絡連接圖標一直轉圈的原因和解決方法...

Win7網絡連接圖標一直轉圈是什么情況?如果用戶發現Win7系統中的網絡圖標一直處在轉圈狀態,則表示該網絡不能正常加載,且無法識別,筆者通過檢查發現網絡依賴的服務Network List Service沒有自動啟動,啟動之后可解決該問…

jvm內存模型和java內存模型_JVM運行時內存模型綜述

JVM內存模型JVM分為五個區域:虛擬機棧、本地方法棧、方法區、堆、程序計數器。JVM不同區域的占用內存大小不同,一般情況下堆最大,程序計數器較小。JVM五個區中虛擬機棧、本地方法棧、程序計數器為線程私有,方法區和堆為線程共享區…

python數獨游戲源代碼100行_python實現自動解數獨小程序

跟朋友最近聊起來數獨游戲,突發奇想使用python編寫一個自動計算數獨解的小程序。 數獨的規則不再過多闡述,在此描述一下程序的主要思路: (當前程序只針對于簡單的數獨,更復雜的還待深入挖掘) 1.計算當前每個…

getline沒有與參數列表匹配的重載函數_C++新增基礎功能解析—函數重載功能的使用...

喜歡的可以收藏轉發加關注“函數重載”指的是可以有多個同名的函數,因此 名稱進行了重載。這兩個術語指的是同一回事,但我們通常使用函數重載。可以通過函數重載來設計? 系列函數——它們完成相同的工作,但使用不同的參數列表。重載函數就像…

公關文秘專業要學計算機,文秘相關專業有哪些

文秘相關專業有哪些引導語:想必大多數人對文秘這個崗位都不陌生,那么與文秘相關專業有哪些呢?接下來是小編為你帶來收集整理的文章,歡迎閱讀!一、中文類專業:中文及相關專業主要包括漢語言文學、漢語言、中…

java seek指針 換行符_Java網絡編程探究|樂字節

大家好,我是樂字節小樂,上次給大家講述了Java中的IO流之輸出流|樂字節,本文將會給大家講述網絡編程。主要內容如下:網絡 網絡分層 IP位置 端口port 網絡編程一、 網絡 1、概念網絡即將不同區域的電腦連接到一起, 組成局…

switch 條件判斷_C語言學習第7篇---C語言三大結構之一判斷結構

if語句分析1.if語句用于根據條件選擇執行語句2.else不能獨立存在且總是與它最近的if想匹配3.else語句后可以接其他if語句if語句中零值比較的注意點---bool型變量應該直接出現在條件中,不要進行比較---變量和0值進行比較時,0值應該出現在比較符合左邊---f…

計算機應用基礎授課提綱,《計算機應用基礎》講授提綱(1).ppt

《計算機應用基礎》講授提綱(1).ppt (49頁)本資源提供全文預覽,點擊全文預覽即可全文預覽,如果喜歡文檔就下載吧,查找使用更方便哦!14.9 積分*第四講 Windows基礎基本操作文件操作控制面板中文操作處理磁盤管理命令提示符*Windows 基本操作桌…

工業機器人演示碼垛和卸垛_眾多企業購買自動碼垛機的原因是什么?

企業為什么要購買自動碼垛機呢?難道僅僅是因為它可以自動,讓工作變得輕松簡單嗎?當然不是,如果自動碼垛機僅僅能夠為企業帶來這么點的好處的話,相信是沒有企業愿意花大價錢來購買這些自動碼垛機的,那么企業究竟是看中了自動碼垛…

python 100days github_GitHub - rghwer/Python-100-Days: Python - 100天從新手到大師

Python - 100天從新手到大師 作者:駱昊 最近有很多想學習Python的小伙伴陸陸續續加入我們的交流群,目前我們的交流群人數已經超過一萬人,光靠我自己已經無法及時處理小伙伴們的入群申請,更無法及時為大家解答問題。目前我的想法是…

python期末項目書怎么寫_自己寫了一部書怎么出版

一部書從無到有,包括編寫和出版。編寫可以自己寫,但出版的問題,得靠規定的出版途徑來解決。那么,自己寫了一部書怎么出版?通常包括兩種方法:找出版社直接合作公費出版和找出版公司合作自費出版。自己寫了一部書怎么出…