• 大小: 36KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-05-14
  • 语言: 其他
  • 标签: ESP8266  

资源简介

基于51单片机的ESP8266 WIFI模块 继电器控制程序源码

资源截图

代码片段和文件信息

#include “60s2.h“
#include “stdarg.h“
#include “stdio.h“
#include “string.h“

u8 xdata uart1_rxbuf[40];
u8 xdata uart1_txbuf[40];
u8 xdata uart2_rxbuf[40];
u8 xdata uart2_txbuf[40];
u8 counterrcv1rcv2flag=0;

void delay(u16 z)
{
u16 xy;
for(x=z;x>0;x--)
for(y=500;y>0;y--);
}
u8 key_Scan(u8 mode)
{  
static u8 key_up=1;//按键按松开标志
if(mode)key_up=1;  //支持连按   
if(key_up&&(key1==0))
{
delay(10);//去抖动 
key_up=0;
if(key1==0)
return 1;
}
else if(key1==1)
key_up=1;      
  return 0;// 无按键按下
}
void write_com(u8 com)//根据写时序图写出指令程序
{
rs=0;
LCD_DATA=com;
delay(5);
ea=1;
delay(5);
ea=0;
}
void write_data(u8 date)//根据写时序图写出数据程序
{
rs=1;
LCD_DATA=date;
delay(5);
ea=1;
delay(5);
ea=0;
}
void lcd_init(void)
{
P4SW|=0x70;     //初始化P4端口为普通IO口
rw=0; //禁止
ea=0;           //使能端为低电平
write_com(0x38);//显示模式设置
write_com(0x0c);//开显示,显示光标,光标闪烁
write_com(0x06);//地址指针自动+1且光标+1,写字符屏幕不会移动
write_com(0X01);
}
void display(u8 mode)
{
if(mode==1)
{
write_com(0X01);
write_com(0x80);         //第一行
write_data(‘L‘);
write_data(‘e‘);
write_data(‘N‘);
write_data(‘g‘);
write_data(‘t‘);
write_data(‘h‘);
write_data(‘:‘);
write_data(‘0‘);
write_data(‘0‘);
write_com(0xc0);            //第二行
}
else  if(mode==2)
{
write_com(0x87);         //第一行
write_data(rcv2/10+‘0‘);
write_data(rcv2%10+‘0‘);
}
else  if(mode==3)
{
write_com(0x80);         //第一行
write_data(‘W‘);
write_data(‘I‘);
write_data(‘F‘);
write_data(‘I‘);
write_com(0xc0);            //第二行
write_data(‘i‘);
write_data(‘n‘);
write_data(‘i‘);
write_data(‘t‘);
write_data(‘.‘);
write_data(‘.‘);
write_data(‘.‘);
}

}
void uart1_init(void)
{
    SCON = 0x50; //串口1控制寄存器 01010000  8位可变波特率,无奇偶校验位
    BRT  = 0xfD; //11.0592m晶振    9600波特率
    AUXR = 0x15; //辅助寄存器      11 9600波特率   15 115200波特率
    ES   = 1;    //串口1中断允许位 (打开串口1中断)
    EA   = 1;    //开总中断
}
void uart2_init(void)
{

    S2CON= 0x50; //串口2控制寄存器 01010000 8位可变波特率,无奇偶校验位
    BRT  = 0xfD; //11.0592m晶振
    AUXR = 0x15; //辅助寄存器      11 9600波特率   15 115200波特率
    IE2  = 0x01; //中断允许寄存器2 (打开串口2中断 ES2=1)
    EA=1;        //开总中断
}
void uart1_send(u8 i)
{
    ES     =   0;  //串口1中断允许位 (关闭串口1中断)
    TI     =   0;  //发送中断标志清零
    SBUF   =   i;  //将数据写入串口数据缓存
    while(TI ==0); //等待发送完成
    TI     =   0;  //发送中断标志清零
delay(1);    //延时1毫秒
    ES     =   1;  //串口1中断允许位 (打开串口1中断)
}
void uart2_send(u8 i)
{
u8 temp = 0;
IE2   = 0x00;           //中断允许寄存器2 (关闭串口2中断 ES2=0)
S2CON = S2CON & 0xFD;   //B‘11111101清零串口2发送完成中断请求标志
S2BUF = i;     //将数据写入串口数据缓存
do
{
temp = S2CON;
temp = temp & 0x02;
}
while(temp==0);    //等待发送完成
S2CON= S2CON & 0xFD;   //B‘11111101清零串口2发送完成中断请求标志
IE2 = 0x01;            //中断允许寄存器2 (打开串口2中断 ES2=1)
}
void uart1_recv(void) interrupt 4
{
    if(RI==1)      //串口1接收中断标志
    {
        RI = 0;      
        uart1_rxbuf[r

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       8041  2017-03-01 13:14  51wifi\60s2.h

     文件       5441  2017-07-08 10:09  51wifi\main.c

     文件      12822  2017-07-08 10:09  51wifi\main.LST

     文件      19200  2017-07-08 10:09  51wifi\main.OBJ

     文件      18146  2017-07-08 10:09  51wifi\wifi

     文件       6924  2017-07-08 10:09  51wifi\wifi.hex

     文件         40  2017-07-08 10:09  51wifi\wifi.lnp

     文件      22198  2017-07-08 10:09  51wifi\wifi.M51

     文件       4116  2017-07-08 10:19  51wifi\wifi.plg

    .......     55185  2017-07-08 10:19  51wifi\wifi.uvopt

     文件      13224  2017-07-06 18:39  51wifi\wifi.uvproj

    .......     55185  2017-07-06 18:39  51wifi\wifi_uvopt.bak

     文件          0  2017-07-06 18:17  51wifi\wifi_uvproj.bak

     目录          0  2017-07-08 10:19  51wifi

----------- ---------  ---------- -----  ----

               220522                    14


评论

共有 条评论