无线wifi模块-51单片机-C语言程序_第1页
无线wifi模块-51单片机-C语言程序_第2页
无线wifi模块-51单片机-C语言程序_第3页
无线wifi模块-51单片机-C语言程序_第4页
无线wifi模块-51单片机-C语言程序_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

无线无线WIFIWIFI模块模块ESP8266ESP8266和和5151单片机单片机 实现实现LEDLED灯的无线控制灯的无线控制 一 关于51单片机和无线WIFI模块的接线方面 RXD TXD GND和51单片机的TXD RXD GND接好 模块其他引脚均为高电平 电源VCC是3 3V左右 两节1 5v干电池 本人由于没有稳压模块 偷懒了当时使用5 V的直流源 测试结果目前没有问题 不过不建议啊 二 关于安卓手机方面 测试时可以使用 网络调试助手 下载这个app安装在手机即可 发送数字1表示小灯 亮 0表示灯灭 后续想深入的话可以自己开发安卓app软件 三 参数设置 由于参数的设置方法和步奏网上资料很全 这里提供相关的网址自行参考 Uart WiFi模块模块ESP8266把玩记把玩记 le dele det ta ai ils ls 物联网物联网wifi模块工作模块工作的的STA和和AP模模式详细介绍式详细介绍 http www hx 四 资料可能存在不足之处 仅作参考 题目 基于STC12C560S2 单片机无线WIFI模块控制 内容 通过MCU上位机对ESP8266wifi模块的控制和设置 实现手机端控制LED灯 的亮灭 注意 该型号单片机是普通89C51单片执行速度的12倍 内含RAM1280字节 ROM为6 0K PCA 计数器 PWM发生模块 ADC转换模块等 晶振一定是11 0592MHz include 包含头文件 define uint unsigned int define uchar unsigned char define RELOAD COUNT 0 xFA 宏定义波特率发生器的载入值 define RELOAD COUNT 256 16 12 9600 也可以或波特率9600 256 晶振频率 波特率x16 BRT LED灯对应P0口的1个端口 sbit LED0 P3 2 波特率发生器相关功能寄存器的定义 sfr AUXR 0 x8E sfr BRT 0 x9C sfr AUXR1 0 xA2 相关变量 uchar Receive i uint n uchar Recive table 15 用于接收wifi模块反馈到MCU上的数据 名称 延时函数 作用 毫秒级延时 微妙级延时函数 为数据收发完成作等待 void ms delay uint t uint i j for i t i 0 i for j 110 j 0 j void us delay uchar t while t 名称 波特率发生器函数 作用 波特率发生器可以是T1定时器实现 也可以是MCU内部独立的波特率发生器 各自不同的载入值计算式 具体根据寄存器相关设置来参考计算 以实现 异步串行通讯 经测试 两种设置方式均可用 可任选一种 void Uart Init 使用定时器1作为波特率发生器 STC89C52 STC89C51 AT89C51或者S TC12C560S2等均可 SCON 0 x50 设置为串行口以方式1工作 8位异步通讯 允许接收中断 一帧信息为10位 1位起始位 8位数据位 低位在先 1位停止位 PCON 0 x80 SMOD波特率选择位为1 SMOD 1 TMOD 0 x21 设置定时器1为波特率发生器 工作在模式2 8位自动装载 TH1 RELOAD COUNT 波特率9600 TH1 256 FOSC 16 12 波特率 TL1 TH1 EA 1 总中断打开 ES 0 关闭串口中断 TR1 1 启动定时器1 void Uart Init 使用独立的波特率发生器 STC12C560S2或带有独立波特率发生器 的单片机均可 SCON 0 x50 设置为串行口以方式1工作 8位异步通讯 允许接收中断 PCON 0 x80 SMOD波特率选择位为1 SMOD 1 BRT RELOAD COUNT 波特率9600 256 晶振频率 波特率x16 BRT AUXR 0 xD5 T0 T1不12分频 速度是89C51的12倍 启动独立波特率 发生器 每个时 钟计数一次 设置串口1的波特率发生器为独立波特率发生器 AUXR1 0 x80 切换到P1口 ES 1 开启串口中断 EA 1 开启总中断 名称 串口发送函数 功能 MCU向其他与其连接的设备发送数据 此处是无线WIFI模块ESP8266 void Send Uart uchar value ES 0 关闭串口中断 TI 0 清发送完毕中断请求标志位 SBUF value 发送 while TI 0 等待发送完毕 TI 0 清发送完毕中断请求标志位 ES 1 允许串口中断 名称 WIFI模块设置函数 作用 启动模块 以便可以实现无线接入和控制 void ESP8266 Set uchar puf 数组指针 puf指向字符串数组 while puf 0 遇到空格跳出循环 Send Uart puf 向WIFI模块发送控制指令 us delay 5 puf us delay 5 Send Uart r 回车 us delay 5 Send Uart n 换行 ms delay 1000 名称 ESP8266发送数据函数 功能 用于与wifi模块相连的终端发送数据 void ESP8266 Sent uchar puf 数组指针 puf指向字符串数组 ESP8266 Set AT CIPSEND 0 4 while puf 0 遇到空格跳出循环 Send Uart puf 向WIFI模块发送控制指令 us delay 5 puf us delay 5 Send Uart n 换行 ms delay 10 名称 主函数 作用 程序的执行入口 void main LED0 0 关闭LED灯 Uart Init 使用独立的波特率发生器 ESP8266 Set AT CWMODE 2 设置路由器模式 1 station模式 2 AP 点 路由器模式 3 station AP混合模式 ESP8266 Set AT RST 重新启动wifi模块 ESP8266 Set AT CWSAP WIFI 11 4 设置模块SSID WIFI PWD 密码 及安全类型加密模式 WPA2 PSK ESP8266 Set AT CIPMUX 1 开启多连接模式 允许多个各客户端接入 ESP8266 Set AT CIPSERVER 1 5000 启动TCP IP 端口为8080 实现基于网络 控制 ES 1 允许串口中断 while 1 if Recive table 0 0 灯灭 ESP8266 Sent 灯灭 wifi模块向pc端或手机端 发送 灯灭 else if Recive table 9 1 LED0 1 1 灯亮 ESP8266 Sent 灯亮 wifi模块向pc端或手机端 发送 灯亮 名称 串行通讯中断 作用 发送或接收结束后进入该函数 对相应的标志位软件清0 实现模块对数 据正常的收发 void Uart

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论