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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3025|回復(fù): 2
收起左側(cè)

讀溫感DS18B20數(shù)碼管顯示溫度值整數(shù) 單片機(jī)源碼下載

[復(fù)制鏈接]
ID:256633 發(fā)表于 2018-4-9 21:14 | 顯示全部樓層 |閱讀模式
段控制P0到P17(共8條線)。位控制P1.0連接P16的Q1B;P1.1連接Q2B;P1.2連接Q3BP;1.3連接Q4B。
P15的2腳18B20輸出腳,連接到P3.2。
0.jpg

單片機(jī)源程序如下:
  1. /***************************************************************************
  2. 標(biāo)題:        溫感實(shí)驗(yàn)
  3. 效果:        讀取溫度值數(shù)碼管顯示
  4. 工作于:光匯i51開發(fā)板
  5. 作者:        光匯科技
  6. 說明:        板使用12M晶振
  7. ******************************************************************************/

  8. //頭文件:
  9. #include "reg51.h"
  10. #include "ds18b20.h"        //引入DS18B20頭文件

  11. //變量定義:
  12. unsigned char ly_dis[4];//定義顯示緩沖區(qū)
  13. code unsigned char table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xc6};
  14. unsigned int i=0;
  15.         char ltemp;                                        //表:共陽數(shù)碼管 0-9 C
  16. unsigned char l_posit=0;        //顯示位置

  17. //引腳定義:        
  18. sbit SMG_q = P1^0;        //定義數(shù)碼管陽級(jí)控制腳(千位)
  19. sbit SMG_b = P1^1;        //定義數(shù)碼管陽級(jí)控制腳(百位)
  20. sbit SMG_s = P1^2;        //定義數(shù)碼管陽級(jí)控制腳(十位)
  21. sbit SMG_g = P1^3;        //定義數(shù)碼管陽級(jí)控制腳(個(gè)位)
  22. sbit SMKG=P3^6;

  23. //函數(shù)聲明:
  24. void display(void);//顯示函數(shù),顯示緩沖區(qū)內(nèi)容
  25. void delay(void);

  26. //主函數(shù),C語言的入口函數(shù):        
  27. void main()
  28. {
  29.         
  30.         while(1){
  31.                
  32.                 display();        //調(diào)用顯示        
  33.                 delay();
  34.         }
  35. }

  36. //顯示函數(shù),參數(shù)為顯示內(nèi)容
  37. void display()
  38. {
  39.     SMKG=0;
  40.         P0=0XFF;                        //        
  41.         switch(l_posit){
  42.         case 0:                //選擇千位數(shù)碼管,關(guān)閉其它位
  43.                 SMG_q=0;
  44.                 SMG_b=1;        
  45.                 SMG_s=1;               
  46.                 SMG_g=1;
  47.                 P0=table[ly_dis[0]];        //輸出顯示內(nèi)容
  48.                 break;
  49.         case 1:                //選擇百位數(shù)碼管,關(guān)閉其它位
  50.                 SMG_q=1;
  51.                 SMG_b=0;        
  52.                 SMG_s=1;               
  53.                 SMG_g=1;
  54.                 P0=table[ly_dis[1]];
  55.                 break;
  56.         case 2:                //選擇十位數(shù)碼管,關(guān)閉其它位
  57.                 SMG_q=1;
  58.                 SMG_b=1;        
  59.                 SMG_s=0;               
  60.                 SMG_g=1;
  61.                 P0=table[ly_dis[2]];
  62.                 break;
  63.         case 3:                //選擇個(gè)位數(shù)碼管,關(guān)閉其它位
  64.                 SMG_q=1;
  65.                 SMG_b=1;        
  66.                 SMG_s=1;               
  67.                 SMG_g=0;
  68.                 P0=table[ly_dis[3]];
  69.                 break;
  70.         }
  71.         l_posit++;                //每調(diào)用一次將輪流顯示一位
  72.         if(l_posit>3)
  73.                 l_posit=0;        
  74.                 if(i==0)                                //先發(fā)轉(zhuǎn)換命令,再讀數(shù)值,以減少速度慢帶來的顯示抖動(dòng)
  75.                         tmpchange();              //溫度轉(zhuǎn)換
  76.                 if(i==100){
  77.                         ltemp=tmp()/16;                //得到十進(jìn)制溫度值,因?yàn)镈S18B20可以精確到0.0625度,這里取整數(shù)顯示
  78.                         if(ltemp<0){                //判斷第一位顯示整數(shù)還是負(fù)號(hào)
  79.                                 ly_dis[0]=0xbf;
  80.                                 ltemp=0-ltemp;        
  81.                         }
  82.                         else
  83.                         //        ly_dis[0]=ltemp/100;//顯示百位值
  84.                         ltemp=ltemp/100%100;
  85.                         ly_dis[0]=ltemp/10;        //顯示溫度十位值
  86. ……………………

  87. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
12 數(shù)碼管顯示18B20溫度.rar (86.34 KB, 下載次數(shù): 60)





回復(fù)

使用道具 舉報(bào)

ID:277014 發(fā)表于 2018-5-13 22:12 | 顯示全部樓層
p3。6是干嘛的
回復(fù)

使用道具 舉報(bào)

ID:253209 發(fā)表于 2018-5-28 00:33 來自手機(jī) | 顯示全部樓層
應(yīng)該是接的溫度傳感器的數(shù)據(jù)口吧
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美一区2区三区4区公司二百 | 欧美日韩在线一区 | 天天爱av | 日韩电影在线一区 | 在线观看黄色大片 | 久草网址| 亚洲精品一区二区在线观看 | 国产成人一区二区三区 | 精品国产一区二区国模嫣然 | 国产成人综合在线 | 91精品国产综合久久精品图片 | 国产成人精品999在线观看 | 久草.com | 91免费电影| 亚洲天堂中文字幕 | 欧美在线网站 | 在线欧美亚洲 | 日韩中出 | 国产 日韩 欧美 中文 在线播放 | 欧美激情五月 | 性色视频| 国外成人在线视频 | 成年人国产在线观看 | 国产成人在线观看免费 | 国产精品久久久久婷婷二区次 | 亚洲精品一区二区三区免 | 国产成人精品免费视频大全最热 | 久草视频在线播放 | 欧美在线一区二区三区 | 久久区二区| 日本精品一区二区三区在线观看视频 | 国产精品成人一区二区三区 | 久久精品成人 | 国产98色在线| 天天玩天天干天天操 | 欧美日韩国产一区二区三区 | 国产日韩精品视频 | 成人免费观看男女羞羞视频 | 91xxx在线观看| 国产亚洲欧美日韩精品一区二区三区 | 久久网亚洲 |