吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Proteus教程:DHT11讀取和顯示

Harmony&嵌入式學習 ? 來源:Harmony&嵌入式學習 ? 作者:Harmony&嵌入式學 ? 2023-06-14 11:37 ? 次閱讀

視頻教程::https://www.bilibili.com/video/BV1xb4y187rF

poYBAGSJNdKAUtpJAAJ-N6UVQmo260.pngpYYBAGSJNdeATEg5AADyNbZ-DGk852.png
#include
#define uchar unsigned char
#define uint unsigned int
#define LCD1602_DATAPINS P0
sbit LCD1602_E=P2^2;
sbit LCD1602_RW=P2^1;
sbit LCD1602_RS=P2^0;

sbit Data=P3^0;   //定義數據線
uchar T_RH,T_TH;
/*******************************************************************************
* 函 數 名         : Lcd1602_Delay1ms
* 函數功能		   : 延時函數,延時1ms
* 輸    入         : c
* 輸    出         : 無
* 說    名         : 該函數是在12MHZ晶振下,12分頻單片機的延時。
*******************************************************************************/

void Lcd1602_Delay1ms(uint c)   //誤差 0us
{
    uchar a,b;
	for (; c>0; c--)
	{
		 for (b=199;b>0;b--)
		 {
		  	for(a=1;a>0;a--);
		 }      
	}
    	
}

/*******************************************************************************
* 函 數 名         : LcdWriteCom
* 函數功能		   : 向LCD寫入一個字節的命令
* 輸    入         : com
* 輸    出         : 無
*******************************************************************************/
void LcdWriteCom(uchar com)	  //寫入命令
{
	LCD1602_E = 0;     //使能
	LCD1602_RS = 0;	   //選擇發送命令
	LCD1602_RW = 0;	   //選擇寫入
	
	LCD1602_DATAPINS = com;     //放入命令
	Lcd1602_Delay1ms(1);		//等待數據穩定

	LCD1602_E = 1;	          //寫入時序
	Lcd1602_Delay1ms(5);	  //保持時間
	LCD1602_E = 0;
}
/*******************************************************************************
* 函 數 名         : LcdWriteData
* 函數功能		   : 向LCD寫入一個字節的數據
* 輸    入         : dat
* 輸    出         : 無
*******************************************************************************/		   	   
void LcdWriteData(uchar dat)			//寫入數據
{
	LCD1602_E = 0;	//使能清零
	LCD1602_RS = 1;	//選擇輸入數據
	LCD1602_RW = 0;	//選擇寫入

	LCD1602_DATAPINS = dat; //寫入數據
	Lcd1602_Delay1ms(1);

	LCD1602_E = 1;   //寫入時序
	Lcd1602_Delay1ms(5);   //保持時間
	LCD1602_E = 0;
}


/*******************************************************************************
* 函 數 名       : LcdInit()
* 函數功能		 : 初始化LCD屏
* 輸    入       : 無
* 輸    出       : 無
*******************************************************************************/		   
void LcdInit()						  //LCD初始化子程序
{
 	LcdWriteCom(0x38);  //開顯示
	LcdWriteCom(0x0c);  //開顯示不顯示光標
	LcdWriteCom(0x06);  //寫一個指針加1
	LcdWriteCom(0x01);  //清屏
	LcdWriteCom(0x80);  //設置數據指針起點
}




//按指定位置顯示一個字符
void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData)
{
 Y &= 0x1;
 X &= 0xF; //限制X不能大于15,Y不能大于1
 if (Y) X |= 0x40; //當要顯示第二行時地址碼+0x40;
 X |= 0x80; // 算出指令碼
 LcdWriteCom(X); //這里不檢測信號,發送地址碼
 LcdWriteData(DData);
}
//按指定位置顯示一串字符
void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData)
{
 unsigned char ListLength;

  ListLength = 0;
 Y &= 0x1;
 X &= 0xF; //限制X不能大于15,Y不能大于1
 while (DData[ListLength]>=0x20) //若到達字串尾則退出
  {
   if (X <= 0xF) //X坐標應小于0xF
    {
     DisplayOneChar(X, Y, DData[ListLength]); //顯示單個字符
     ListLength++;
     X++;
    }
  }
}


void DHT11_delay_ms(uint z)
{
   uint i,j;
   for(i=z;i?>0;i--)
      for(j=110;j>0;j--);
}
void DHT11_delay_us(uchar n)
{
    while(--n);
}

void DHT11_start()
{
   Data=1;
   DHT11_delay_us(2);
   Data=0;
   DHT11_delay_ms(30);   //延時18ms以上
   Data=1;
   DHT11_delay_us(30);
}

