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

QQ登錄

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

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

STC90C52單片機(jī)+BMP180+LCD1602溫度氣壓高度計(jì)設(shè)計(jì)

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
經(jīng)過(guò)多次努力,用STC90C52+BMP180+LCD1602做的溫度氣壓高度計(jì)終于調(diào)試成功,效果如圖所示,程序見(jiàn)附件。

制作出來(lái)的實(shí)物圖:


單片機(jī)源程序如下:
  1. #include  <REG52.H>
  2. #include  <math.h>    //Keil library
  3. #include  <stdlib.h>  //Keil library
  4. #include  <stdio.h>   //Keil library
  5. #include  <INTRINS.H> //Keil library
  6. #define   uchar unsigned char
  7. #define   uint unsigned int
  8. #define BMP085_SlaveAddress   0xee  //定義器件在IIC總線(xiàn)中的從地址                              
  9. #define OSS 0// Oversampling Setting (note: code is not set up to use other OSS values)
  10. #define   DataPort P0    //LCD1602數(shù)據(jù)端口
  11. sbit      LCM_RS=P2^4;   //LCD1602命令端口               
  12. sbit      LCM_RW=P2^5;   //LCD1602命令端口               
  13. sbit      LCM_EN=P2^6;   //LCD1602命令端口
  14. sbit  SCL=P1^0;      //IIC時(shí)鐘引腳定義
  15. sbit   SDA=P1^1;      //IIC數(shù)據(jù)引腳定義
  16. int  dis_data;                              //變量
  17. typedef unsigned char  BYTE;
  18. typedef unsigned short WORD;
  19. long  temperature;//溫度值
  20. long  pressure;//壓力值
  21. long  height;//相對(duì)海拔高度值
  22. short ac1;
  23. short ac2;
  24. short ac3;
  25. unsigned short ac4;
  26. unsigned short ac5;
  27. unsigned short ac6;
  28. short b1;
  29. short b2;
  30. short mb;
  31. short mc;
  32. short md;
  33. void delay(unsigned int k)       
  34. {                                               
  35. unsigned int i,j;                               
  36. for(i=0;i<k;i++)
  37. {                       
  38. for(j=0;j<121;j++)                       
  39. {;}}                                               
  40. }
  41. /*******************************/
  42. void WaitForEnable(void)       
  43. {                                       
  44. DataPort=0xff;               
  45. LCM_RS=0;LCM_RW=1;_nop_();
  46. LCM_EN=1;_nop_();_nop_();
  47. while(DataPort&0x80);       
  48. LCM_EN=0;                               
  49. }                                       
  50. /*******************************/
  51. void WriteCommandLCM(uchar CMD,uchar Attribc)
  52. {                                       
  53. if(Attribc)WaitForEnable();       
  54. LCM_RS=0;LCM_RW=0;_nop_();
  55. DataPort=CMD;_nop_();       
  56. LCM_EN=1;_nop_();_nop_();LCM_EN=0;
  57. }                                       
  58. /*******************************/
  59. void WriteDataLCM(uchar dataW)
  60. {                                       
  61. WaitForEnable();               
  62. LCM_RS=1;LCM_RW=0;_nop_();
  63. DataPort=dataW;_nop_();       
  64. LCM_EN=1;_nop_();_nop_();LCM_EN=0;
  65. }               
  66. /***********************************/
  67. void InitLcd()                               
  68. {                       
  69. WriteCommandLCM(0x38,1);       
  70. WriteCommandLCM(0x08,1);       
  71. WriteCommandLCM(0x01,1);       
  72. WriteCommandLCM(0x06,1);       
  73. WriteCommandLCM(0x0c,1);
  74. }                       
  75. /***********************************/
  76. void DisplayOneChar(uchar X,uchar Y,uchar DData)
  77. {                                               
  78. Y&=1;                                               
  79. X&=15;                                               
  80. if(Y)X|=0x40;                                       
  81. X|=0x80;                       
  82. WriteCommandLCM(X,0);               
  83. WriteDataLCM(DData);               
  84. }                                               
  85. ///**************************************
  86. //延時(shí)5微秒(STC90C52RC@12M)
  87. //不同的工作環(huán)境,需要調(diào)整此函數(shù),注意時(shí)鐘過(guò)快時(shí)需要修改
  88. //當(dāng)改用1T的MCU時(shí),請(qǐng)調(diào)整此延時(shí)函數(shù)
  89. //**************************************/
  90. //void Delay5us();
  91. void Delay5us()
  92. {
  93. _nop_();_nop_();_nop_();_nop_();
  94. _nop_();_nop_();_nop_();_nop_();
  95. _nop_();_nop_();_nop_();_nop_();
  96. _nop_();_nop_();_nop_();_nop_();
  97. }
  98. /**************************************
  99. 延時(shí)5毫秒(STC90C52RC@12M)
  100. 不同的工作環(huán)境,需要調(diào)整此函數(shù)
  101. 當(dāng)改用1T的MCU時(shí),請(qǐng)調(diào)整此延時(shí)函數(shù)
  102. **************************************/
  103. void Delay5ms()
  104. {
  105.     WORD n = 560;
  106.     while (n--);
  107. }
  108. /**************************************
  109. 起始信號(hào)
  110. **************************************/
  111. void BMP085_Start()
  112. {
  113.     SDA = 1;                    //拉高數(shù)據(jù)線(xiàn)
  114.     SCL = 1;                    //拉高時(shí)鐘線(xiàn)
  115.     Delay5us();                 //延時(shí)
  116.     SDA = 0;                    //產(chǎn)生下降沿
  117.     Delay5us();                 //延時(shí)
  118.     SCL = 0;                    //拉低時(shí)鐘線(xiàn)
  119. }
  120. /**************************************
  121. 停止信號(hào)
  122. **************************************/
  123. void BMP085_Stop()
  124. {
  125.     SDA = 0;                    //拉低數(shù)據(jù)線(xiàn)
  126.     SCL = 1;                    //拉高時(shí)鐘線(xiàn)
  127.     Delay5us();                 //延時(shí)
  128.     SDA = 1;                    //產(chǎn)生上升沿
  129.     Delay5us();                 //延時(shí)
  130. }

  131. /**************************************
  132. 發(fā)送應(yīng)答信號(hào)
  133. 入口參數(shù):ack (0:ACK 1:NAK)
  134. **************************************/
  135. void BMP085_SendACK(bit ack)
  136. {
  137.     SDA = ack;                  //寫(xiě)應(yīng)答信號(hào)
  138.     SCL = 1;                    //拉高時(shí)鐘線(xiàn)
  139.     Delay5us();                 //延時(shí)
  140.     SCL = 0;                    //拉低時(shí)鐘線(xiàn)
  141.     Delay5us();                 //延時(shí)
  142. }
  143. /**************************************
  144. 接收應(yīng)答信號(hào)
  145. **************************************/
  146. bit BMP085_RecvACK()
  147. {
  148.     SCL = 1;                    //拉高時(shí)鐘線(xiàn)
  149.     Delay5us();                 //延時(shí)
  150.     CY = SDA;                   //讀應(yīng)答信號(hào)
  151.     SCL = 0;                    //拉低時(shí)鐘線(xiàn)
  152.     Delay5us();                 //延時(shí)
  153.     return CY;
  154. }
  155. /**************************************
  156. 向IIC總線(xiàn)發(fā)送一個(gè)字節(jié)數(shù)據(jù)
  157. **************************************/
  158. void BMP085_SendByte(BYTE dat)
  159. {
  160.     BYTE i;
  161.     for (i=0; i<8; i++)         //8位計(jì)數(shù)器
  162.     {
  163.         dat <<= 1;              //移出數(shù)據(jù)的最高位
  164.         SDA = CY;               //送數(shù)據(jù)口
  165.         SCL = 1;                //拉高時(shí)鐘線(xiàn)
  166.         Delay5us();             //延時(shí)
  167.         SCL = 0;                //拉低時(shí)鐘線(xiàn)
  168.         Delay5us();             //延時(shí)
  169.     }
  170.     BMP085_RecvACK();
  171. }
  172. /**************************************
  173. 從IIC總線(xiàn)接收一個(gè)字節(jié)數(shù)據(jù)
  174. **************************************/
  175. BYTE BMP085_RecvByte()
  176. {
  177.     BYTE i;
  178.     BYTE dat = 0;
  179.     SDA = 1;                    //使能內(nèi)部上拉,準(zhǔn)備讀取數(shù)據(jù),
  180.     for (i=0; i<8; i++)         //8位計(jì)數(shù)器
  181.     {
  182.         dat <<= 1;
  183.         SCL = 1;                //拉高時(shí)鐘線(xiàn)
  184.         Delay5us();             //延時(shí)
  185.         dat |= SDA;             //讀數(shù)據(jù)              
  186.         SCL = 0;                //拉低時(shí)鐘線(xiàn)
  187.         Delay5us();             //延時(shí)
  188. }
  189.     return dat;
  190. }
  191. //*********************************************************
  192. //讀出BMP085內(nèi)部數(shù)據(jù),連續(xù)兩個(gè)
  193. //*********************************************************
  194. short Multiple_read(uchar ST_Address)
  195. {
  196.     uchar msb, lsb;
  197.     short _data;
  198.     BMP085_Start();                          //起始信號(hào)
  199.     BMP085_SendByte(BMP085_SlaveAddress);    //發(fā)送設(shè)備地址+寫(xiě)信號(hào)
  200.     BMP085_SendByte(ST_Address);             //發(fā)送存儲(chǔ)單元地址
  201.     BMP085_Start();                          //起始信號(hào)
  202.     BMP085_SendByte(BMP085_SlaveAddress+1);         //發(fā)送設(shè)備地址+讀信號(hào)
  203.     msb = BMP085_RecvByte();                 //BUF[0]存儲(chǔ)
  204.     BMP085_SendACK(0);                       //回應(yīng)ACK
  205.     lsb = BMP085_RecvByte();   
  206.     BMP085_SendACK(1);                       //最后一個(gè)數(shù)據(jù)需要回NOACK
  207.     BMP085_Stop();                           //停止信號(hào)
  208.     Delay5ms();
  209.     _data = msb << 8;
  210.     _data |= lsb;
  211.     return _data;
  212. }
  213. //********************************************************************
  214. long bmp085ReadTemp(void)
  215. {
  216.     BMP085_Start();                  //起始信號(hào)
  217.     BMP085_SendByte(BMP085_SlaveAddress);   //發(fā)送設(shè)備地址+寫(xiě)信號(hào)
  218.     BMP085_SendByte(0xF4);          // write register address
  219.     BMP085_SendByte(0x2E);       // write register data for temp
  220.     BMP085_Stop();                   //發(fā)送停止信號(hào)
  221.     delay(10);// max time is 4.5ms
  222.     return (long) Multiple_read(0xF6);
  223. }
  224. //*************************************************************
  225. long bmp085ReadPressure(void)
  226. {
  227.     long pressure = 0;
  228.     BMP085_Start();                   //起始信號(hào)
  229.     BMP085_SendByte(BMP085_SlaveAddress);   //發(fā)送設(shè)備地址+寫(xiě)信號(hào)
  230.     BMP085_SendByte(0xF4);          // write register address
  231.     BMP085_SendByte(0x34);         // write register data for pressure
  232.     BMP085_Stop();                    //發(fā)送停止信號(hào)
  233.     delay(10);                      // max time is 4.5ms
  234.     pressure = Multiple_read(0xF6);
  235.     pressure &= 0x0000FFFF;
  236.     return pressure;
  237. }
  238. //**************************************************************

  239. //初始化BMP085,根據(jù)需要請(qǐng)參考pdf進(jìn)行修改**************
  240. void Init_BMP085()
  241. {
  242.     ac1 = Multiple_read(0xAA);
  243.     ac2 = Multiple_read(0xAC);
  244.     ac3 = Multiple_read(0xAE);
  245.     ac4 = Multiple_read(0xB0);
  246.     ac5 = Multiple_read(0xB2);
  247.     ac6 = Multiple_read(0xB4);
  248.     b1 =  Multiple_read(0xB6);
  249.     b2 =  Multiple_read(0xB8);
  250.     mb =  Multiple_read(0xBA);
  251.     mc =  Multiple_read(0xBC);
  252.     md =  Multiple_read(0xBE);
  253. }
  254. //***********************************************************************
  255. void bmp085Convert()//換算
  256. {
  257.   unsigned int ut;
  258.   unsigned long up;
  259.   long x1, x2, b5, b6, x3, b3, p;
  260.   unsigned long b4, b7;
  261.   ut = bmp085ReadTemp();   // 讀取溫度
  262.   up = bmp085ReadPressure();  // 讀取壓強(qiáng)
  263.   x1 = (((long)ut - (long)ac6)*(long)ac5) >> 15;
  264.   x2 = ((long) mc << 11) / (x1 + md);
  265.   b5 = x1 + x2;
  266.   temperature = ((b5 + 8) >> 4);
  267.   b6 = b5 - 4000;
  268.   // Calculate B3
  269.   x1 = (b2 * (b6 * b6)>>12)>>11;
  270.   x2 = (ac2 * b6)>>11;
  271.   x3 = x1 + x2;
  272.   b3 = (((((long)ac1)*4 + x3)<<OSS) + 2)>>2;
  273.   // Calculate B4
  274.   x1 = (ac3 * b6)>>13;
  275.   x2 = (b1 * ((b6 * b6)>>12))>>16;
  276.   x3 = ((x1 + x2) + 2)>>2;
  277.   b4 = (ac4 * (unsigned long)(x3 + 32768))>>15;
  278.   b7 = ((unsigned long)(up - b3) * (50000>>OSS));
  279.   if (b7 < 0x80000000)
  280.     p = (b7<<1)/b4;
  281.   else
  282.     p = (b7/b4)<<1;
  283.   x1 = (p>>8) * (p>>8);
  284.   x1 = (x1 * 3038)>>16;
  285.   x2 = (-7357 * p)>>16;
  286.   pressure = p+((x1 + x2 + 3791)>>4);
  287.   height=(101325-pressure)*843/100;
  288.   DisplayOneChar(0,0,'T');//溫度部分
  289.   DisplayOneChar(1,0,':');
  290.   DisplayOneChar(4,0,'.');
  291. ……………………

  292. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
STC90C52+BMP180+LCD1602溫度氣壓高度計(jì)單片機(jī)程序.rar (42.17 KB, 下載次數(shù): 397)


評(píng)分

參與人數(shù) 1黑幣 +77 收起 理由
admin + 77 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

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

使用道具 舉報(bào)

沙發(fā)
ID:343102 發(fā)表于 2018-6-22 22:08 | 只看該作者
制作感想:
  初衷是想給愛(ài)車(chē)空氣濾加個(gè)氣壓開(kāi)關(guān),防止空氣濾堵了還不知道,造成發(fā)動(dòng)機(jī)進(jìn)氣不良燃燒不全產(chǎn)生積碳。
  在某寶上一搜,一個(gè)氣壓開(kāi)關(guān)居然要40元。而一個(gè)BMP180氣壓傳感器不到4元,一個(gè)STC90C51芯片也不到4元,一個(gè)最小系統(tǒng)板甚至不到2元。又看了LCD1602液晶顯示模塊,價(jià)格不到5元,也不貴。USB轉(zhuǎn)串口下載模塊,我已經(jīng)有了啊。于是心動(dòng),敗了約20元,開(kāi)始玩起了單片機(jī)。
  以前從未接觸過(guò)單片機(jī),不過(guò)沒(méi)關(guān)系,自己有電路基礎(chǔ),再上網(wǎng)找些資料學(xué)習(xí)學(xué)習(xí)就行了。網(wǎng)上一搜,找到了51黑論壇,發(fā)現(xiàn)是學(xué)習(xí)單片機(jī)的好地方。經(jīng)過(guò)多天的學(xué)習(xí)、摸索,終于制作成功。
  這個(gè)單片機(jī)氣壓計(jì)不僅能顯示氣壓,還能顯示溫度和相對(duì)海拔高度,而且是數(shù)字顯示,非常直觀(guān)。不僅可以監(jiān)測(cè)空氣濾內(nèi)的氣壓,還可以帶著去釣魚(yú)、爬山。
  第一次DIY單片機(jī)就獲得了成功,成就感真是滿(mǎn)滿(mǎn)的。
  第一次DIY單片機(jī)就能獲得成功,其實(shí)也是與時(shí)代發(fā)展、科技進(jìn)步分不開(kāi)的,F(xiàn)在的單片機(jī)技術(shù)真是比N多年前強(qiáng)太多了。單片機(jī)各部分都已實(shí)現(xiàn)模塊化、標(biāo)準(zhǔn)化,組裝一個(gè)單片機(jī)就像搭積木一樣簡(jiǎn)單。軟件技術(shù)也比以前進(jìn)步很多,程序輸入也非常簡(jiǎn)單,一個(gè)給機(jī)頂盒升級(jí)用的USB轉(zhuǎn)串口模塊就能搞定,F(xiàn)在的傳感器也比以前豐富多了,這使單片機(jī)的應(yīng)用領(lǐng)域也更加廣泛了,F(xiàn)在學(xué)習(xí)單片機(jī),既簡(jiǎn)單,又實(shí)用。而且配件很容易買(mǎi)到,還幾乎都是白菜價(jià),真是今非昔比。
回復(fù)

使用道具 舉報(bào)

板凳
ID:380510 發(fā)表于 2018-7-29 17:39 | 只看該作者
牛逼啊 大兄弟
回復(fù)

使用道具 舉報(bào)

地板
ID:371423 發(fā)表于 2018-8-20 10:46 | 只看該作者
非常感謝,真是幫了大忙了!
回復(fù)

使用道具 舉報(bào)

5#
ID:387208 發(fā)表于 2018-8-21 21:14 | 只看該作者
電路圖呢。。。。。
回復(fù)

使用道具 舉報(bào)

6#
ID:119159 發(fā)表于 2018-8-22 11:09 | 只看該作者
贊一個(gè),有電路圖嗎?
回復(fù)

使用道具 舉報(bào)

7#
ID:119159 發(fā)表于 2019-1-1 21:08 | 只看該作者
弱弱的問(wèn)一句        pressure &= 0x0000FFFF;什么作用,讀溫度的時(shí)候?yàn)槭裁礇](méi)有??感激不盡。
回復(fù)

