[资料分享] 无线wifi模块,51单片机,C语言程序

[复制链接]
 楼主| ZQVVVVV 发表于 2016-9-15 12:34 | 显示全部楼层 |阅读模式
[p=232, null, left]一、关于

[p=232, null, left]51

[p=232, null, left]单片机和无线

[p=232, null, left]WIFI

[p=232, null, left]模块的接线方面


[p=214, null, left]RXD

[p=214, null, left]

[p=214, null, left]TXD

[p=214, null, left]

[p=214, null, left]GND

[p=214, null, left]

[p=214, null, left]51

[p=214, null, left]单片机的

[p=214, null, left]TXD

[p=214, null, left]

[p=214, null, left]RXD

[p=214, null, left]

[p=214, null, left]GND

[p=214, null, left]接好,模块其他引脚均为高电

[p=232, null, left]平,电源

[p=232, null, left]VCC

[p=232, null, left]

[p=232, null, left]3.3V

[p=232, null, left]左右(两节

[p=232, null, left]1.5v

[p=232, null, left]干电池),本人由于没有稳压模块

[p=232, null, left],

[p=232, null, left]偷懒了当时

[p=232, null, left]使用

[p=232, null, left]5V

[p=232, null, left]的直流源,测试结果目前没有问题(不过不建议啊

[p=232, null, left]!

[p=232, null, left]


[p=232, null, left]二、关于安卓手机方面



[p=214, null, left]测试时可以使用,网络调试助手(下载这个

[p=214, null, left]app

[p=214, null, left]安装在手机即可)发送数字

[p=214, null, left]1

[p=214, null, left]

[p=232, null, left]示小灯亮,

[p=232, null, left]0

[p=232, null, left]表示灯灭。后续想深入的话可以自己开发安卓

[p=232, null, left]app

[p=232, null, left]软件。


[p=232, null, left]三、参数设置



[p=214, null, left]由于参数的设置方法和步奏网上资料很全,这里提供相关的网址自行参考。

[p=232, null, left]名称:波特率发生器函数


[p=232, null, left]作用:波特率发生器可以是

[p=232, null, left]T1

[p=232, null, left]定时器实现,也可以是

[p=232, null, left]MCU

[p=232, null, left]内部独立的波特率发生

[p=232, null, left]器,


[p=232, null, left]各自不同的载入值计算式,具体根据寄存器相关设置来参考计算,以实现


[p=232, null, left]异步串行通讯。(经测试,两种设置方式均可用,可任选一种。)


[p=214, null, left]********************************************************************/

[p=214, null, left]void Uart_Init()//

[p=214, null, left]使用定时器

[p=214, null, left]1

[p=214, null, left]作为波特率发生器(

[p=214, null, left]STC89C52

[p=214, null, left]

[p=214, null, left]STC89C51

[p=214, null, left]

[p=214, null, left]AT89C51

[p=232, null, left]或者

[p=232, null, left]STC12C560S2

[p=232, null, left]等均可)


[p=214, null, left]{


[p=214, null, left]SCON=0x50;

[p=214, null, left]//

[p=214, null, left]设置为串行口以方式

[p=214, null, left]1

[p=214, null, left]工作,

[p=214, null, left]8

[p=214, null, left]位异步通讯

[p=214, null, left],

[p=214, null, left]允许接收中断。



[p=214, null, left]//

[p=214, null, left]一帧信息为

[p=214, null, left]10

[p=214, null, left]位,

[p=214, null, left]1

[p=214, null, left]位起始位,

[p=214, null, left]8

[p=214, null, left]位数据位(低位在先),

[p=214, null, left]1

[p=214, null, left]位停止位。



[p=214, null, left]PCON=0x80;

[p=214, null, left]//SMOD

[p=214, null, left]波特率选择位为

[p=214, null, left]1

[p=214, null, left]

[p=214, null, left]SMOD=1.


[p=214, null, left]TMOD=0x21;

[p=214, null, left]//

[p=214, null, left]设置定时器

[p=214, null, left]1

[p=214, null, left]为波特率发生器,工作在模式

[p=214, null, left]2

[p=214, null, left]

[p=214, null, left]8

[p=214, null, left]位自动装载



[p=214, null, left]TH1=RELOAD_COUNT;//

[p=214, null, left]波特率

[p=214, null, left]9600

[p=214, null, left]

[p=214, null, left]TH1=256-FOSC/16/12/

[p=214, null, left]波特率



[p=214, null, left]TL1=TH1;


[p=214, null, left]EA=1;





[p=214, null, left]   //

[p=214, null, left]总中断打开



[p=214, null, left]ES=0;





[p=214, null, left]   //

[p=214, null, left]关闭串口中断



[p=214, null, left]TR1=1;




[p=214, null, left]   //

[p=214, null, left]启动定时器

[p=214, null, left]1

[p=214, null, left]}

[p=214, null, left]/*

[p=214, null, left]void Uart_Init()//

[p=214, null, left]使用独立的波特率发生器(

[p=214, null, left]STC12C560S2

[p=214, null, left]或带有独立波特率发生器

[p=214, null, left]//

[p=214, null, left]

[p=214, null, left]//

[p=214, null, left]的单片机均可)


[p=214, null, left]{


[p=214, null, left]SCON=0x50;

[p=214, null, left]//

[p=214, null, left]设置为串行口以方式

[p=214, null, left]1

[p=214, null, left]工作,

[p=214, null, left]8

[p=214, null, left]位异步通讯

[p=214, null, left],

[p=214, null, left]允许接收中断。



[p=214, null, left]PCON=0x80;

[p=214, null, left]//SMOD

[p=214, null, left]波特率选择位为

[p=214, null, left]1

[p=214, null, left]

[p=214, null, left]SMOD=1.


[p=214, null, left]BRT=RELOAD_COUNT; //

[p=214, null, left]波特率

[p=214, null, left]9600 256-

[p=214, null, left]晶振频率

[p=214, null, left]/

[p=214, null, left]波特率

[p=214, null, left]x16=BRT


[p=214, null, left]AUXR=0xD5;

[p=214, null, left]//T0

[p=214, null, left]

[p=214, null, left]T1

[p=214, null, left]

[p=214, null, left]12

[p=214, null, left]分频,速度是

[p=214, null, left]89C51

[p=214, null, left]

[p=214, null, left]12

[p=214, null, left]倍,启动独立波特率

[p=214, null, left]//

[p=214, null, left]发生器,每个时钟计数一次


[p=214, null, left]//

[p=214, null, left]设置串口

[p=214, null, left]1

[p=214, null, left]的波特率发生器为独立波特率发生器

[p=214, null, left],


[p=214, null, left]AUXR1=0x80; //

[p=214, null, left]切换到

[p=214, null, left]P1

[p=214, null, left]



[p=214, null, left]ES=1;


[p=214, null, left]//

[p=214, null, left]开启串口中断



[p=214, null, left]EA=1;


[p=214, null, left]//

[p=214, null, left]开启总中断


[p=214, null, left]}

[p=214, null, left]*/









michael_llh 发表于 2016-9-17 22:08 | 显示全部楼层
不要单单帖代码哦,可以加一点讲解,发布了之后记得查看一下你的排版,有的时候需要相应的修改哈
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

3

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部