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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5239|回復: 5
收起左側

單片機通過ESP8266與手機端進行網絡通信的源碼與APP下載

  [復制鏈接]
ID:371965 發表于 2018-12-7 10:41 | 顯示全部樓層 |閱讀模式
在校期間研究了一套程序,手機通過網絡可以讀取單片機端的數據  比如溫度 濕度 開關燈 等等  現在將程序源碼上傳交流學習,資料是一套視頻,論壇限制沒辦法就先把程序上傳,有興趣可以加我qq1506175115聯系我,本人電話18363353598

單片機使用為stc15w408as單片機

此程序 為前幾個視頻的程序 為方便查找在這里做了一個合集  wifi名稱為 aaa 密碼為 88888888  
手機app為wifi版  兩個程序全部通用 藍牙版本太過簡單 就不做了

0.png

單片機源程序如下:
  1. /*********************************************************************************
  2. * 【外部晶振】: 11.0592mhz       
  3. * 【主控芯片】: STC89C52
  4. * 【編譯環境】: Keil μVisio3       
  5. * 【程序功能】: 實時采集當前環境溫度值,并顯示于數碼管上                                                                                           
  6. * 【使用說明】:
  7. *  說明:免費開源,不提供源代碼分析.
  8. **********************************************************************************/

  9. #include <stc15.h>
  10. #include<stdio.h>
  11. #include<intrins.h>
  12. #define uchar unsigned char
  13. #define uint unsigned int
  14. sbit DS=P2^2;           //define interface
  15. uint temp;             // variable of temperature
  16. uchar flag1;            // sign of the result positive or negative
  17. unsigned int a;


  18. void  delay()
  19. {
  20. unsigned char i, j;

  21.         _nop_();
  22.         i = 2;
  23.         j = 199;
  24.         do
  25.         {
  26.                 while (--j);
  27.         } while (--i);
  28. }


  29. void inte()
  30. {
  31.                   
  32.         // 下面代碼設置定時器
  33.         SCON = 0x50;                //8位數據,可變波特率
  34.         AUXR |= 0x01;                //串口1選擇定時器2為波特率發生器
  35.         AUXR &= 0xFB;                //定時器2時鐘為Fosc/12,即12T
  36.         T2L = 0xE8;                //設定定時初值
  37.         T2H = 0xFF;                //設定定時初值
  38.         AUXR |= 0x10;                //啟動定時器2
  39.         ES   = 1;                // 開串口1中斷
  40.         EA   = 1;                // 開總中斷
  41. }
  42. void dsreset(void)       //send reset and initialization command
  43. {
  44.   uint i;
  45.   DS=0;
  46.   i=1003;
  47.   while(i>0)i--;
  48.   DS=1;
  49.   i=4;
  50.   while(i>0)i--;
  51. }

  52. bit tmpreadbit(void)       //read a bit
  53. {
  54.    uint i;
  55.    bit dat;
  56.    DS=0;i++;          //i++ for delay
  57.    DS=1;i++;i++;
  58.    dat=DS;
  59.    i=80;while(i>0)i--;
  60.    return (dat);
  61. }

  62. uchar tmpread(void)   //read a byte date
  63. {
  64.   uchar i,j,dat;
  65.   dat=0;
  66.   for(i=1;i<=8;i++)
  67.   {
  68.     j=tmpreadbit();
  69.     dat=(j<<7)|(dat>>1);   //讀出的數據最低位在最前面,這樣剛好一個字節在DAT里
  70.   }
  71.   return(dat);
  72. }

  73. void tmpwritebyte(uchar dat)   //write a byte to ds18b20
  74. {
  75.   uint i;
  76.   uchar j;
  77.   bit testb;
  78.   for(j=1;j<=8;j++)
  79.   {
  80.     testb=dat&0x01;
  81.     dat=dat>>1;
  82.     if(testb)     //write 1
  83.     {
  84.       DS=0;
  85.       i++;i++;
  86.       DS=1;
  87.       i=80;while(i>0)i--;
  88.     }
  89.     else
  90.     {
  91.       DS=0;       //write 0
  92.       i=80;while(i>0)i--;
  93.       DS=1;
  94.       i++;i++;
  95.     }

  96.   }
  97. }

  98. void tmpchange(void)  //DS18B20 begin change
  99. {
  100.   dsreset();
  101.   delay();
  102.   tmpwritebyte(0xcc);  // address all drivers on bus
  103.   tmpwritebyte(0x44);  //  initiates a single temperature conversion
  104. }

  105. uint tmp()               //get the temperature
  106. {
  107.   float tt;
  108.   uchar a,b;
  109.   dsreset();
  110.   delay();
  111.   tmpwritebyte(0xcc);
  112.   tmpwritebyte(0xbe);
  113.   a=tmpread();
  114.   b=tmpread();
  115.   temp=b;
  116.   temp<<=8;             //two byte  compose a int variable
  117.   temp=temp|a;
  118.   tt=temp*0.0625;
  119.   temp=tt*10+0.5;
  120.   return temp;
  121. }


  122. void main()
  123. {
  124.         inte();
  125.          TI=1;
  126. while(1)
  127.   {
  128.     tmpchange();
  129.         for(a=10;a>0;a--)
  130.           {   
  131.                   temp=tmp();
  132.                 printf("%D\n",temp);
  133.           }
  134.   }
  135. }
  136. void ser() interrupt 4                                           //串口中斷程序
  137. {       
  138.                 if(RI==1)
  139.                 {
  140.                   RI=0;       
  141.                 }
  142.                 if(TI==1)
  143.                 {
  144.                         TI=0;
  145.                 }
  146. }