使用道具 舉報(bào)

8#
ID:459590 發(fā)表于 2019-1-1 21:49 | 只看該作者
謝謝分享!                              
回復(fù)

使用道具 舉報(bào)

9#
ID:343102 發(fā)表于 2019-2-24 13:08 | 只看該作者
氣壓計(jì)電路圖

stc90c52+bmp180+lcd1602氣壓計(jì)電路圖2.JPG (302.67 KB, 下載次數(shù): 182)

stc90c52+bmp180+lcd1602氣壓計(jì)電路圖2.JPG
回復(fù)

使用道具 舉報(bào)

10#
ID:461137 發(fā)表于 2019-3-14 17:58 | 只看該作者
BMP180的VCC不能直接接單片機(jī)的VCC嗎?要接限流電阻嗎?幾歐的
回復(fù)

使用道具 舉報(bào)

11#
ID:461137 發(fā)表于 2019-3-17 00:17 | 只看該作者
溫度和氣壓正常顯示,可高度顯示為亂碼
回復(fù)

使用道具 舉報(bào)

12#
ID:496214 發(fā)表于 2019-3-28 10:09 | 只看該作者
謝謝樓主的分享 感激不盡。!
回復(fù)

使用道具 舉報(bào)

13#
ID:490818 發(fā)表于 2019-3-29 15:40 | 只看該作者
感謝分享
回復(fù)

