久久久久久久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://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产激情视频 | 日韩av在线一区二区 | 波多野结衣在线观看一区二区三区 | 国产精品色 | www成人免费视频 | 日韩视频在线一区 | 欧美一级一 | 久久午夜国产精品www忘忧草 | 精品中文字幕一区二区 | 精品国产乱码一区二区三区 | 亚洲免费在线观看视频 | 精品久久视频 | 欧美欧美欧美 | 国产一级久久久久 | 黑人粗黑大躁护士 | 国产精品日韩欧美 | 91免费入口 | 浮生影院免费观看中文版 | 草久在线视频 | 日韩久久久久久 | 成人精品视频 | 91精品国产高清一区二区三区 | 国产精品99久久久久久大便 | 在线观看免费黄色片 | 精品国产一区二区在线 | 狠狠狠色丁香婷婷综合久久五月 | 日本在线精品视频 | 国产精品1区2区 | 在线观看视频你懂得 | 97久久精品午夜一区二区 | 成人在线视频网 | 91在线综合| 中文字幕一区二区三区四区五区 | 欧美free性| 精品一二三 | 成人性视频免费网站 | 91社区视频 | 中文字幕亚洲欧美日韩在线不卡 | 亚洲一区二区视频 | 国产一区二区在线免费观看 | 在线免费观看亚洲 |