復制代碼

所有資料51hei提供下載:
程序合集 (完成版).zip (2.57 MB, 下載次數: 121)


評分

參與人數 2黑幣 +55 收起 理由
mashuiyou + 5 贊一個!
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:585455 發表于 2019-7-26 19:29 | 顯示全部樓層
感謝無私分享
回復

使用道具 舉報

ID:280466 發表于 2021-2-9 14:30 | 顯示全部樓層
沒有app源碼發來做啥呢小朋友
回復

使用道具 舉報

ID:372579 發表于 2021-2-12 17:57 來自觸屏版 | 顯示全部樓層
這個是不是自己做無線溫度顯示?
回復

使用道具 舉報

ID:849826 發表于 2021-2-13 09:07 | 顯示全部樓層
有沒有16路遠程遙控開關程序,局域網的做過,遠程的不會
回復

使用道具 舉報

ID:648281 發表于 2021-2-13 11:04 | 顯示全部樓層
6313 發表于 2021-2-13 09:07
有沒有16路遠程遙控開關程序,局域網的做過,遠程的不會

遠程的遙控開關,高級點的可以采用云控制,簡單點的采用端口映射
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日本不卡高字幕在线2019 | 中文字幕在线视频精品 | 欧美在线一区二区三区 | av资源中文在线 | 综合亚洲视频 | 最新超碰 | 国产色99精品9i | 中文字幕 在线观看 | 国产成人免费视频网站高清观看视频 | 久久综合狠狠综合久久综合88 | 黄色电影在线免费观看 | 亚洲欧洲综合av | 国产成人精品一区二区 | 日韩精品在线一区 | 中文字幕 在线观看 | 成人在线播放网站 | 天天爽网站 | 99热视| 99久久精品一区二区毛片吞精 | 欧美日韩在线视频一区 | 久久久久久久久久久久久久av | 天天综合久久网 | 欧美精品一区二区三区蜜桃视频 | 超碰国产在线 | 成年人免费看的视频 | 国产成人精品一区二区 | 中文字幕97 | 久久久91精品国产一区二区三区 | 精品久久久久久亚洲国产800 | 亚洲欧美在线一区 | 国产精品久久久久久久免费观看 | 成人日批视频 | 牛牛热在线视频 | 日韩视频一区二区 | www.久久 | 91久久网站 | 中文字幕日韩专区 | 国产精品99久久久久久久久久久久 | 精品入口麻豆88视频 | 国产精品无码久久久久 | 黄免费观看视频 |