使用道具 舉報(bào)

14#
ID:507691 發(fā)表于 2019-4-26 16:24 | 只看該作者
我的壓強(qiáng),高度在一直變化,有什么辦法解決嗎
回復(fù)

使用道具 舉報(bào)

15#
ID:526706 發(fā)表于 2019-5-3 22:55 | 只看該作者
多謝L樓主
回復(fù)

使用道具 舉報(bào)

16#
ID:264360 發(fā)表于 2019-5-10 10:46 | 只看該作者
風(fēng)158 發(fā)表于 2018-6-22 22:08
制作感想:
  初衷是想給愛(ài)車(chē)空氣濾加個(gè)氣壓開(kāi)關(guān),防止空氣濾堵了還不知道,造成發(fā)動(dòng)機(jī)進(jìn)氣不良燃燒不全 ...

好用心的網(wǎng)友  受教了  向你學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

17#
ID:650310 發(fā)表于 2019-11-26 21:10 | 只看該作者
感謝分享,謝謝
回復(fù)

使用道具 舉報(bào)

18#
ID:647448 發(fā)表于 2019-11-27 08:43 來(lái)自手機(jī) | 只看該作者
厲害了我的哥
回復(fù)

使用道具 舉報(bào)

19#
ID:658240 發(fā)表于 2019-12-11 16:59 | 只看該作者
lml0508 發(fā)表于 2019-3-14 17:58
BMP180的VCC不能直接接單片機(jī)的VCC嗎?要接限流電阻嗎?幾歐的

