溫度濕度監(jiān)控系統(tǒng)的設(shè)計(jì)
3 軟件設(shè)計(jì)
3.1 測量設(shè)計(jì)
在程序開始時(shí),微處理器首先用一組“啟動(dòng)傳輸”時(shí)序表示數(shù)據(jù)傳輸?shù)某跏蓟?,然后發(fā)出一個(gè)8位的命令碼,這個(gè)命令碼包含3個(gè)地址位(必須設(shè)定為000)和5 個(gè)命令位。發(fā)送完該命令代碼(命令代碼含義如表l所示),將DATA數(shù)據(jù)線設(shè)為輸入狀態(tài)等待SHTll的響應(yīng)。SHTll接收到上述地址和命令碼后,在第 8個(gè)時(shí)鐘下降沿將DATA數(shù)據(jù)線下拉為低電平作為響應(yīng)信號(hào)。在第9個(gè)時(shí)鐘下降沿之后,SHTll將DATA數(shù)據(jù)線恢復(fù)為高電平,這表示已經(jīng)正確地接收到測量指令。DATA數(shù)據(jù)線恢復(fù)后,SHTll開始測量當(dāng)前溫度或濕度,測量結(jié)束后,再次將DATA數(shù)據(jù)線下拉為低電平,這表示測量已經(jīng)結(jié)束。微處理器檢測到 DATA數(shù)據(jù)線被拉低后,給出時(shí)鐘信號(hào)。SHTll接著傳輸2 bit的測量數(shù)據(jù)和1 bit的校驗(yàn)數(shù)據(jù),微處
理器需要通過下拉DATA數(shù)據(jù)線以確認(rèn)每個(gè)字節(jié)。首先在8個(gè)時(shí)鐘下降沿輸出高字節(jié)數(shù)據(jù),在第9個(gè)時(shí)鐘下降沿,微處理器將DATA數(shù)據(jù)線拉低作為響應(yīng)信號(hào),然后釋放DATA數(shù)據(jù)線。在隨后8個(gè)時(shí)鐘下降沿SHTll發(fā)出低字節(jié)數(shù)據(jù);接下來的時(shí)鐘下降沿微處理器再次將DATA數(shù)據(jù)線拉低作為接收數(shù)據(jù)的響應(yīng)信號(hào)。最后8個(gè)時(shí)鐘下降沿SHTll發(fā)出校驗(yàn)數(shù)據(jù),微處理器不予應(yīng)答則表示通訊結(jié)束。在測量和通訊結(jié)束后,SHTll自動(dòng)進(jìn)入休眠模式。經(jīng)測試,該系統(tǒng)可以對溫度和濕度進(jìn)行監(jiān)控。
3.2 LED顯示設(shè)計(jì)
微處理器通過P4.0口串行輸出數(shù)據(jù)到SN74HC595D。輸出完成一個(gè)字節(jié)后,如果給一個(gè)鎖存信號(hào),則SN74HC595D就并行輸出,在數(shù)碼管上顯示數(shù)據(jù)。如果沒有給鎖存信號(hào),而是繼續(xù)輸出第二個(gè)字節(jié),這時(shí)第一個(gè)SN74HC595D將前一個(gè)字節(jié)的數(shù)據(jù)通過串行輸出管腳輸出到第二個(gè)SN7 4HC595D的輸入管腳。當(dāng)輸出結(jié)束時(shí),兩個(gè)SN74HC595D分別存儲(chǔ)了兩個(gè)字節(jié)的數(shù)據(jù)。此時(shí)如果微處理器給出鎖存信號(hào),則兩個(gè)SN74HC595D通過并行輸出將數(shù)據(jù)分別顯示在兩個(gè)數(shù)碼管上。
3.3 鍵盤輸入設(shè)計(jì)
由于所有的列線都被上拉到3.3 V,因此當(dāng)任何鍵都沒有被按下的情況下,所有的列線上都是高電平。如果在P1.7管腳上輸出低電平,同時(shí)行線的其他管腳上輸出高電平時(shí),當(dāng)“S01”鍵被按下時(shí),P1.0就為低電平;當(dāng)“S02”鍵被按下時(shí),P1.1就為低電平;當(dāng)“S03”鍵被按下,則P1.2就為低電平;當(dāng)“S04”鍵被按下,P1.3為就低電平。通過設(shè)置一條行線的輸出就可以獲取列線上的相應(yīng)狀態(tài),從而獲得鍵盤輸入值。同理,如果依次在其他列線上輸出低電平,就可以獲取到其他鍵的輸入值。通過這樣的掃描方式,就可以實(shí)現(xiàn)鍵盤的輸入。鍵盤掃描結(jié)果如圖4所示。本文引用地址:http://m.butianyuan.cn/article/162562.htm
可以看出,當(dāng)按鍵盤的4、0、5和6鍵時(shí),單片機(jī)可以接收到準(zhǔn)確的數(shù)據(jù)。當(dāng)輸入?yún)?shù)后,微處理器每次測量數(shù)據(jù)后都會(huì)與存儲(chǔ)的參數(shù)進(jìn)行比較,如果超出則發(fā)出警報(bào)。
4 結(jié)束語
文中介紹了數(shù)字溫度濕度監(jiān)控系統(tǒng)的實(shí)現(xiàn)方案,硬件連接以及各個(gè)功能部分的設(shè)計(jì)。經(jīng)測試,該系統(tǒng)可以實(shí)現(xiàn)對溫度和濕度進(jìn)行實(shí)時(shí)測量和監(jiān)控,達(dá)到了設(shè)計(jì)要求。
評(píng)論