找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 957|回复: 0
收起左侧

51单片机双设备通信控制小灯的程序设计

[复制链接]
ID:599280 发表于 2020-11-25 20:50 | 显示全部楼层 |阅读模式
单片机设计小程序,多亏队友带在我本来的代码上修改了不少,在此表示由衷感谢!
以下是全部源程序,因为偷懒没有把各个模块的子程序封装成库,供大家学习!
临近期末,事多人忙,也愿大家好好努力,不愧初心!

单片机源程序如下:
  1. #include <reg52.h>
  2. #include <stdio.h>
  3. #include <string.h>
  4. #include <intrins.h>
  5. #define U unsigned char
  6. sbit scl=P1^1;
  7. sbit sda=P1^0;
  8. sbit key=P1^7;
  9. sbit red=P1^4;
  10. sbit green=P1^3;
  11. sbit blue=P1^5;
  12. U a[81]={1},st=1,sq=1;
  13. char page=0;
  14. U num=0,sw=1;
  15. U code order1[]="AT+RST\r\n";
  16. U code order2[]="AT+CWMODE=2\r\n";
  17. U code order3[]="AT+CWSAP=\"sPinAr\",\"22222222\",11,3\r\n";
  18. U code order4[]="AT+CIPMUX=1\r\n";
  19. U code order5[]="AT+CIPSERVER=1,8080\r\n";
  20. U code order6[]="AT+CIFSR\r\n";
  21. U code dt_pls[2][6]={
  22.     0x00,0x80,0x00,0x00,0x00,0X00,                         //dot
  23.     0x08,0x08,0x3E,0x08,0x08,0X00};                        //plus
  24. U code alpha[26][6]={
  25.     0xFC,0x12,0x11,0x12,0xFC,0x00,                         //A
  26.     0xFF,0x89,0x89,0x89,0x76,0x00,                         //B
  27.     0x7E,0x81,0x81,0x81,0x42,0x00,                         //C
  28.     0xFF,0x81,0x81,0x81,0x7E,0x00,                         //D
  29.     0xFF,0x89,0x89,0x89,0x89,0x00,                         //E
  30.     0xFF,0x09,0x09,0x09,0x09,0x00,                         //F
  31.     0x7E,0x81,0x91,0x91,0x70,0x00,                         //G
  32.     0xFF,0x08,0x08,0x08,0xFF,0x00,                         //H
  33.     0x81,0x81,0xFF,0x81,0x81,0x00,                         //I
  34.     0x41,0x81,0x81,0xFF,0x01,0x00,                         //J
  35.     0xFF,0x18,0x24,0x42,0x81,0x00,                         //K
  36.     0xFF,0x80,0x80,0x80,0x80,0x00,                         //L
  37.     0xFF,0x06,0x0C,0x06,0xFF,0x00,                         //M
  38.     0xFF,0x08,0x10,0x20,0xFF,0x00,                         //N
  39.     0x7E,0x81,0x81,0x81,0x7E,0x00,                         //O
  40.     0xFF,0x11,0x11,0x11,0x0E,0x00,                         //P
  41.     0x7E,0x81,0xA1,0xA1,0xFE,0x00,                         //Q
  42.     0xFF,0x19,0x29,0x49,0x86,0x00,                         //R
  43.     0x46,0x89,0x89,0x89,0x72,0x00,                         //S
  44.     0x01,0x01,0xFF,0x01,0x01,0x00,                         //T
  45.     0x7F,0x80,0x80,0x80,0x7F,0x00,                         //U
  46.     0x07,0x38,0xC0,0x38,0x07,0x00,                         //V
  47.     0x1F,0xE0,0x18,0xE0,0x1F,0x00,                         //W
  48.     0x81,0x66,0x18,0x66,0x81,0x00,                         //X
  49.     0x03,0x0C,0xF0,0x0C,0x03,0x00,                         //Y
  50.     0xE1,0x91,0x89,0x85,0x83,0x00};                        //Z
  51. U code bet[26][6]={
  52.     0x70,0x88,0x88,0x88,0xF0,0x00,                        //a
  53.     0xFF,0x88,0x88,0x88,0x70,0x00,                        //b
  54.     0x70,0x88,0x88,0x88,0x48,0x00,                        //c
  55.     0x70,0x88,0x88,0x88,0xFF,0x00,                        //d
  56.     0x70,0xA8,0xA8,0xA8,0xB0,0x00,                        //e
  57.     0x88,0x88,0xFE,0x09,0x09,0x00,                        //f
  58.     0x4C,0x92,0x92,0x92,0x7C,0x00,                        //g
  59.     0xFF,0x08,0x08,0x08,0xF0,0x00,                        //h
  60.     0x08,0x08,0xFA,0x80,0x40,0x00,                        //i
  61.     0x00,0x40,0x88,0x88,0xFA,0x00,                        //j
  62.     0xFF,0x20,0x50,0x88,0x88,0x00,                        //k
  63.     0x80,0x40,0xFF,0x92,0x4C,0x00,                        //l
  64.     0xF8,0x10,0xF8,0x10,0xF8,0x00,                        //m
  65.     0xF8,0x10,0x08,0x08,0xF0,0x00,                        //n
  66.     0x70,0x88,0x88,0x88,0x70,0x00,                        //o
  67.     0x08,0xFC,0x24,0x24,0x18,0x00,                        //p
  68.     0x18,0x24,0x24,0xFC,0x80,0x00,                        //q
  69.     0x08,0xFC,0x04,0x04,0x08,0x00,                        //r
  70.     0x48,0x94,0x94,0x94,0x64,0x00,                        //s
  71.     0x08,0x7C,0x88,0x88,0x40,0x00,                        //t
  72.     0x08,0x7C,0x80,0x80,0xFC,0x00,                        //u
  73.     0x1C,0x60,0x80,0x60,0x1C,0x00,                        //v
  74.     0x3C,0xC0,0x3C,0xC0,0x3C,0x00,                        //w
  75.     0x84,0x48,0x30,0x48,0x84,0x00,                        //x
  76.     0x84,0x98,0x60,0x18,0x04,0x00,                        //y
  77.     0xC4,0xA4,0x94,0x94,0x8C,0x00};                        //z
  78. U digital[10][6]={                                         
  79.     0x00,0x7E,0x91,0x89,0x7E,0x00,                         //0
  80.     0x00,0x80,0x82,0xFF,0x80,0x00,                         //1
  81.     0x00,0xC2,0xA1,0x91,0x8E,0x00,                         //2
  82.     0x00,0x42,0x89,0x89,0x76,0x00,                         //3
  83.     0x00,0x38,0x24,0x22,0xFF,0x00,                         //4
  84.     0x00,0x8F,0x89,0x89,0x71,0x00,                         //5
  85.     0x00,0x7E,0x89,0x89,0x71,0x00,                         //6
  86.     0x00,0x03,0xF1,0x09,0x07,0x00,                         //7
  87.     0x00,0x76,0x89,0x89,0x76,0x00,                         //8
  88.     0x00,0x4E,0x91,0x91,0x7E,0x00};                        //9
  89. void time(){
  90.     U i,j;
  91.     for(i=200;i>0;i--)
  92.     for(j=200;j>0;j--);
  93.     }
  94. U scan(){
  95.     U i;
  96.     if(!key){
  97.         time();
  98.         while(!key);
  99.         return 2;
  100.         }
  101.     if(sw && num>1){
  102.         sw=0;
  103.         for(i=1;i<81;i++)
  104.             a[i]=0;
  105.         return 3;
  106.         }
  107.     return 0;
  108.     }
  109. void iic_init(){
  110.     scl=1;_nop_();_nop_();
  111.     sda=1;_nop_();_nop_();   
  112.     }
  113. void iic_sta(){
  114.     sda=1;_nop_();_nop_();
  115.     scl=1;_nop_();_nop_();
  116.     sda=0;_nop_();_nop_();
  117.     }
  118. void iic_rsp(){
  119.     U i=0;
  120.     scl=1;_nop_();_nop_();
  121.     while(sda&&(i++<255));
  122.     scl=0;_nop_();_nop_();                           
  123.     }
  124. void iic_stp(){
  125.     sda=0;_nop_();_nop_();
  126.     scl=1;_nop_();_nop_();
  127.     sda=1;_nop_();_nop_();
  128.     }
  129. void iic_wr(U x){
  130.     U i,temp;
  131.     temp=x;
  132.     for(i=0;i<8;i++){
  133.         temp<<=1;
  134.         scl=0;_nop_();_nop_();
  135.         sda=CY;_nop_();_nop_();
  136.         scl=1;_nop_();_nop_();
  137.         }
  138.     scl=0;_nop_();_nop_();
  139.     sda=1;_nop_();_nop_();
  140.     }
  141. void command(U x){
  142.     iic_sta();
  143.     iic_wr(0x78);iic_rsp();                                //address of OLED
  144.     iic_wr(0x00);iic_rsp();                                //address of register   
  145.     iic_wr(x);iic_rsp();
  146.     iic_stp();
  147.     }
  148. void dat(U x){
  149.     iic_sta();
  150.     iic_wr(0x78);iic_rsp();                                //address of OLED
  151.     iic_wr(0x40);iic_rsp();                                //address of register
  152.     iic_wr(x);iic_rsp();
  153.     iic_stp();
  154.     }
  155. void OLED_SetPos(U x,U y){                                 //set_pos(place,page)
  156.     command(0xb0+y);
  157.     command(((x&0xf0)>>4)|0x10);
  158.     command(x&0x0f);
  159.     }
  160. void OLED_clear(){
  161.     U i,j;
  162.     for(i=0;i<8;i++){
  163.         OLED_SetPos(0,i);
  164.         for(j=0;j<128;j++){
  165.             dat(0x00);
  166.             }
  167.         }
  168.     }
  169. void OLED_Init(){
  170.     command(0xae);command(0x20);command(0x10);command(0xb0);
  171.     command(0xc8);command(0x00);command(0x10);command(0x40);
  172.     command(0x81);command(0xff);command(0xa1);command(0xa6);
  173.     command(0xa8);command(0x3f);command(0xa4);command(0xd3);
  174.     command(0x00);command(0xd5);command(0xf0);command(0xd9);
  175.     command(0x22);command(0xda);command(0x12);command(0xdb);
  176.     command(0x20);command(0x8d);command(0x14);command(0xaf);
  177.     OLED_clear();
  178.     }
  179. void OLED_String(U page,U *str){
  180.     U character,j;
  181.     U count_character_num=0;
  182.     while(*str){
  183.         OLED_SetPos(count_character_num*6,page);
  184.         character = *str;
  185.         if(character>='0' && character<='9')
  186.             for(j=0;j<6;j++)
  187.                 dat(digital[character-'0'][j]);
  188.         else if(character=='.')
  189.             for(j=0;j<6;j++)
  190.                 dat(dt_pls[0][j]);
  191.         else if(character>='A' && character<='Z')
  192.             for(j=0;j<6;j++)
  193.                 dat(alpha[character-'A'][j]);
  194.         else if(character>='a' && character<='z')
  195.             for(j=0;j<6;j++)
  196.                 dat(bet[character-'a'][j]);
  197.         else if(character=='+')
  198.             for(j=0;j<6;j++)
  199.                 dat(dt_pls[1][j]);
  200.         else dat(0x00);
  201.         str++;
  202.         if(++count_character_num*6>120){
  203.             count_character_num=0;
  204.             if(++page==8){
  205.                 page=0;
  206.                 OLED_clear();
  207.                 }
  208.             }
  209.         }
  210.     }
  211. void wificommand(U k[]){
  212.     U i;
  213.     ES=0;
  214.     TI=1;
  215.     puts(k);              
  216.     while(!TI);
  217.     TI=0;
  218.     ES=1;
  219.     while(1){
  220.         if(a[1])
  221.             OLED_String(page,a);
  222.         if(scan()==2){
  223.             for(i=1;i<81;i++)
  224.                 a[i]=0;
  225.             break;
  226.             }
  227.         }
  228.     if((page=4-page)==0)
  229.         OLED_clear();
  230.     }
  231. void wifi_Init(){
  232.     wificommand(order1);
  233.     wificommand(order2);                                                   
  234.     wificommand(order3);
  235.     wificommand(order4);
  236.     wificommand(order5);
  237.     wificommand(order6);
  238.     time();time();time();time();
  239.     }
  240. void doublechat(){
  241.     U i,l;
  242.     while(1){
  243.         if(a[3]=='+' && a[4]=='I' && a[5]=='P' && a[6]=='D' && sq){
  244.             sq=0;
  245.             l = (a[11]>='0'&&a[11]<='9')?(a[10]-'0')*10+(a[11]-'0'):a[10]-'0';
  246.             if(a[12]=='2' && a[13]=='2' && a[14]=='2'){
  247.                 red=1;
  248.                 blue=0;
  249.                 green=0;
  250.                 }
  251.             else if(a[12]=='3' && a[13]=='3' && a[14]=='3'){
  252.                 red=0;
  253.                 blue=1;
  254.                 green=0;
  255.                 }
  256.             else if(a[12]=='4' && a[13]=='4' && a[14]=='4'){
  257.                 red=0;
  258.                 blue=0;
  259.                 green=1;
  260.                 }
  261.             if(a[8]-'0'){
  262.                 if(l==1){
  263.                     st=0;
  264.                     ES=0;
  265.                     TI=1;
  266.                     printf("AT+CIPSEND=0,1\r\n");
  267.                     while(!TI);
  268.                     TI=0;
  269.                     time();
  270.                     TI=1;
  271.                     puts(a+12);
  272.                     while(!TI);
  273.                     TI=0;   
  274.                     ES=1;
  275.                     time();
  276.                     st=1;
  277.                     }
  278.                 else if(l==2){
  279.                     st=0;
  280.                     ES=0;
  281.                     TI=1;
  282.                     printf("AT+CIPSEND=0,2\r\n");
  283.                     while(!TI);
  284.                     TI=0;
  285.                     time();
  286.                     TI=1;
  287.                     puts(a+12);
  288.                     while(!TI);
  289.                     TI=0;
  290.                     ES=1;
  291.                     time();
  292.                     st=1;
  293.                     }
  294.                 else if(l==3){
  295.                     st=0;
  296.                     ES=0;
  297.                     TI=1;
  298.                     printf("AT+CIPSEND=0,3\r\n");
  299.                     while(!TI);
  300.                     TI=0;
  301.                     time();
  302.                     TI=1;
  303.                     puts(a+12);
  304.                     while(!TI);
  305.                     TI=0;   
  306.                     ES=1;
  307.                     time();
  308.                     st=1;
  309.                     }
  310.                 else if(l==4){
  311.                     st=0;
  312.                     ES=0;
  313.                     TI=1;
  314.                     printf("AT+CIPSEND=0,4\r\n");
  315.                     while(!TI);
  316.                     TI=0;
  317.                     time();
  318.                     TI=1;
  319.                     puts(a+12);
  320.                     while(!TI);
  321.                     TI=0;   
  322.                     ES=1;
  323.                     time();
  324.                     st=1;
  325.                     }
  326.                 else if(l==5){
  327.                     st=0;
  328.                     ES=0;
  329.                     TI=1;
  330.                     printf("AT+CIPSEND=0,5\r\n");
  331.                     while(!TI);
  332.                     TI=0;
  333.                     time();
  334.                     TI=1;
  335.                     puts(a+12);
  336.                     while(!TI);
  337.                     TI=0;   
  338.                     ES=1;
  339.                     time();
  340.                     st=1;
  341.                     }
  342.                 else if(l==6){
  343.                     st=0;
  344.                     ES=0;
  345.                     TI=1;
  346.                     printf("AT+CIPSEND=0,6\r\n");
  347.                     while(!TI);
  348.                     TI=0;
  349.                     time();
  350.                     TI=1;
  351.                     puts(a+12);
  352.                     while(!TI);
  353.                     TI=0;   
  354.                     ES=1;
  355.                     time();
  356.                     st=1;
  357.                     }
  358.                 else if(l==7){
  359.                     st=0;
  360.                     ES=0;
  361.                     TI=1;
  362.                     printf("AT+CIPSEND=0,7\r\n");
  363.                     while(!TI);
  364.                     TI=0;
  365.                     time();
  366.                     TI=1;
  367.                     puts(a+12);
  368.                     while(!TI);
  369.                     TI=0;   
  370.                     ES=1;
  371.                     time();
  372.                     st=1;
  373.                     }
  374.                 else if(l==8){
  375.                     st=0;
  376.                     ES=0;
  377.                     TI=1;
  378.                     printf("AT+CIPSEND=0,8\r\n");
  379.                     while(!TI);
  380.                     TI=0;
  381.                     time();
  382.                     TI=1;
  383.                     puts(a+12);
  384.                     while(!TI);
  385.                     TI=0;   
  386.                     ES=1;
  387.                     time();
  388.                     st=1;
  389.                     }
  390.                 else if(l==9){
  391.                     st=0;
  392.                     ES=0;
  393.                     TI=1;
  394.                     printf("AT+CIPSEND=0,9\r\n");
  395.                     while(!TI);
  396.                     TI=0;
  397.                     time();
  398.                     TI=1;
  399.                     puts(a+12);
  400.                     while(!TI);
  401.                     TI=0;   
  402.                     ES=1;
  403.                     time();
  404.                     st=1;
  405.                     }
  406.                 else if(l==10){
  407.                     st=0;
  408.                     ES=0;
  409.                     TI=1;
  410.                     printf("AT+CIPSEND=0,10\r\n");
  411.                     while(!TI);
  412.                     TI=0;
  413.                     time();
  414.                     TI=1;
  415.                     puts(a+13);
  416.                     while(!TI);
  417.                     TI=0;   
  418.                     ES=1;
  419.                     time();
  420.                     st=1;
  421.                     }
  422.                 else if(l==11){
  423.                     st=0;
  424.                     ES=0;
  425.                     TI=1;
  426.                     printf("AT+CIPSEND=0,11\r\n");
  427.                     while(!TI);
  428.                     TI=0;
  429.                     time();
  430.                     TI=1;
  431.                     puts(a+13);
  432.                     while(!TI);
  433.                     TI=0;   
  434.                     ES=1;
  435.                     time();
  436.                     st=1;
  437.                     }
  438.                 else if(l==12){
  439.                     st=0;
  440.                     ES=0;
  441.                     TI=1;
  442.                     printf("AT+CIPSEND=0,12\r\n");
  443.                     while(!TI);
  444.                     TI=0;
  445.                     time();
  446.                     TI=1;
  447.                     puts(a+13);
  448.                     while(!TI);
  449.                     TI=0;   
  450.                     ES=1;
  451.                     time();
  452.                     st=1;
  453.                     }
  454.                 else if(l==13){
  455.                     st=0;
  456.                     ES=0;
  457.                     TI=1;
  458.                     printf("AT+CIPSEND=0,13\r\n");
  459.                     while(!TI);
  460.                     TI=0;
  461.                     time();
  462.                     TI=1;
  463.                     puts(a+13);
  464.                     while(!TI);
  465.                     TI=0;   
  466.                     ES=1;
  467.                     time();
  468.                     st=1;
  469.                     }
  470.                 else if(l==14){
  471.                     st=0;
  472.                     ES=0;
  473.                     TI=1;
  474.                     printf("AT+CIPSEND=0,14\r\n");
  475.                     while(!TI);
  476.                     TI=0;
  477.                     time();
  478.                     TI=1;
  479.                     puts(a+13);
  480.                     while(!TI);
  481.                     TI=0;   
  482.                     ES=1;
  483.                     time();
  484.                     st=1;
  485.                     }
  486.                 else if(l==15){
  487.                     st=0;
  488.                     ES=0;
  489.                     TI=1;
  490.                     printf("AT+CIPSEND=0,15\r\n");
  491.                     while(!TI);
  492.                     TI=0;
  493.                     time();
  494.                     TI=1;
  495.                     puts(a+13);
  496.                     while(!TI);
  497.                     TI=0;   
  498.                     ES=1;
  499.                     time();
  500.                     st=1;
  501.                     }
  502.                 else if(l==16){
  503.                     st=0;
  504.                     ES=0;
  505.                     TI=1;
  506.                     printf("AT+CIPSEND=0,16\r\n");
  507.                     while(!TI);
  508.                     TI=0;
  509.                     time();
  510.                     TI=1;
  511.                     puts(a+13);
  512.                     while(!TI);
  513.                     TI=0;   
  514.                     ES=1;
  515.                     time();
  516.                     st=1;
  517.                     }
  518.                 else if(l==17){
  519.                     st=0;
  520.                     ES=0;
  521.                     TI=1;
  522.                     printf("AT+CIPSEND=0,17\r\n");
  523.                     while(!TI);
  524.                     TI=0;
  525.                     time();
  526.                     TI=1;
  527.                     puts(a+13);
  528.                     while(!TI);
  529.                     TI=0;   
  530.                     ES=1;
  531.                     time();
  532.                     st=1;
  533.                     }
  534.                 else if(l==18){
  535.                     st=0;
  536.                     ES=0;
  537.                     TI=1;
  538.                     printf("AT+CIPSEND=0,18\r\n");
  539.                     while(!TI);
  540.                     TI=0;
  541.                     time();
  542.                     TI=1;
  543.                     puts(a+13);
  544.                     while(!TI);
  545.                     TI=0;   
  546.                     ES=1;
  547.                     time();
  548.                     st=1;
  549.                     }
  550.                 else if(l==19){
  551.                     st=0;
  552.                     ES=0;
  553.                     TI=1;
  554.                     printf("AT+CIPSEND=0,19\r\n");
  555.                     while(!TI);
  556.                     TI=0;
  557.                     time();
  558.                     TI=1;
  559.                     puts(a+13);
  560.                     while(!TI);
  561.                     TI=0;   
  562.                     ES=1;
  563.                     time();
  564.                     st=1;
  565.                     }
  566.                 else{
  567.                     st=0;
  568.                     ES=0;
  569.                     TI=1;
  570.                     printf("AT+CIPSEND=0,20\r\n");
  571.                     while(!TI);
  572.                     TI=0;
  573.                     time();
  574.                     TI=1;
  575.                     puts(a+13);
  576.                     while(!TI);
  577.                     TI=0;   
  578.                     ES=1;
  579.                     time();
  580.                     st=1;
  581.                     }
  582.                 }
  583.             else{
  584.                 if(l==1){
  585.                     st=0;
  586.                     ES=0;
  587.                     TI=1;
  588.                     printf("AT+CIPSEND=1,1\r\n");
  589.                     while(!TI);
  590.                     TI=0;
  591.                     time();
  592.                     TI=1;
  593.                     puts(a+12);
  594.                     while(!TI);
  595.                     TI=0;   
  596.                     ES=1;
  597.                     time();
  598.                     st=1;
  599.                     }
  600.                 else if(l==2){
  601.                     st=0;
  602.                     ES=0;
  603.                     TI=1;
  604.                     printf("AT+CIPSEND=1,2\r\n");
  605.                     while(!TI);
  606.                     TI=0;
  607.                     time();
  608.                     TI=1;
  609.                     puts(a+12);
  610.                     while(!TI);
  611.                     TI=0;   
  612.                     ES=1;
  613.                     time();
  614.                     st=1;
  615.                     }
  616.                 else if(l==3){
  617.                     st=0;
  618.                     ES=0;
  619.                     TI=1;
  620.                     printf("AT+CIPSEND=1,3\r\n");
  621.                     while(!TI);
  622.                     TI=0;
  623.                     time();
  624.                     TI=1;
  625.                     puts(a+12);
  626.                     while(!TI);
  627.                     TI=0;   
  628.                     ES=1;
  629.                     time();
  630.                     st=1;
  631.                     }
  632.                 else if(l==4){
  633.                     st=0;
  634.                     ES=0;
  635.                     TI=1;
  636.                     printf("AT+CIPSEND=1,4\r\n");
  637.                     while(!TI);
  638.                     TI=0;
  639.                     time();
  640.                     TI=1;
  641.                     puts(a+12);
  642.                     while(!TI);
  643.                     TI=0;   
  644.                     ES=1;
  645.                     time();
  646.                     st=1;
  647.                     }
  648.                 else if(l==5){
  649.                     st=0;
  650.                     ES=0;
  651.                     TI=1;
  652.                     printf("AT+CIPSEND=1,5\r\n");
  653.                     while(!TI);
  654.                     TI=0;
  655.                     time();
  656.                     TI=1;
  657.                     puts(a+12);
  658.                     while(!TI);
  659.                     TI=0;   
  660.                     ES=1;
  661.                     time();
  662.                     st=1;
  663.                     }
  664.                 else if(l==6){
  665.                     st=0;
  666.                     ES=0;
  667.                     TI=1;
  668.                     printf("AT+CIPSEND=1,6\r\n");
  669.                     while(!TI);
  670.                     TI=0;
  671.                     time();
  672.                     TI=1;
  673.                     puts(a+12);
  674.                     while(!TI);
  675.                     TI=0;   
  676.                     ES=1;
  677.                     time();
  678.                     st=1;
  679.                     }
  680.                 else if(l==7){
  681.                     st=0;
  682.                     ES=0;
  683.                     TI=1;
  684.                     printf("AT+CIPSEND=1,7\r\n");
  685.                     while(!TI);
  686.                     TI=0;
  687.                     time();
  688.                     TI=1;
  689.                     puts(a+12);
  690.                     while(!TI);
  691.                     TI=0;   
  692.                     ES=1;
  693.                     time();
  694.                     st=1;
  695.                     }
  696.                 else if(l==8){
  697.                     st=0;
  698.                     ES=0;
  699.                     TI=1;
  700.                     printf("AT+CIPSEND=1,8\r\n");
  701.                     while(!TI);
  702.                     TI=0;
  703.                     time();
  704.                     TI=1;
  705.                     puts(a+12);
  706.                     while(!TI);
  707.                     TI=0;   
  708.                     ES=1;
  709.                     time();
  710.                     st=1;
  711.                     }
  712.                 else if(l==9){
  713.                     st=0;
  714.                     ES=0;
  715.                     TI=1;
  716.                     printf("AT+CIPSEND=1,9\r\n");
  717.                     while(!TI);
  718.                     TI=0;
  719.                     time();
  720.                     TI=1;
  721.                     puts(a+12);
  722.                     while(!TI);
  723.                     TI=0;   
  724.                     ES=1;
  725.                     time();
  726.                     st=1;
  727.                     }
  728.                 else if(l==10){
  729.                     st=0;
  730.                     ES=0;
  731.                     TI=1;
  732.                     printf("AT+CIPSEND=1,10\r\n");
  733.                     while(!TI);
  734.                     TI=0;
  735.                     time();
  736.                     TI=1;
  737.                     puts(a+13);
  738.                     while(!TI);
  739.                     TI=0;   
  740.                     ES=1;
  741.                     time();
  742.                     st=1;
  743.                     }
  744.                 else if(l==11){
  745.                     st=0;
  746.                     ES=0;
  747.                     TI=1;
  748.                     printf("AT+CIPSEND=1,11\r\n");
  749.                     while(!TI);
  750.                     TI=0;
  751.                     time();
  752.                     TI=1;
  753.                     puts(a+13);
  754.                     while(!TI);
  755.                     TI=0;   
  756.                     ES=1;
  757.                     time();
  758.                     st=1;
  759.                     }
  760.                 else if(l==12){
  761.                     st=0;
  762.                     ES=0;
  763.                     TI=1;
  764.                     printf("AT+CIPSEND=1,12\r\n");
  765.                     while(!TI);
  766.                     TI=0;
  767.                     time();
  768.                     TI=1;
  769.                     puts(a+13);
  770.                     while(!TI);
  771.                     TI=0;   
  772.                     ES=1;
  773.                     time();
  774.                     st=1;
  775.                     }
  776.                 else if(l==13){
  777.                     st=0;
  778.                     ES=0;
  779.                     TI=1;
  780.                     printf("AT+CIPSEND=1,13\r\n");
  781.                     while(!TI);
  782.                     TI=0;
  783.                     time();
  784.                     TI=1;
  785.                     puts(a+13);
  786.                     while(!TI);
  787.                     TI=0;   
  788.                     ES=1;
  789.                     time();
  790.                     st=1;
  791.                     }
  792.                 else if(l==14){
  793.                     st=0;
  794.                     ES=0;
  795.                     TI=1;
  796.                     printf("AT+CIPSEND=1,14\r\n");
  797.                     while(!TI);
  798.                     TI=0;
  799.                     time();
  800.                     TI=1;
  801.                     puts(a+13);
  802.                     while(!TI);
  803.                     TI=0;   
  804.                     ES=1;
  805.                     time();
  806.                     st=1;
  807.                     }
  808.                 else if(l==15){
  809.                     st=0;
  810.                     ES=0;
  811.                     TI=1;
  812.                     printf("AT+CIPSEND=1,15\r\n");
  813.                     while(!TI);
  814.                     TI=0;
  815.                     time();
  816.                     TI=1;
  817.                     puts(a+13);
  818.                     while(!TI);
  819.                     TI=0;   
  820.                     ES=1;
  821.                     time();
  822.                     st=1;
  823.                     }
  824.                 else if(l==16){
  825.                     st=0;
  826.                     ES=0;
  827.                     TI=1;
  828.                     printf("AT+CIPSEND=1,16\r\n");
  829.                     while(!TI);
  830.                     TI=0;
  831.                     time();
  832.                     TI=1;
  833.                     puts(a+13);
  834.                     while(!TI);
  835.                     TI=0;   
  836.                     ES=1;
  837.                     time();
  838.                     st=1;
  839.                     }
  840.                 else if(l==17){
  841.                     st=0;
  842.                     ES=0;
  843.                     TI=1;
  844.                     printf("AT+CIPSEND=1,17\r\n");
  845.                     while(!TI);
  846.                     TI=0;
  847.                     time();
  848.                     TI=1;
  849.                     puts(a+13);
  850.                     while(!TI);
  851.                     TI=0;   
  852.                     ES=1;
  853.                     time();
  854.                     st=1;
  855.                     }
  856.                 else if(l==18){
  857.                     st=0;
  858.                     ES=0;
  859.                     TI=1;
  860.                     printf("AT+CIPSEND=1,18\r\n");
  861.                     while(!TI);
  862.                     TI=0;
  863.                     time();
  864.                     TI=1;
  865.                     puts(a+13);
  866.                     while(!TI);
  867.                     TI=0;   
  868.                     ES=1;
  869.                     time();
  870.                     st=1;
  871.                     }
  872.                 else if(l==19){
  873.                     st=0;
  874.                     ES=0;
  875.                     TI=1;
  876.                     printf("AT+CIPSEND=1,19\r\n");
  877.                     while(!TI);
  878.                     TI=0;
  879.                     time();
  880.                     TI=1;
  881.                     puts(a+13);
  882.                     while(!TI);
  883.                     TI=0;   
  884.                     ES=1;
  885.                     time();
  886.                     st=1;
  887.                     }
  888.                 else{
  889.                     st=0;
  890.                     ES=0;
  891.                     TI=1;
  892.                     printf("AT+CIPSEND=1,20\r\n");
  893.                     while(!TI);
  894.                     TI=0;
  895.                     time();
  896.                     TI=1;
  897.                     puts(a+13);
  898.                     while(!TI);
  899.                     TI=0;   
  900.                     ES=1;
  901.                     time();
  902.                     st=1;
  903.                     }
  904.                 }
  905.             }
  906.         if(a[1])
  907.             OLED_String(page,a);
  908.         switch(scan()){
  909.             case 3:
  910.                    sq=1;
  911.                    goto lop;
  912.             case 2:
  913.                      for(i=1;i<81;i++)
  914.                        a[i]=0;
  915.                    OLED_clear();
  916.                    sq=page=0;
  917.             }
  918.         }
  919.     lop:
  920.     page+=2;
  921.     if(page==8){
  922.         time();time();time();time();time();time();
  923.         time();time();time();time();time();time();
  924.         OLED_clear();
  925.         page=0;
  926.         }
  927.     }
  928. int main(){
  929.     TMOD=0x21;
  930.     TH1=TL1=0xfd;
  931.     TH0=0x4c;
  932.     TL0=0xd0;  
  933.     EA=ET0=ES=SM1=TR1=REN=1;
  934.     SM0=TR0=0;
  935.     iic_init();
  936.     OLED_Init();
  937.     wifi_Init();
  938.     TR0=1;
  939.     page=-2;
  940.     OLED_clear();   
  941.     OLED_String(2,"Waiting For");
  942.     OLED_String(4,"Connection...");
  943.     while(1){
  944.         doublechat();
  945.         }
  946.     }
  947. void tim() interrupt 1{
  948.     TH0=0x4c;
  949.     TL0=0xd0;
  950.     num++;
  951.     }
  952. void sep() interrupt 4{
  953.     U i,p;
  954.     RI=0;
  955.     for(i=1;i<81;i++)
  956.         if(a[i-1]&&!a[i]){
  957.             if(st)a[i]=SBUF;
  958.             else p=SBUF;
  959.             num=0;
  960.             sw=1;
  961.             break;
  962.             }
  963.     }

复制代码

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表