小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

基于Arduino的18B20+LCD12864溫度顯示

 開啟美好每一天 2014-01-14
 本帖最后由 greenfort 于 2012-8-13 01:49 編輯

初學Arduino,制作的通過12864顯示多個18B20溫度的程序

接線
請參考本論壇中的18B20及LCD12864與Arduino接線,這里不再重復(fù),只是強調(diào)一點,18B20的PIN1和PIN3要同時接地,否則會在返回若干值后出現(xiàn)一次錯誤值(85.00)不知道什么原因

鑒于12864的顯示大小,程序最多接9個18B20傳感器,多了顯示不了

程序代碼如下
  1. /*
  2. LCD  Arduino
  3. PIN1 = GND
  4. PIN2 = 5V
  5. RS(CS) = 8;
  6. RW(SID)= 9;
  7. EN(CLK) = 3;
  8. PIN15 PSB = GND;
  9. */
  10. #include <OneWire.h>
  11. #include <DallasTemperature.h>
  12. #include <stdlib.h>
  13. #define ONE_WIRE_BUS 2
  14. #include "LCD12864RSPI.h"
  15. #define AR_SIZE( a ) sizeof( a ) / sizeof( a[0] )

  16. OneWire oneWire(ONE_WIRE_BUS);
  17. DallasTemperature sensors(&oneWire);

  18. char str[4]; //定義溫度值存儲數(shù)組,4位,其中3位為數(shù)字,1位為小數(shù)點
  19. double temp =0; //定義中間變量,用于將獲取的float型溫度值轉(zhuǎn)變?yōu)閡nsigned char數(shù)組
  20. unsigned char show[]={
  21.   0xB5,0xB1,0xC7,0xB0,0xBB,0xB7,0xBE,0xB3,0xCE,0xC2,0xB6,0xC8};//當前環(huán)境溫度
  22. int numberOfDevices;
  23. void setup()
  24. {
  25.   Serial.begin(9600);
  26.   sensors.begin(); //傳感器初始化
  27.   numberOfDevices = sensors.getDeviceCount();
  28.   LCDA.Initialise(); // 屏幕初始化
  29.   LCDA.DisplayString(0,0,show,AR_SIZE(show));//第一行第1格開始,顯示文字“當前環(huán)境溫度”
  30. }

  31. void loop()
  32. {
  33.   sensors.requestTemperatures(); //獲取溫度值
  34.   for(int i=0;i<numberOfDevices; i++)    //逐個獲取傳感器的溫度
  35.   {
  36.     temp=sensors.getTempCByIndex(i); //使用索引序號獲得攝氏度數(shù)值
  37.     dtostrf(temp,4,2,str);  //將獲取的數(shù)值轉(zhuǎn)換為字符型數(shù)組
  38.     if (i<=2)
  39.     {
  40.       LCDA.DisplayString(1,i*3,(unsigned char *)str,sizeof(str));
  41.     } //自第2行第1列開始顯示溫度值
  42.     else
  43.     {
  44.       if(i>2&&i<=5)
  45.       {
  46.       LCDA.DisplayString(2,(i-3)*3,(unsigned char *)str,sizeof(str));
  47.       }
  48.       else
  49.       {
  50.       LCDA.DisplayString(3,(i-6)*3,(unsigned char *)str,sizeof(str));  
  51.       }
  52.     }
  53.   }
  54. }
復(fù)制代碼
無標題.png

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多