uchar DHT11_rec_byte()      //接收一個字節
{
   uchar i,dat=0;
  for(i=0;i

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 傳感器
    +關注

    關注

    2553

    文章

    51390

    瀏覽量

    756566
  • Proteus
    +關注

    關注

    79

    文章

    1692

    瀏覽量

    106827
  • DHT11
    +關注

    關注

    19

    文章

    277

    瀏覽量

    57699
收藏 人收藏

    評論

    相關推薦

    采用STMCubeMX+Proteus仿真DHT11的方法

    本文說明開發工具:STM32CubeMX+Keil5開發芯片:STM32F103R6采溫模塊:DHT11數顯屏幕:LCD1602仿真軟件:Proteus 8.12項目目標:DHT11讀取
    發表于 11-30 08:03

    如何通過控制DHT11模塊時序來對DHT11傳感器進行控制和數據的讀取

    如何通過控制DHT11模塊時序來對DHT11傳感器進行控制和數據的讀取
    發表于 01-17 06:40

    DHT11模塊資料

    DHT11模塊資料,關于如何使用dht11溫濕度傳感器的方法以及相關例程。
    發表于 03-16 15:31 ?96次下載

    DHT11(51數碼管顯示

    DHT11溫濕度傳感器(51數碼管顯示)測試程序。
    發表于 05-06 11:47 ?75次下載

    DHT11程序

    DHT11學習
    發表于 12-28 11:07 ?39次下載

    dht11的工作原理_dht11接線圖

    本文介紹了DHT11技術參數、DHT11的特性與dht11典型應用電路,其次詳細的介紹了dht11工作原理與引腳說明,最后介紹了dht11
    發表于 01-22 16:11 ?23.7w次閱讀

    DHT11的使用注意事項

    本文介紹了DHT11傳感器性能參數、DHT11傳感器電氣特性以及 DHT11封裝形式及接口說明,最后詳細用例子來說明DHT11的使用以及DHT11
    發表于 01-26 14:27 ?6.2w次閱讀

    為什么加入dht11的例程讀取不到dht11的數據應該如何解決

     最近遇到了一個十分坑爹的問題,就是在調試我的畢業設計時候。在加入dht11的例程時,怎么都讀取不到dht11的數據。
    發表于 07-02 17:42 ?24次下載
    為什么加入<b class='flag-5'>dht11</b>的例程<b class='flag-5'>讀取</b>不到<b class='flag-5'>dht11</b>的數據應該如何解決

    STMCubeMX+Proteus仿真DHT11(LCD1602顯示)

    本文說明開發工具:STM32CubeMX+Keil5開發芯片:STM32F103R6采溫模塊:DHT11數顯屏幕:LCD1602仿真軟件:Proteus 8.12項目目標:DHT11讀取
    發表于 11-21 14:06 ?50次下載
    STMCubeMX+<b class='flag-5'>Proteus</b>仿真<b class='flag-5'>DHT11</b>(LCD1602<b class='flag-5'>顯示</b>)

    DHT11溫濕度傳感器(詳細)

    DHT11溫度傳感器——使用LCD1602顯示先上效果圖,以及簡單的和室內溫度對比圖,相交而言測量的值還是非常準的。原理講解◎外設讀取步驟主機和從機之間的通信可通過如下幾個步驟完成(外設(如微處理器
    發表于 12-02 21:06 ?85次下載
    <b class='flag-5'>DHT11</b>溫濕度傳感器(詳細)

    Stm32 DHT11

    DHT11 數字溫濕度傳感器是一款含有已校準數字信號輸出的溫濕度復合傳感器。它應用專用的數字模塊采集技術和溫濕度傳感技術,確保產品具有極高的可靠性與卓越的長期穩定性。Stm32 驅動DHT11讀取環境溫濕度
    發表于 12-17 18:23 ?80次下載
    Stm32 <b class='flag-5'>DHT11</b>

    FPGA在OLED上顯示DHT11數據

    這是FPGA之旅設計的第十三例啦,本例是一個綜合性的例程,基于OLED屏幕顯示,和DHT11溫濕度采集,將DHT11采集到的溫濕度顯示到OLED屏幕上。
    的頭像 發表于 09-09 10:33 ?1833次閱讀

    用Arduino讀取DHT22(或DHT11

    電子發燒友網站提供《用Arduino讀取DHT22(或DHT11).zip》資料免費下載
    發表于 11-16 11:02 ?1次下載
    用Arduino<b class='flag-5'>讀取</b><b class='flag-5'>DHT</b>22(或<b class='flag-5'>DHT11</b>)

    如何使用Blynk從DHT11讀取溫度和濕度

    電子發燒友網站提供《如何使用Blynk從DHT11讀取溫度和濕度.zip》資料免費下載
    發表于 02-07 13:56 ?0次下載
    如何使用Blynk從<b class='flag-5'>DHT11</b><b class='flag-5'>讀取</b>溫度和濕度

    Arduino Nano 和 NodeMCU ESP8266 讀取 DHT11 環境溫濕度數據及 OLED顯示

    Arduino Nano 和 NodeMCU ESP8266 讀取 DHT11 環境溫濕度數據及 OLED顯示
    的頭像 發表于 08-13 18:04 ?1330次閱讀
    Arduino Nano 和 NodeMCU ESP8266 <b class='flag-5'>讀取</b> <b class='flag-5'>DHT11</b> 環境溫濕度數據及 OLED<b class='flag-5'>顯示</b>
    百家乐官网牌盒| 虚拟百家乐游戏下载| 百家乐折桌子| 大发888真人娱乐场游戏平台| 改则县| 永利国际娱乐| 赌百家乐官网大小点桌| 百家乐下注几多| 大发888玩的人多吗| 百家乐官网现金网排名| 罗马百家乐官网的玩法技巧和规则| 百家乐顺序| 六合彩报码| 百家乐官网赌场赌场平台| 澳门百家乐| 博亿娱乐| 凱旋门百家乐官网的玩法技巧和规则 | 百家乐官网赢率| 百家乐开发软件| 大发娱乐城888| 百家乐官网双龙出| 百家乐是否能赢| 南部县| 如何赢百家乐官网的玩法技巧和规则 | 屏东县| 24山水口吉凶图| 德州扑克秘籍| 免费百家乐官网的玩法技巧和规则 | 百家乐投注网站| 名仕国际棋牌官方网| 百家乐官网真钱斗地主| 单机百家乐游戏下| 百家乐官网路单下注| 百家乐软件编辑原理| 淘金盈赌场有假吗| 24山分房法| 六合彩网址大全| 澳门百家乐官网游戏下| bet365 uo15| 真人百家乐官网最高赌注| 爱赢娱乐城资讯网|