wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6398|回復: 4
打印 上一主題 下一主題
收起左側

12864 ds1302時間和ds18b20溫度仿真圖+源程序

  [復制鏈接]
跳轉到指定樓層
樓主
12864液晶ds1302時間和ds18b20溫度程序仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. #include <reg51.h>
  2. #include <ds18b20.h>
  3. #include <word.h>
  4. #include <12864display.h>
  5. #include <ds1302.h>

  6. //聲明外部溫度讀數數組
  7. extern unsigned char data temperature[2];
  8. //聲明外部高低溫報警
  9. extern char Alarm_Temp_HL[2];

  10. //存放分解的7個ASCII碼溫度數據  
  11. unsigned char temp[7];

  12. bit HI_Alarm = 0,LO_Alarm = 0;         //高溫低溫報警標志位
  13. sbit HI_LED = P1^4;                                    //高溫報警燈
  14. sbit LO_LED = P1^5;                                    //低溫報警燈
  15. sbit BUZZER = P2^6;                                    //喇叭
  16. sbit button = P1^0;                                    //按鈕切換顯示

  17. sbit button_shi=P1^1;                         //調節時
  18. sbit button_fen=P1^2;                         //分
  19. sbit button_miao=P1^3;                         //秒
  20. sbit button_year=P1^6;                         //年
  21. sbit button_month=P1^7;                         //月
  22. sbit button_day=P3^0;                         //日
  23. sbit button_week=P3^7;                         //星期
  24. //按鈕的7個變量
  25. unsigned char count1,count2,count3,count4,count5,count6,count7;

  26. //根據輸入的tem在12864的第1行的pos位置顯示相應的0~9
  27. void trans(unsigned char hang,unsigned char tem,unsigned int pos)
  28. {
  29.         switch(tem)
  30.         {
  31.                 case '0':vShowOneChar(hang,pos,uca_0);break;
  32.                 case '1':vShowOneChar(hang,pos,uca_1);break;
  33.                 case '2':vShowOneChar(hang,pos,uca_2);break;
  34.                 case '3':vShowOneChar(hang,pos,uca_3);break;
  35.                 case '4':vShowOneChar(hang,pos,uca_4);break;
  36.                 case '5':vShowOneChar(hang,pos,uca_5);break;
  37.                 case '6':vShowOneChar(hang,pos,uca_6);break;
  38.                 case '7':vShowOneChar(hang,pos,uca_7);break;
  39.                 case '8':vShowOneChar(hang,pos,uca_8);break;
  40.                 case '9':vShowOneChar(hang,pos,uca_9);break;
  41.                 default:break;
  42.         }
  43. }

  44. //l2864顯示
  45. void display()          
  46. {
  47.          unsigned char temp_data,temp_data2;
  48.          unsigned int TempDec;        //用來存放4位小數
  49.          temp_data = temperature[1]&0xf8;//取高5位
  50.                 
  51.          if (temp_data==0xf8)        //負溫度讀數
  52.          {       
  53.                 temperature[0]=~temperature[0]+1;
  54.                 temperature[1]=~temperature[1];
  55.                 if (temperature[0]==0x00)
  56.                         temperature[1]++;
  57.                 temp_data = (temperature[1]&0x07)<<4;                //取高字節低3位(溫度讀數高3位)       
  58.             temp_data2 = (temperature[0]&0xf0)>>4;        //取低字節高4位(溫度讀數低4位)
  59.             temp_data= temp_data|temp_data2;        //組合成完整數據                       
  60.                 if(temp_data>=Alarm_Temp_HL[1])
  61.                 {
  62.                         TF0=1;
  63.                         LO_Alarm=1;
  64.                         HI_Alarm=0;
  65.                 }
  66.                 else
  67.                 {
  68.                         TF0=1;
  69.                         LO_Alarm=0;
  70.                         HI_Alarm=0;
  71.                 }
  72.                 vShowOneChar(0,40,uca_fu);
  73.         }
  74.          else
  75.          {
  76.                 temp_data = (temperature[1]&0x07)<<4;                //取高字節低3位(溫度讀數高3位)       
  77.             temp_data2 = (temperature[0]&0xf0)>>4;        //取低字節高4位(溫度讀數低4位)
  78.             temp_data= temp_data|temp_data2;        //組合成完整數據
  79.                 if(temp_data>=Alarm_Temp_HL[0])
  80.                 {
  81.                     TF0=1;
  82.                         HI_Alarm=1;
  83.                         LO_Alarm=0;
  84.                 }
  85.                 else
  86.                 {
  87.                         TF0=1;
  88.                         HI_Alarm=0;
  89.                         LO_Alarm=0;
  90.                 }
  91.                  vShowOneChar(0,40,uca_zheng);
  92.          }

  93.         temp[0] = temp_data/100+0x30;                 //取百位轉換為ASCII碼
  94.         temp[1] = (temp_data%100)/10+0x30;         //取十位轉換為ASCII碼
  95.         temp[2] = (temp_data%100)%10+0x30;         //取個位轉換為ASCII碼

  96.         temperature[0]&=0x0f;                                 //取小數位轉換為ASCII碼
  97.         TempDec = (temperature[0]*0.0625)*10000;//小數部分,擴大1萬倍,1/16,最低分辨率 取四位小數

  98.         temp[3]        = TempDec/1000+0x30;                 //取小數個位轉換為ASCII碼
  99.         temp[4]        = (TempDec%1000)/100+0x30;         //取小數十位轉換為ASCII碼
  100.         temp[5]        = ((TempDec%1000)%100)/10+0x30;//取小數百位轉換為ASCII碼
  101.         temp[6] = ((TempDec%1000)%100)%10+0x30;//取小數千位轉換為ASCII碼

  102.         trans(0,temp[0],48);
  103.         trans(0,temp[1],56);
  104.         trans(0,temp[2],64);
  105.         vShowOneChar(0,72,uca_dian); //小數點
  106.         trans(0,temp[3],80);
  107.         trans(0,temp[4],88);
  108.         trans(0,temp[5],96);
  109.         trans(0,temp[6],104);
  110. }

  111. //中斷,溫度過高過低對應的燈亮
  112. void T0_INT() interrupt 1
  113. {
  114.         TF0=0;
  115.         if(HI_Alarm)
  116.         {
  117.                 HI_LED=0;
  118.                 BUZZER=1;
  119.         }
  120.         else
  121.         {
  122.                 HI_LED=1;
  123.         }
  124.         if(LO_Alarm)
  125.         {
  126.                 LO_LED=0;
  127.                 BUZZER=1;
  128.         }
  129.         else
  130.         {
  131.                 LO_LED=1;
  132.         }
  133. }

  134. void show_time(unsigned char time,unsigned char hang,unsigned char pos1,unsigned char pos2)
  135. {
  136.         unsigned char i,j;
  137.         i=time/10+0x30;
  138.         j=time%10+0x30;
  139.         trans(hang,i,pos1);
  140.         trans(hang,j,pos2);
  141. }

  142. //主函數
  143. void main()
  144. {
  145.         unsigned char shi,fen,miao,year,month,day,week;
  146.         DS1820_Reset();//DS1820初始化
  147.         Set_Alarm_Temp_Value();
  148.         IE=0x82;TMOD=0x02;        //開中斷
  149.         vLCDInitialize();       
  150.         delay100us();
  151.         while(button==1)
  152.         {
  153.                  vShowOneChin(6,16,uca_kb);
  154.                 vShowOneChin(6,32,uca_kb);
  155.                 vShowOneChin(6,80,uca_kb);
  156.                 vShowOneChin(6,96,uca_kb);

  157.                 vShowOneChin(4,32,uca_kb);
  158.                 vShowOneChin(4,48,uca_kb);
  159.                 vShowOneChin(4,64,uca_kb);
  160.                 vShowOneChin(4,80,uca_kb);
  161.                 vShowOneChin(4,16,uca_kb);
  162.                 vShowOneChin(4,96,uca_kb);

  163.                 vShowOneChin(2,32,uca_kb);
  164.                 vShowOneChin(2,48,uca_kb);
  165.                 vShowOneChin(2,64,uca_kb);
  166.                 vShowOneChin(2,80,uca_kb);
  167.                
  168.                 vShowOneChin(0,0,uca_wen);
  169.                 vShowOneChin(0,16,uca_du);
  170.                 vShowOneChar(0,32,uca_mh);
  171.                 vShowOneChar(0,112,uca_o);
  172.                 vShowOneChar(0,120,uca_C);
  173.                 read_temp(); //讀取溫度值
  174.                 delay100us();               
  175.                 display();         //顯示溫度值
  176.                 delay100us();
  177.                 BUZZER=0;
  178.         }
  179.        
  180.         while(button==0)
  181.         {
  182.         //判斷按鍵
  183.                  if(button_shi==0)
  184.                  {
  185.                           while(button_shi==0);
  186.                          count1++;
  187.                  }
  188.                  if(button_fen==0)
  189.                  {
  190.                           while(button_fen==0);
  191.                          count2++;
  192.                  }
  193.                  if(button_miao==0)
  194.                  {
  195.                           while(button_miao==0);
  196.                          count3++;
  197.                  }
  198.                  if(button_year==0)
  199.                  {
  200.                           while(button_year==0);
  201.                          count4++;
  202.                  }
  203.                  if(button_month==0)
  204.                  {
  205.                           while(button_month==0);
  206.                          count5++;
  207.                  }
  208.                  if(button_day==0)
  209.                  {
  210.                           while(button_day==0);
  211.                          count6++;
  212.                  }
  213.                  if(button_week==0)
  214.                  {
  215.                           while(button_week==0);
  216.                          count7++;
  217.                  }

  218.                  shi=ReadSet1302(0x85);
  219.                  shi=((shi&0x70)>>4)*10+(shi&0x0f)+count1;           //高三個字節是十位,低4個字節為個位
  220.                  if(shi>=24)
  221.                          shi=shi-24;

  222.                  fen=ReadSet1302(0x83);
  223.                  fen=((fen&0x70)>>4)*10+(fen&0x0f)+count2;
  224.                  if(fen>=60)
  225.                          fen=fen-60;

  226.                  miao=ReadSet1302(0x81);
  227.                  miao=((miao&0x70)>>4)*10+(miao&0x0f)+count3;
  228.                  if(miao>=60)
  229.                          miao=miao-60;

  230.                  year=ReadSet1302(0x8d);
  231.                  year=((year&0x70)>>4)*10+(year&0x0f)+count4;

  232.                  month=ReadSet1302(0x89);
  233.                  month=((month&0x70)>>4)*10+(month&0x0f)+count5;
  234.                  if(month>=13)
  235.                          month=month-12;

  236.                  day=ReadSet1302(0x87);
  237.                  day=((day&0x70)>>4)*10+(day&0x0f)+count6;
  238.                  if(day>=32)
  239.                          day=day-31;

  240.                  week=ReadSet1302(0x8b);
  241.                  week=((week&0x70)>>4)*10+(week&0x0f)+0x30+count7;
  242.                  if(week>=0x38)
  243.                  {
  244.                          week=week-0x07;
  245.                          count7=0;
  246.                  }
  247.                  if(week==0x31)
  248.                  week=week+6;
  249. ……………………

  250. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
12864ds1302時間和ds18b20溫度程序和仿真圖.zip (235.82 KB, 下載次數: 199)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏7 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:638447 發表于 2019-11-26 15:48 | 只看該作者
12864不顯示啊
回復

使用道具 舉報

板凳
ID:262059 發表于 2019-11-26 18:41 | 只看該作者
謝謝樓主
回復

使用道具 舉報

地板
ID:585983 發表于 2021-3-17 17:38 | 只看該作者
有bug啊,23.59.59之后就是23.60.00了
回復

使用道具 舉報

5#
ID:402026 發表于 2021-3-27 14:53 | 只看該作者
做的非常棒!非常不錯!
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
色悠久久久久综合网小说| 国产一区二区在线观看免费| 国产精品一区二区中文字幕| 精品国产欧美| 91嫩草国产线观看亚洲一区二区 | 狂野欧美性猛交xxxxx视频| 91caoporm在线视频| 国产在线播放av| yiren22亚洲综合伊人22| 天堂av在线播放| 日色在线视频| 国产高清一级毛片在线不卡| 成在在线免费视频| 日本视频不卡| 久久香蕉一区| 肉色欧美久久久久久久免费看| 亚洲天堂一区二区| 日日夜夜综合| 国产+成+人+亚洲欧洲在线| 久久精品亚洲成在人线av网址| 精品亚洲自拍| 久久国产成人精品| 一区在线免费| 另类成人小视频在线| 国产成a人无v码亚洲福利| 91在线小视频| 亚洲免费色视频| 精品福利在线看| 欧美调教femdomvk| 亚洲成色www8888| 国产一区二区精品丝袜| 欧美极品少妇xxxxⅹ裸体艺术| 91精品成人久久| 国产一区视频在线播放| 激情欧美一区二区三区中文字幕| 五月天久久综合网| www.浪潮av.com| 无套白嫩进入乌克兰美女| 日韩精品电影一区二区| 国产精品第一页在线观看| 亚洲精品一区二三区| 精品久久久久中文慕人妻| 中文字幕在线免费视频| 大陆一级毛片免费观看| 中文在线√天堂| 操你啦在线视频| h1515四虎成人| 国产探花在线精品| 视频一区在线播放| 久久女同精品一区二区| 调教+趴+乳夹+国产+精品| 欧美精品黑人性xxxx| 国产午夜精品全部视频在线播放| 2020国产精品视频| 精品久久中出| 国产极品美女高潮无套久久久| 国产chinese中国hdxxxx| 黄色一级片中国| 精品国产黄色片| 91社区视频| 青青草视频在线免费观看| 性国裸体高清亚洲| 国产精品一区二区99| 久久久成人网| 国产精品美女久久久久av爽李琼| 一区二区欧美国产| 精品视频色一区| 亚洲欧美三级在线| 91国产一区在线| 精品一区久久| 校园春色 亚洲色图| 一级黄色片网址| 久久精品视频免费播放| 日韩精品中文字| 日本一区二区在线播放| 五月天久久综合网| 国产高清在线一区| 97超碰国产精品| 国产制服丝袜在线| 老熟妇一区二区三区啪啪| 麻豆国产视频| 欧美精品少妇| 成人黄色理论片| 影音先锋在线一区| 国产日韩欧美精品在线| 欧美一区二区视频在线观看2020 | 草草视频在线| 国产一区二区在线视频你懂的| 香蕉亚洲视频| 国产精品久久看| 欧美mv和日韩mv国产网站| 91精品国产沙发| 伊人精品久久久久7777| 免费a v网站| 这里只有久久精品视频| 深夜福利网址| 免费污视频在线| 成人一区二区| 91在线免费视频观看| 欧美久久一二区| 欧美性受xxxx白人性爽| 中文字幕成人一区| www.中文字幕av| 欧美一区二区三区成人片在线| 99re6在线视频| 亚洲精品成人图区| 欧美视频在线观看| 国产精品你懂的| 亚洲福利小视频| 色婷婷综合久久| 美女视频黄免费的亚洲男人天堂| 欧美精品123| 久久性爱视频网站| va婷婷在线免费观看| 国产男女爽爽爽| 深夜福利亚洲| 韩国三级在线一区| 欧美久久久久久久久| 国产精品国内视频| 亚洲免费av一区二区三区| 久久99国产综合精品免费| 两个人免费视频观看日本| 91超碰国产在线| 99在线精品视频在线观看| 亚洲一区二区精品久久av| 欧美成人午夜免费视在线看片| 伊人久久大香线蕉av一区| 日本免费www| 国产麻豆一区二区三区精品| av小说在线播放| 亚洲人成在线影院| 欧美午夜女人视频在线| 欧美在线视频播放| 少妇性饥渴无码a区免费| 色播视频在线播放| 成人观看视频| 国产精品视频3p| 久久久久久黄色| 深夜精品寂寞黄网站在线观看| 一级做a爰片久久| 欧美日韩在线视频免费播放| 黄色网免费观看| 二区三区精品| 91在线观看污| 久久精品精品电影网| 国产精彩视频一区二区| 波多野结衣 久久| 一级香蕉视频在线观看| 精品久久视频| 亚洲 欧美综合在线网络| 国产精品精品国产| 91porn在线| 欧美性猛交xxxx免费看蜜桃| 欧产日产国产精品视频| 亚洲欧美日韩一区在线观看| 大桥未久av一区二区三区| 欧美最近摘花xxxx摘花| www午夜视频| 亚洲人在线观看视频| 日本高清在线观看wwwww色| 久久久久久久久丰满| 亚洲永久免费视频| 久久久在线观看| 午夜大片在线观看| 日本一区二区免费不卡| 男人天堂亚洲| 青草综合视频| a√资源在线| 99久久99热这里只有精品| 精品久久久久人成| 国产成人精品电影| 女性生殖扒开酷刑vk| 中文字幕亚洲免费| 日韩视频网站在线观看| 97se亚洲国产综合自在线| 精品国产视频在线| 欧美精品色婷婷五月综合| 国产情侣av在线| 免费观看在线黄色网| 久久人人精品| 精品免费日韩av| 台湾无码一区二区| 瑟瑟视频在线免费观看| 国产秀色在线www免费观看| 国产视频一区在线观看一区免费| 欧美另类久久久品| 鲁鲁狠狠狠7777一区二区| 久久久久久久蜜桃| 日产精品久久久久久久性色| 精品国产视频| 日韩欧美国产免费播放| 国产精品日韩一区二区三区| 九九热国产精品视频| 久久久久久女乱国产| 男人的天堂成人在线| 亚洲欧美日韩精品久久亚洲区| 精品国偷自产一区二区三区| www久久久com| 视频精品导航| 欧美激情在线观看视频免费| 日本在线观看天堂男亚洲| 亚洲久久久久久久| 三级av网站| 五月激情综合| 日韩三级在线观看| 波多野结衣之无限发射| 亚洲av片一区二区三区| 国产成人77亚洲精品www| 国产精品毛片久久久久久久| 国产欧美日韩最新| 青青草国产在线观看| 一区二区三区视频国产日韩| 秋霞午夜鲁丝一区二区老狼| 亚洲一区二区久久久| 色网站在线视频| 先锋av资源| 欧美电影一二区| 日韩精品一区二区三区在线| 黄色片视频在线免费观看| 国产欧美日韩精品综合| 极品尤物一区| 欧美日韩性生活| 超碰人人爱人人| 欧美性狂猛xxxxxbbbbb| 要久久爱电视剧全集完整观看| 欧美一级片免费看| 国产男女免费视频| 一二三四日本在线| 欧美大片aaaa| 亚洲天堂免费在线| 91插插插影院| 天天做天天爱天天爽| 好吊日精品视频| 亚洲女同精品视频| 视频免费在线观看| 青青草在线视频免费观看| 精品一区二区免费在线观看| 国产成一区二区| 亚洲精品成人在线视频| 全球最大av网站久久| 色婷婷激情一区二区三区| 国产素人在线观看| 色先锋影音av| 精品亚洲国内自在自线福利| 国产美女扒开尿口久久久| 国模私拍一区二区| 日韩在线亚洲| 精品99一区二区| 污污免费在线观看| 日本精品在线| 亚洲精品成人少妇| 国产真人做爰毛片视频直播| 九色蝌蚪自拍| 六月婷婷色综合| 国产欧美精品xxxx另类| 一本色道久久综合无码人妻| 久久精品论坛| 伊人激情综合网| 久久久影院一区二区三区| 午夜精品久久久久久久爽| 网红女主播少妇精品视频| 日韩精品视频在线播放| 国产福利短视频| 一色桃子av在线| 红桃av永久久久| 午夜激情av在线| 欧美色图另类| 中文字幕中文字幕在线一区| 999在线观看精品免费不卡网站| 免费在线观看黄色网| 98在线视频| 欧美有码在线观看| 国产区av在线| 黄色av片三级三级三级免费看| 午夜电影福利| avtt中文字幕| 欧美另类老女人| 喷白浆一区二区| 情se视频网在线观看| 亚洲精品中文字幕在线播放| 色吧影院999| 久久国产精品99久久久久久老狼| 1024国产在线| 国产成人精品一区二区色戒| 日本成人精品在线| 伊人久久大香线蕉综合网站 | 国产黄色免费在线观看| 日韩成人午夜电影| 国产偷倩在线播放| 中文字幕在线久热精品| 成人黄色一级大片| 国产91精品久久久久久久| 一区二区三区资源| 日韩啪啪电影网| 77导航福利在线| 免费国产精品视频| 国产一区二区在线观看免费视频| 欧美黑人性猛交| 国产精品国产三级国产专播品爱网| 欧美性另类69xxxx| 日本五十肥熟交尾| 成人动漫在线观看视频| 欧美人狂配大交3d怪物一区| 玖玖在线精品| 久久精品资源| 成人永久免费网站| 一级黄色免费网站| 牛夜精品久久久久久久| 一本到不卡精品视频在线观看| 新67194成人永久网站| 性高爱久久久久久久久| 好吊妞这里只有精品| 国产精品无码久久av| 日本一区二区在线观看视频| 91色视频在线导航| 国产视频在线观看一区二区| 欧美国产日韩在线观看| 欧美精品18| 国产伦精品一区二区三区视频金莲| www.91视频.com| 日韩欧美成人一区二区三区| 久久99爱视频| 精品乱色一区二区中文字幕| 91精品国产91久久久久久久久| 精品在线视频一区| 综合伊思人在钱三区| 国产精品诱惑| 国产三区视频在线观看| 国产永久免费观看| 国内精品福利视频| 免费不卡av网站| 先锋影音网一区| 国产精品成人免费电影| 欧美精品一区二区三区蜜桃视频 | 天天干天天骑| 无码国精品一区二区免费蜜桃| av资源在线免费观看| 欧美特级aaa| www.日本三级| 日韩在线导航| 国产66精品久久久久999小说| 午夜精品一区二区三区视频免费看| 日韩电视剧免费观看网站| 欧美久久久久中文字幕| 久久99国内精品| 精品一级毛片| 久久精品黄色| 国产精品美女久久久久| 成人国产精品入口免费视频| 在线观看中文| 精品欧美色视频网站在线观看| 在线成人精品视频| 亚洲美女搞黄| 国产精品久久网| 超碰97人人做人人爱少妇| 日韩高清av在线| 亚洲成人精品在线| 中文字幕一区二区三| 99久久精品久久久久久清纯| 蜜桃91丨九色丨蝌蚪91桃色| 精品欧美久久久| 91成人在线看| 深夜福利网站在线观看| 日本综合视频| 自拍偷拍亚洲视频| 日韩欧美另类一区二区| 91丝袜在线| 韩国成人免费视频| 国产色婷婷在线| 中文字幕在线观看第二页| 熟女av一区二区| 玖玖爱免费视频| 日本少妇全体裸体洗澡| 日本一级一片免费视频| 波多野结衣高清在线| 国产精品女同一区二区| 乱色精品无码一区二区国产盗| 神宫寺奈绪一区二区三区| sese久久| 黄色的网站免费| av成人动漫| 黄色在线观看网站| 成人免费在线观看视频| 亚洲三区欧美一区国产二区| 日韩一级电影| 欧美区国产区| 久久99久久99精品免视看婷婷| 国产成人精品免费网站| 国产精品传媒入口麻豆| 欧美日韩在线视频首页| 4438x亚洲最大成人网| 亚洲天堂av女优| 日本免费久久高清视频| 精品欧美一区二区在线观看视频| 日韩第一页在线观看| 久久国产激情视频| 国产熟女一区二区| 日韩黄色片网站| 性感小视频在线看免费| 精品亚洲综合|