要接限流電阻嗎,我接5V的顯示小方塊是為什么原因呢,求解答
回復(fù)

使用道具 舉報(bào)

20#
ID:343102 發(fā)表于 2019-12-16 18:11 | 只看該作者
SoleMemoery 發(fā)表于 2019-12-11 16:59
要接限流電阻嗎,我接5V的顯示小方塊是為什么原因呢,求解答

BMP180的供電電壓一般為1.8-3.6V,不能接5V。可用1K電阻和蘭發(fā)光LED組成一個(gè)穩(wěn)壓電路為BMP180供電。
回復(fù)

使用道具 舉報(bào)

21#
ID:408809 發(fā)表于 2020-1-8 18:22 | 只看該作者
不知道這個(gè)的定位精度和GPS的哪個(gè)好點(diǎn)?
回復(fù)

使用道具 舉報(bào)

22#
ID:688258 發(fā)表于 2020-1-27 22:07 | 只看該作者
為什么proteus仿真不了
回復(fù)

使用道具 舉報(bào)

23#
ID:343102 發(fā)表于 2020-2-15 11:50 | 只看該作者
proteus仿真是需要有庫(kù)函數(shù)的
回復(fù)

使用道具 舉報(bào)

24#
ID:732057 發(fā)表于 2020-4-19 14:55 | 只看該作者
用52芯片可以仿真嗎
回復(fù)

