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

專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機教程網(wǎng) >> STM32 >> 瀏覽文章

Rainbow LCD顯示:制作一個簡單的電子溫濕度計

作者:huqin   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2014年05月09日   【字體:

  液晶顯示器型號多種多樣,我們這里僅以1602這種最簡單的16*2字符點陣液晶模塊為例,結(jié)合DHT11來制作一個簡單的電子溫濕度計:這個溫濕度計分兩行顯示,第一行顯示當(dāng)前溫度,第二行顯示當(dāng)前的濕度,溫濕度每隔1秒鐘刷新一次。


 
    1602模塊共16個腳,具體功能見表格:

    由于STM32是3.3V供電,所以我們需要選用3.3V電壓的1602模塊,同時我們?yōu)榱斯?jié)約口線,采用了四位數(shù)據(jù)模式,D0-D3未使用。1602與Rainbow之間的接線關(guān)系如下:
    VSS => GND
    VDD => 3.3V
    VL  => 從電位器接出,電位器接在GND和3.3V之間
    RS  => PC0
    R/W => GND
    E   => PC2
    D0-D3 懸空
    D4  => PA0
    D5  => PA2
    D6  => PA4
    D7  => PA6
    BLA => 3.3V
    BLK => 與GND之間接一個100-200歐姆的電阻

 
    由于Rainbow對1602使用了C++進行封裝,使用起來很簡單,步驟如下:
    1、定義lcd對象,并指定相應(yīng)的管腳:LiquidCrystal lcd(PC0, PC2, PA0, PA2, PA4, PA6),這里我們采用四位數(shù)據(jù)方式,R/W接地,對應(yīng)的接線如前所述
    2、調(diào)用lcd.begin(16, 2),將lcd的模式設(shè)置成兩行顯示,每行16個字符
    3、調(diào)用lcd.setCursor()設(shè)置當(dāng)前光標(biāo)位置,lcd.print()在光標(biāo)處輸出字符串

 
    在軟件包的“Projects\E-Thermometer”文件夾包含了本文所述的電子溫濕度計的程序,可以直接編譯、燒寫和調(diào)試。我們來看看代碼:
#include "WProgram.h"
#include "Dht11.h"
#include "LiquidCrystal.h"

 
//定義Dth11對象,需要指定DHT11數(shù)據(jù)管腳對應(yīng)的GPIO管腳
Dht11 dht11(DHT11_DATA_PIN);

 
//定義LCD對象,使用d4-d7四條數(shù)據(jù)線進行驅(qū)動,將rw接地
//我們共用到了6個IO:RS、E、D4-D7,RW接低電平
//本程序接法:
// RS => PC0
// E => PC2
// D4-D7 => PA0、PA2、PA4、PA6
LiquidCrystal lcd(PC0, PC2, PA0, PA2, PA4, PA6);

 
void setup()
{
  //初始化開發(fā)板
  boardInit();
  //兩行顯示,每行16個字符
  lcd.begin(16, 2);

 
  lcd.print("Waiting...");
}

 
void loop()
{
  while(1)
  {
    //判斷數(shù)據(jù)采集是否成功
    if(dht11.read() == Dht11::OK)
    {
      //定位到第一行,第一列顯示溫度
      lcd.setCursor(0, 0);
      lcd.print("Temperature:");
      lcd.print(dht11.getTemperature());
      lcd.write(0xDF);
      lcd.print("C");
      //第二行顯示濕度
      lcd.setCursor(0, 1);
      lcd.print("Humidity:");
      lcd.print(dht11.getHumidity());
      lcd.print("%");
    }

 
    delay(1000);
  }
}

 

 
int main(void)
{
  setup();
  while(1) loop();
}
    程序編譯無誤后,通過ST-LINK寫入到Rainbow中,將DHT11溫濕度模塊插入到Rainbow中,就可以在液晶上直觀顯示出當(dāng)前的溫濕度。

 
關(guān)閉窗口
主站蜘蛛池模板: 一区在线免费视频 | 国产欧美日韩在线播放 | 亚洲a视频 | 国产一区二区三区久久久久久久久 | 成人午夜av | 九九色综合 | 久久99精品久久久97夜夜嗨 | 男人阁久久 | 农村黄性色生活片 | 久久久久久一区 | 天天色图 | 日本久久久久久 | 福利一区视频 | 中文字幕在线视频免费观看 | 亚洲精品日韩在线 | 在线观看视频91 | 黄色片网此| 精品欧美一区免费观看α√ | 黄色免费在线观看网址 | 中文字幕1区2区 | 天堂网中文字幕在线观看 | 中文字幕视频在线观看 | 羞羞的视频在线 | 日韩av最新网址 | 成人日b视频 | 欧美一级免费 | 成人在线h | 日韩在线xx | 中文字幕不卡 | 午夜伦理影院 | 免费精品在线视频 | 日本不卡免费新一二三区 | 99热播放| 亚洲一区 中文字幕 | 午夜视频一区 | 久久久久久av | 九九久久精品视频 | 色综合av| 黑人一级黄色大片 | 久久综合伊人 | 精品粉嫩aⅴ一区二区三区四区 |