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

標題: STM32單片機DS18B20測溫數碼管顯示程序(不帶CRC、不帶零度以下溫度)有注釋 [打印本頁]

作者: 用戶21111412    時間: 2020-11-24 11:20
標題: STM32單片機DS18B20測溫數碼管顯示程序(不帶CRC、不帶零度以下溫度)有注釋

DS1302驅動和數碼管驅動程序如附件!
單片機源程序如下:
  1. #include "ds18b20.h"
  2. #include "display.h"
  3. #include "delay.h"
  4. void Ds18B20_Output()
  5. {
  6.         GPIO_InitTypeDef GPIO_InitStructure;
  7.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOG,ENABLE);                //使能PG時鐘
  8.         
  9.         GPIO_InitStructure.GPIO_Pin=GPIO_Pin_11;                                        //PG11口
  10.         GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;                                //設定I/O口推挽輸出
  11.         GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
  12.         GPIO_Init(GPIOG,&GPIO_InitStructure);
  13. }
  14. void Ds18B20_Input()
  15. {
  16.         GPIO_InitTypeDef GPIO_InitStructure;
  17.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOG,ENABLE);                //使能PG時鐘
  18.         
  19.         GPIO_InitStructure.GPIO_Pin=GPIO_Pin_11;                                        //PG11口
  20.         GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;                        //浮空輸入
  21.         GPIO_Init(GPIOG,&GPIO_InitStructure);        
  22. }

  23. void Ds18b20_Reset(void)
  24. {
  25.         Ds18B20_Output();                //將PG11配置為推挽輸出
  26.         DQ_Write_1;                                //拉高總線
  27.         delayus(1);
  28.         DQ_Write_0;                                //拉低總線
  29.         delayus(480);                        //延時,拉低總線480~960us
  30.         DQ_Write_1;                                //釋放總線
  31.         Ds18B20_Input();                //DQ改為輸入模式
  32.         delayus(40);                        //延時約60us
  33.         while((DQ_ReadBit));        //等待從機DS18B20應答
  34.         while(!(DQ_ReadBit));        //等待應答信號結束,釋放總線        
  35. }
  36. void Ds18b20_Write(u8 dat)
  37. {
  38.         u8 m0;
  39.         Ds18B20_Output();                //將PG11配置為推挽輸出
  40.         for(m0=0;m0<8;m0++)
  41.         {
  42.                 DQ_Write_0;                                //拉低總線
  43.                 delayus(10);                        //延時10us,最大不超過15us
  44.                 if(dat&0x01)
  45.                         DQ_Write_1;
  46.                 else
  47.                         DQ_Write_0;
  48.                 delayus(30);                        //延時40us
  49.                 DQ_Write_1;                                //釋放總線
  50.                 delayus(1);                                //兩個寫之間,間隔至少1us
  51.                 dat>>=1;                                //右移1位,
  52.         }
  53. }
  54. u8 Ds18b20_Read(void)
  55. {
  56.         u8 m0,temp0;
  57.         for(m0=0;m0<8;m0++)
  58.         {
  59.                 temp0>>=1;                //數據右移一位
  60.                 Ds18B20_Output();                //將PG11配置為推挽輸出
  61.                 DQ_Write_0;                                //拉低總線,啟動
  62.                 DQ_Write_1;                                //釋放總線
  63.                 if(DQ_ReadBit==1)
  64.                         temp0|=0x80;
  65.                 delayus(40);
  66.         }
  67.         return temp0;
  68. }
  69. void temperature(void)
  70. {
  71.         u16 temp1,temp2;
  72.         Ds18b20_Reset();
  73.         Ds18b20_Write(0xcc);                //跳過ROM
  74.         Ds18b20_Write(0x44);                //溫度轉換

  75.         Ds18b20_Reset();
  76.         Ds18b20_Write(0xcc);                //跳過ROM
  77.         Ds18b20_Write(0xbe);                //讀取RAM
  78.         
  79.         temp1=Ds18b20_Read();                //讀取低8位
  80.         temp2=Ds18b20_Read();                //讀取高8位
  81.         Ds18b20_Reset();                        //復位,表示讀取結束
  82.         display(((temp2<<8)|temp1)*0.0625);
  83. }
復制代碼



注意缺少main函數等,介意的就不要下載了: HARDWARE.rar (2.22 KB, 下載次數: 30)





歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 日本黄a三级三级三级 | av一二三区 | 免费av毛片 | 亚洲精品国产精品国自产观看浪潮 | 久久黄色大片 | 日韩av不卡在线 | 91亚洲精品乱码久久久久久蜜桃 | 午夜久久久久久 | 精品亚洲一区二区三区四区五区 | 久久av一区二区三区亚洲 | 日韩成人精品 | 黄色成人在线视频 | 欧美日韩黄 | 一级片黄色| 成人高潮片免费 | 国产成人精品一区二区 | 欧美一区二区三区在线视频 | 日本黄色视屏 | 在线黄色av | 日本三极片 | 国产盗摄一区二区三区 | 噜噜视频 | 18成人免费观看网站 | 免费av网址在线观看 | 日本久久精品视频 | 岛国av噜噜噜久久久狠狠av | 国产精品99久久久久久www | 日韩中文字幕一区 | 国产精品久久久精品 | 国产精品尤物 | 亚洲精品成a人在线观看 | 中文天堂在线观看 | 欧美视频在线一区 | 国产一区二区不卡视频 | 国产午夜三级 | 欧美成人精品欧美一级乱黄 | 久久国产欧美 | 欧美成人性生活视频 | 久草这里只有精品 | 欧美操 | 欧美狠狠操 |