标题:
STC15F2K60S2控制esp8266进行通信的源码
[打印本页]
作者:
江理工吴灏
时间:
2018-5-15 18:39
标题:
STC15F2K60S2控制esp8266进行通信的源码
两块8266的通信 服务器端程序
单片机源程序如下:
//#include<reg52.h>
#include "STC15Fxxxx.H"
#include<string.h>
#include "intrins.h"
#include "oled.h"
#include "ADC.H"
#include "bmp.h"
#define BAUD 2400 //波特率
#define SYSTEMCLOCK 11059200L //系统时钟频率
#define uint unsigned int
#define uchar unsigned char
#define uint16 unsigned short
uint x,y;
uint j=0;
uint sendflag=0;
uint serialport0flag=0;
uchar yaogan_left_y;
uchar yaogan_right_x;
uchar yaogan_right_y;
char serial[6];
char code step0[]="AT+CWMODE=2\r\n";
char code step1[]="AT+RST\r\n";
char code step2[]="AT+CIPMUX=1\r\n";
char code step3[]="AT+CIPSERVER=1,5000\r\n";
char code step4[]="AT+CIPSEND=0,7\r\n";
extern bit interval;
void uart_sendstring(unsigned char *str)
{
unsigned char *p;
p = str;
while(*p != '\0')
{
SBUF = *p;
while(TI == 0); //等待发送标志位置位
TI = 0;
p++;
}
}
void init(void)
{
SCON = 0x50;
AUXR = 0x40; //1T
TMOD = 0x00; //
TL1 = (65536 - (SYSTEMCLOCK/4/BAUD)); //
TH1 = (65536 - (SYSTEMCLOCK/4/BAUD))>>8;
TR1 = 1;
TMOD|=0x01;
TL0 =55535%256;
TH0 =55535/256;
TR0 = 1;
ET0=1;
EA=1;
OLED_Init(); //初始化OLED
OLED_Clear();
OLED_ShowString(0,0,"CrazyAde");
OLED_ShowString(0,1,"Designer:WuHao");
OLED_ShowString(0,2,"Date:2018.5.6");
OLED_ShowCHinese(0,5,0);//小
OLED_ShowCHinese(18,5,1);//壮
OLED_ShowCHinese(36,5,2);//真
OLED_ShowCHinese(54,5,3);//可
OLED_ShowCHinese(72,5,4);//爱
OLED_ShowCHinese(90,5,5);//!
ADC_Inilize(ADC_P11);
ADC_Inilize(ADC_P12);
ADC_Inilize(ADC_P13);
ADC_PowerControl(ENABLE);
uart_sendstring(step0);
delay_ms(10);
uart_sendstring(step1);
delay_ms(2000);
uart_sendstring(step2);
delay_ms(10);
uart_sendstring(step3);
delay_ms(10);
OLED_Clear() ;
OLED_DrawBMP(0,0,127,7,WUHAO);
delay_ms(1000);
OLED_Clear();
}
void data_collect()
{
yaogan_right_x=Get_ADC10bitResult(0)*1.0*256/1024;
yaogan_right_y=(256-Get_ADC10bitResult(1)*1.0*256/1024);
yaogan_left_y=(256-Get_ADC10bitResult(2)*1.0*256/1024);
serial[0]=0x57;
serial[1]=yaogan_left_y;
serial[2]=yaogan_right_x;
serial[3]=yaogan_right_y;
serial[4]=0x48;
}
void sendto_8266()
{
uart_sendstring(step4);
uart_sendstring(serial);
memset(serial,0,sizeof(serial));
}
void dat_disply()
{
OLED_ShowString(0,0,"PITCH:");
OLED_ShowString(0,1,"YAW:");
OLED_ShowString(0,2,"ROLL:");
OLED_ShowString(0,4,"left_y:");
OLED_ShowNum(70,4,yaogan_left_y/100,1,2);
OLED_ShowNum(80,4,yaogan_left_y%100/10,1,2);
OLED_ShowNum(90,4,yaogan_left_y%10,1,2);
OLED_ShowString(0,5,"right_x:");
OLED_ShowNum(70,5,yaogan_right_x/100,1,2);
OLED_ShowNum(80,5,yaogan_right_x%100/10,1,2);
OLED_ShowNum(90,5,yaogan_right_x%10,1,2);
OLED_ShowString(0,6,"right_y:");
OLED_ShowNum(70,6,yaogan_right_y/100,1,2);
……………………
…………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
程序.rar
(111.22 KB, 下载次数: 62)
2018-5-15 18:38 上传
点击文件名下载附件
下载积分: 黑币 -5
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1