使用道具 舉報(bào)

25#
ID:541277 發(fā)表于 2020-11-8 17:02 | 只看該作者
樓主,按照你畫(huà)的圖焊的板子,供上電之后1602就亮一排小格子。
回復(fù)

使用道具 舉報(bào)

26#
ID:382145 發(fā)表于 2021-4-1 19:32 | 只看該作者
  題主,為啥氣壓海拔轉(zhuǎn)換公式是這個(gè)呀height=(101325-pressure)*843/100;文檔里都是一個(gè)挺復(fù)雜的式子,要開(kāi)根號(hào),我編譯老是錯(cuò)誤
回復(fù)

使用道具 舉報(bào)

27#
ID:343102 發(fā)表于 2022-4-26 07:22 | 只看該作者
hjcc 發(fā)表于 2020-11-8 17:02
樓主,按照你畫(huà)的圖焊的板子,供上電之后1602就亮一排小格子。

這是個(gè)簡(jiǎn)化調(diào)光電路,不能適應(yīng)較大溫差。可按1602手冊(cè)用電位器調(diào)光。
回復(fù)

使用道具 舉報(bào)

28#
ID:343102 發(fā)表于 2022-4-26 07:26 | 只看該作者
境s。 發(fā)表于 2021-4-1 19:32
題主,為啥氣壓海拔轉(zhuǎn)換公式是這個(gè)呀height=(101325-pressure)*843/100;文檔里都是一個(gè)挺復(fù)雜的式子,要 ...

