基于單片機(jī)的記憶杯墊
本文引用地址:http://www.ex-cimer.com/article/248016.htm
當(dāng)代快節(jié)奏的工作生活中,忙忙碌碌總使得我們疲憊不堪,一杯熱咖啡,一杯溫水也許是現(xiàn)代都市人最便捷的放松方式。對(duì)于長(zhǎng)期坐在電腦前的技術(shù)宅來說,一杯熱飲除了可以補(bǔ)充我們必須的水分,也可以使我們適當(dāng)?shù)男№?/p>
筆者作為職業(yè)碼農(nóng),卻常常遇到這樣的困擾:早上沖好的咖啡,放著放著就涼了,同事胃不好,需要喝溫水,可一忙就忘記了,常常是整杯水都放涼了才想起。想必每個(gè)人都有這樣的經(jīng)歷,這次的設(shè)計(jì),就是給大家解決這一問題,除了可以節(jié)約水資源,還能及時(shí)提醒人們飲用熱飲,喜歡喝熱飲的朋友,以后不必再因?yàn)槔鋮s的熱飲而苦皺眉頭了!
工作原理:
值得補(bǔ)充的是,這次的杯墊是用廢棄的光盤制作的(無意中給華碩做廣告了),中間的硬幣就是導(dǎo)熱材料,下面涂了硅脂,和DS18B20粘在一起。DS18B20就是這次設(shè)計(jì)的核心,通過感應(yīng)溫度、并記錄溫度達(dá)到提醒人們喝熱飲的功能。在使用非隔熱杯子的前提下(材料不限,只要不是隔熱的),杯子內(nèi)液體的溫度勢(shì)必會(huì)影響杯子表層溫度,雖然我們不確定杯子表層溫度的具體數(shù)值,但可以肯定的是,杯子的溫度是和里面液體的溫度是正比的。根據(jù)這個(gè)原理,當(dāng)使用者覺得某個(gè)時(shí)刻的熱飲溫度剛剛好適合自己飲用時(shí),就把杯子放到杯墊上,稍等五六秒鐘,給DS18B20一點(diǎn)時(shí)間來升溫,然后按下“記憶”鍵,此時(shí)杯子外部的溫度就被記錄到了單片機(jī)的eeprom里了,即便是斷電后,此數(shù)據(jù)仍會(huì)存在。
當(dāng)下次沖好了一杯咖啡,就可以把杯子放到杯墊上面了,溫度傳感器會(huì)將采集到的溫度T值與eeprom里的數(shù)值A(chǔ)做比較,當(dāng)A-1 < T < A+1 時(shí),杯墊側(cè)面的八個(gè)二極管就會(huì)閃爍,以此來提示主人喝咖啡!
溫度的差值也可以根據(jù)設(shè)計(jì)者自行改變,比如在比較寒冷的地區(qū),T與A的差值可以通過改變程序來實(shí)現(xiàn),我在南方,實(shí)際測(cè)試的時(shí)候發(fā)現(xiàn)T與A的值在正負(fù)1之間就足夠了。
記憶鍵在向單片機(jī)記錄溫度數(shù)據(jù)的時(shí)候,也會(huì)擦除之前的數(shù)據(jù),這樣一個(gè)按鈕就可以完成杯墊的操作。
作為單片機(jī)系統(tǒng)來說,其實(shí)就是DS18B20和eeprom的應(yīng)用,國產(chǎn)的stc單片機(jī)大多數(shù)都自帶了一定大小的eeprom,這就給設(shè)計(jì)者帶來了極大的方便。為了讓電路更加簡(jiǎn)潔,這次選用的是STC11F04E的1T單片機(jī),具備4K的程序存儲(chǔ)空間和1K的eeprom空間,20管腳的封裝設(shè)計(jì)大大減小了PCB面積。下面就是原理圖:
程序設(shè)計(jì):
這里要做出說明的是,大多數(shù)DS18B20程序代碼都是12T單片機(jī)下設(shè)計(jì)的,而1T單片機(jī)指令速度要比12T單片機(jī)快很多,這就導(dǎo)致了DS18B20程序不能直接拿來調(diào)用。筆者根據(jù)stc的官方資料,通過計(jì)算指令外加邏輯分析儀測(cè)試的方式,得出的結(jié)論是,11系列的1T單片機(jī)要比12T單片機(jī)指令快6.5倍左右,根據(jù)這個(gè)數(shù)據(jù)來修改原始DS18B20程序的延時(shí)程序和eeprom程序,這樣就能保證系統(tǒng)的穩(wěn)定性。
STC的官方資料很明確的給出了eeprom的原始程序,筆者根據(jù)自己的理解,對(duì)官方程序作了一些改動(dòng),為了使程序更加簡(jiǎn)潔,應(yīng)用了C語言的宏定義,自己也是做了對(duì)應(yīng)的庫文件,方便實(shí)用。現(xiàn)在的程序代碼略長(zhǎng),我整理后會(huì)補(bǔ)發(fā),程序公開情況請(qǐng)關(guān)注工作室騰訊微博:Chinked-out(@136678431)。原理圖我是用proteus畫的,并不是實(shí)物中的STC11F04E單片機(jī),但端口是通用的,只需要根據(jù)原理圖對(duì)應(yīng)STC11F04E單片機(jī)連線即可。
制作過程:
一、準(zhǔn)備工作
1、像圖1中這樣,給DS18B20接好導(dǎo)線,并做好絕緣。
2、利用易拉罐,剪出兩個(gè)直徑在3.5CM左右的圓形
3、準(zhǔn)備圖3中這種較厚的雙面膠,五金店里都有賣,很便宜
4、根據(jù)原理圖焊接好的電路板,由于電路很簡(jiǎn)單,這里我就不做過多解釋了。
二、組裝
1、像圖4這樣,用雙面膠粘好溫度傳感器和一個(gè)金屬原片
2、如圖5,把剛剛步驟中的圓片粘在光盤上,注意是溫度傳感器在光盤中間的圓孔位置。
3、把光盤反過來,由于另一面已經(jīng)固定好了,就可以直接涂硅脂了,可以多涂點(diǎn),保證下一步的順利
4、然后把四周涂有502膠水的金屬圓片像圖中那樣粘在光盤中間(因?yàn)榇蠖鄶?shù)杯子的底部都是凹進(jìn)去的,所以為了增加接觸面,可以用有一定厚度的金屬,比如一元硬幣,視頻中的實(shí)物就是硬幣)
待膠水干后,就可以在光盤的地面操作了,將電池盒(7號(hào))和電路板粘在光盤上,用前文說的這種雙面膠效果很好的,不僅粘的結(jié)實(shí),還可以調(diào)整高度,保證光盤翻過來放置時(shí)是水平的。
c語言相關(guān)文章:c語言教程
單片機(jī)相關(guān)文章:單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)視頻教程
單片機(jī)相關(guān)文章:單片機(jī)工作原理
評(píng)論