久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 4297|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

迷你氣壓溫濕度表制作

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:71235 發(fā)表于 2014-12-27 22:08 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
先看成品圖
  
    掌心大小,這是我目前做的有完備功能的、最小的DIY了。
    再看功能:1、可以顯示實(shí)時(shí)氣壓、溫度、濕度,可以選擇顯示或者3項(xiàng)輪流顯示;2、自帶鋰電,具有電池保護(hù)、充電控制電路;

    一、淵源:
    做這個(gè)DIY起源于一年前的一個(gè)設(shè)想:那就是做一個(gè)無(wú)線的氣象站,采用成熟的傳感器芯片,有一個(gè)室外采集終端和室內(nèi)采集、顯示終端,通過(guò)無(wú)線連接,后期又補(bǔ)充了網(wǎng)絡(luò)推送數(shù)據(jù)和GSM數(shù)據(jù)查詢(xún)功能,并已經(jīng)選好了具體的芯片型號(hào),只差下決心去做了,只是發(fā)現(xiàn)工程對(duì)自己來(lái)說(shuō)還是有點(diǎn)浩大了,要做兩套不同的程序、要兩套程序統(tǒng)調(diào)、要考慮外殼的設(shè)計(jì)安裝,還有室外終端的供電問(wèn)題,無(wú)線信號(hào)強(qiáng)度問(wèn)題,這又涉及到無(wú)線模塊選擇的問(wèn)題,最終設(shè)想暫時(shí)中止,這一停就是一年多時(shí)間。

    二、啟動(dòng):
    動(dòng)力來(lái)自于多方面:1、拜淘寶所賜,發(fā)現(xiàn)淘寶上有一種4位段式液晶顯示器,個(gè)頭很小,價(jià)格比此前長(zhǎng)沙太陽(yáng)人的模塊便宜,也是三線式接口;2、單位里有不少?zèng)]人要的迷你磁帶盒,透明度很高,很適合做小東西的外殼;3、空閑得很,閑著也是閑著。

    三、電路設(shè)想:顯示用4位的HTB8832A段式液晶顯示器,氣壓采集用博世的BMP0805,溫濕度用盛世瑞恩的SHT10,精度是濕度4.5%,溫度0.5度,鋰電用600mah的,加一塊保護(hù)板和充電管理板,主控芯片用ATTINY24,2K容量,因?yàn)锽MP0805最高工作電壓是3.6v,而鋰電充滿(mǎn)電后是4.2v,為了安全決定采用3.3v的供電電壓,本來(lái)如果沒(méi)這個(gè)限制的話,整個(gè)系統(tǒng)都可以不用穩(wěn)壓了,直接用電池。

    四、模塊測(cè)試:
    共有四個(gè)模塊要測(cè)試:1、LCD 顯示模塊;2;SHT10溫濕度模塊;3、BMP0805氣壓模塊;4、充電管理模塊。

    (一)、LCD模塊:采用的是HT1621驅(qū)動(dòng)芯片,以前用的是長(zhǎng)沙太陽(yáng)人的模塊,兩線或者三線,段碼要么是正碼要么反碼,跟LED數(shù)碼管相差不大,剛開(kāi)始測(cè)試時(shí)也是按照普通數(shù)碼管編制的段碼表,發(fā)現(xiàn)顯示的數(shù)字無(wú)論如何都不對(duì),而店主提供的數(shù)據(jù)表也看得一頭霧水,研究了半天的HT1621數(shù)據(jù)手冊(cè),基本搞清了原來(lái),卻和現(xiàn)實(shí)的顯示效果對(duì)不上號(hào),最后采用一個(gè)筆畫(huà)一個(gè)筆畫(huà)顯示,這才搞定了段碼表,但是還是發(fā)現(xiàn)了一個(gè)問(wèn)題,就是供電電壓是5v,而不是店主說(shuō)的3.3v,模塊上也沒(méi)有調(diào)整元件,這樣電路的供電要修改了,修改成了:主控、氣壓、溫濕度模塊仍舊用3.3v,LCD另外加一5v個(gè)升壓模塊,因?yàn)槭菃蜗虻耐ㄓ崳圆槐乜紤]電平轉(zhuǎn)換的問(wèn)題;臨時(shí)又測(cè)試了模塊的電流,不加升壓是500ua左右,加了升壓是1.8ma,離我的想法有差距了,我計(jì)劃中的整機(jī)耗電電流應(yīng)該稍小于1ma,做到真正的低耗電電池設(shè)備。花了一個(gè)晚上搞定。

    (二)、BMP0805模塊:先上網(wǎng)找例程,找來(lái)找去,找到了一個(gè)arduino的演示程序,正好手頭有arduino板,可以測(cè)試一下模塊是否損壞。arduino程序編譯后是6K左右,這也難怪了,例程里有大量的浮點(diǎn)運(yùn)算,只是當(dāng)初我是認(rèn)為只要從模塊中把數(shù)據(jù)讀出來(lái)就可以的,沒(méi)想到還需要大量的校正運(yùn)算,看來(lái)attiny24的2k容量有點(diǎn)危險(xiǎn)了。沒(méi)有相應(yīng)的avr的c源程序怎么辦呢,那就直接移植arduino吧,基本不用改什么東西的,只是跟attiny接口上遇到了很大的問(wèn)題,模塊跟avr用的是I2C接口,究竟是用avr內(nèi)置接口還是用模擬i2c接口呢,考慮到自己做單面板的布線比較困難,決定采用模擬I2c,這樣可以根據(jù)布線要求,選擇合適的端口,而不局限于固定的端口,套用了以前做收音機(jī)搞的一段I2c例程,調(diào)試起來(lái)真的很困難,總是無(wú)法知道程序錯(cuò)在i2c接口還是運(yùn)算程序,最后再才接到arduino,讀出正確的校正參數(shù),然后比對(duì)avr上的讀數(shù),確定是I2C的問(wèn)題,當(dāng)1002的氣壓值出現(xiàn)在顯示器上的時(shí)候,心情無(wú)疑是很激動(dòng)的。BMP0805測(cè)試程序編譯后已經(jīng)差不多是2k了,這樣使用attiny24的計(jì)劃泡湯了,接下來(lái)改用m16開(kāi)發(fā)板繼續(xù)測(cè)試SHT10。

    (三)、SHT10模塊:SHT10采用的是兩線的接口,但是并不兼容I2C,這樣也不用在是否使用主控接口上糾結(jié)了。網(wǎng)上例程很多,有自己寫(xiě)的,但大部分改寫(xiě)自官方的例程,有51的也有avr的,但是真要用的話就沒(méi)這么簡(jiǎn)單了,實(shí)際上當(dāng)貌似正確的數(shù)據(jù)出現(xiàn)在顯示器上的時(shí)候,還是發(fā)現(xiàn)有問(wèn)題,別人的演示視頻里濕度數(shù)據(jù)會(huì)跳動(dòng),而我的似乎總在那么幾個(gè)數(shù)字上變動(dòng),而且變動(dòng)得相當(dāng)緩慢,別的濕度表早就動(dòng)了10%了,我這里還是紋絲不動(dòng),但是哈口氣它還是能動(dòng)的,說(shuō)明還是從模塊里讀出了些什么,那么究竟是模塊本身問(wèn)題還是接口的時(shí)序問(wèn)題呢,單憑簡(jiǎn)陋的手段似乎不太容易了。于是想到以前在淘寶上看到的一種便宜的邏輯分析儀,可以用它分析時(shí)序,花了180大元買(mǎi)了一個(gè),大概熟悉了用法后,實(shí)測(cè)模塊時(shí)序,果然從波形上發(fā)現(xiàn)讀取的數(shù)據(jù)的LSB字節(jié)全是FF,而MSB是正常的,這絕對(duì)是時(shí)序問(wèn)題了,對(duì)比官方例程,發(fā)現(xiàn)每次通訊結(jié)束后都必須拉高一下DATA,否則后續(xù)字節(jié)就會(huì)讀取失敗,看來(lái)這180元花得真值。

    (四)、充電模塊:很簡(jiǎn)單,計(jì)算充電電流,在計(jì)算充電時(shí)間,再看充滿(mǎn)是否自停,就可以知道好壞了。

    五、整合:
    最終要用的主控選定是Mega8L,最低電壓2.7v,容量8k,裝我的程序足夠,體積小巧,只有小指甲蓋大小,只是是QFN封裝,不過(guò)其他幾塊模塊也都要求用貼片焊接,再加上上次做過(guò)的電池電壓顯示器用的也是貼片,而且磁帶盒剩余空間只夠選用貼片了。設(shè)計(jì)電路板有點(diǎn)麻煩,因?yàn)闆](méi)有現(xiàn)成的SHT10和BMP0805的封裝,所以要自己畫(huà),然后再根據(jù)安裝要求調(diào)整元件的位置,整來(lái)整去又去掉用MINIUSB充電的念頭,最后板子做好后,發(fā)現(xiàn)漏掉了3.3v穩(wěn)壓芯片的位置,頭疼!


     接下來(lái)是焊接調(diào)試,出現(xiàn)異常情況,發(fā)現(xiàn)端口調(diào)試小程序不能點(diǎn)亮端口,或者只有1.6v的輸出電壓,要命的很,怎么修改程序都不行,最后半夜12點(diǎn)起床,冒著破壞PCB的危險(xiǎn),搞掉了M8L,換上了一個(gè)新的,剛開(kāi)始測(cè)試時(shí)正常,甚至都能顯示正確的數(shù)據(jù),只是把功能切換程序加上去的時(shí)候,又出現(xiàn)了跟上次一模一樣的毛病,真的抓狂了,是5V升壓板破壞了M8L的端口了么,不像啊,程序能正常LOADED的,也能運(yùn)行,I2C所在接口也能輸出3.3V電平,而且在M8的開(kāi)發(fā)板上都是這樣用的,只是無(wú)法點(diǎn)亮LCD,因?yàn)殡娖绞窃谔土耍琍CB已經(jīng)經(jīng)不起第二次折騰了,要么就是重做一塊,要么就此放棄本次DIY,不過(guò)這一冷藏,可能就是一年半載的時(shí)間。最后掙扎了一下,在LCD所在端口強(qiáng)制確定了數(shù)據(jù)方向?yàn)檩敵觯瑳](méi)想到成了!原來(lái)一直以為上電后默認(rèn)是輸出的,所以沒(méi)有另外加DDR命令。
    最后是總裝:理想總是美好的,到總裝的時(shí)候才知道,要把一堆東西裝進(jìn)一個(gè)不能變的外殼有多困難,最后去掉了用連接器連接電池的做法,改用插針連接,剪短了SIP插針和按鈕的高度,縮短了電池和充電板的電線,磨掉了一點(diǎn)LCD上的黑膏,總算能把所有東西都塞進(jìn)去了~~~。

    最后成品的數(shù)據(jù)準(zhǔn)確度由我的卡西歐登山表和一個(gè)溫濕度表開(kāi)共同確定。氣壓的準(zhǔn)確性卡西歐可以保證,應(yīng)該BMP0805剛測(cè)試好的時(shí)候就發(fā)現(xiàn)兩者的數(shù)據(jù)非常接近,也就是卡西歐測(cè)試數(shù)據(jù)應(yīng)該是可信的,溫度顯示讀取的也是BMP0805,既然氣壓比較準(zhǔn)確,那么溫度也是可信的,盡管SHT10也能提供溫度數(shù)據(jù),濕度就很難說(shuō)了,要這么貴的模塊靠一個(gè)幾十塊的便宜的家用溫濕度計(jì)來(lái)校正,真有點(diǎn)悲哀了,不過(guò)不管了,反正人家說(shuō)了濕度本來(lái)就是個(gè)比較負(fù)責(zé)的參數(shù),精度差點(diǎn)也沒(méi)什么。再測(cè)一下整機(jī)的耗電,大約3ma,離理想有點(diǎn)遠(yuǎn),好在可以充電,不用太在意。

    耗時(shí)15天,費(fèi)銀90許,The Ending~~


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:194061 發(fā)表于 2017-4-27 07:48 | 只看該作者
兄弟能不能把那個(gè)HT1621的段位表給我一份?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 91视频在线观看免费 | 波多野结衣中文视频 | 最新伦理片| 秋霞电影院午夜伦 | 亚洲一区二区三区免费观看 | 日韩理论电影在线观看 | 视频在线观看一区二区 | 91丨九色丨国产在线 | 午夜私人影院 | 国产精品久久久久久久久图文区 | 色婷婷国产精品综合在线观看 | 久久精品aaa | 91精品国模一区二区三区 | 一区二区三区四区在线视频 | 久久久久国产一区二区三区 | 亚洲 欧美 日韩 精品 | 精品欧美乱码久久久久久1区2区 | 午夜视频网站 | www.国产| 欧美一级片免费看 | 日韩国产中文字幕 | 精品亚洲一区二区三区 | 91精品久久久久久久久 | 欧美日韩亚洲一区 | 欧美日韩亚洲一区二区 | 国产精品一区一区三区 | 久久亚洲免费 | 拍拍无遮挡人做人爱视频免费观看 | 日本精品一区二区三区四区 | 欧美亚洲免费 | 国产传媒在线播放 | 91精品久久久久久久久久 | 91久久精品日日躁夜夜躁欧美 | 欧美激情久久久久久 | 午夜在线视频 | 中文字幕国产 | 精品视频一区二区三区 | 中日av| 精品久久久久久久久久 | 中文字幕精品视频 | 偷拍亚洲色图 |