這是常見(jiàn)高度(1萬(wàn)米以下)的模擬函數(shù),避免了浮點(diǎn)運(yùn)算。單片機(jī)不支持浮點(diǎn)運(yùn)算,容易出錯(cuò)。
回復(fù)

使用道具 舉報(bào)

29#
ID:134227 發(fā)表于 2022-6-29 09:50 | 只看該作者
還不是很明白啊。。。
回復(fù)

使用道具 舉報(bào)

30#
ID:85508 發(fā)表于 2022-12-8 19:28 | 只看該作者
感謝分享!電路、程序都有。
回復(fù)

使用道具 舉報(bào)

31#
ID:71233 發(fā)表于 2023-12-12 07:58 | 只看該作者
樓主的BMP180可以用嗎?我從某一個(gè)寶上買(mǎi)的幾個(gè)都不好用。
回復(fù)

使用道具 舉報(bào)

32#
ID:343102 發(fā)表于 2023-12-15 21:08 | 只看該作者
lmn2005 發(fā)表于 2023-12-12 07:58
樓主的BMP180可以用嗎?我從某一個(gè)寶上買(mǎi)的幾個(gè)都不好用。

買(mǎi)了幾次,除了一致性有些微小差別,都能用。
注意電壓,BMP180的供電電壓為1.8-3.6V,不能接5V。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表