51单片机 串口通信1(配置) 蓝牙、wifi (esp8266)、4G模块

send 发送

一输出一个字符:

UART包括TTL电平串口和RS232串口 TTL电平 输出高电平大于等于2.4 低电平小于等于0.4 。输入高电平大于等于2v 低电平为小于等于0.8   ,RS232逻辑1是-3-----负15,逻辑0是3到15

SUBF缓冲寄存器 地址为99H 输入输出都共用一个寄存器,

手册SCON的配置 地址98H  -----sm0--sm1--sm2--ren--tb8--rb8--t1--r1。sm0 sm1控制工作方式 (通过改变smod和TH定时器的值来改变波特率),ren=1时允许接收 tbrb8发送接收数据为8 t1r1为串行口中断的发送中断和接收中断

二输出字符串

调用字符串函数 实参为字符串(串口字符串换行为/R/N)  在字符串函数中新参为char* str 循环扫描偏移调用单个字符串函数 放入SBUF中 TI位需要置零 

三 使用查找方式来用串口点灯,把cmd或者light定义成数组,定义一个静态变量  static char i=0,ligthh【i】 = sbuf,i++;  调用函数strstr(light,"en")查询light数组中是否有en 有执行点灯 并让i=0,并初始化light,memset(light,‘\0’,size) 宏定义size 为8

蓝牙串口控制单片机点灯,将单片机txd rxd和蓝牙模块rxd 和txd连接 手机下载蓝牙串口助手,连接后可以通过发送open来开关灯  -------也可以蓝牙直接和usb转串口连接 向isp发送信息 但是不能控制单片机, 只有断开通透模式才能发送AT指令。

五 wifi模块交互

1 配置网络调试助手,ipconfig找到ip地址 tcp sever打开串口, 2 安信可调试助手 ,AT指令查看模块是否ok,配置波特率AT+UART=9600,8,1,0,0  选择工作模式AT+CWMODE=3双模  以设备模式接入家中路由器设备 AT+CWJAP="TP-LINK_3E30","18650711783" //指令  查询ip地址AT+CIFSR //指令      发送数据AT+CIPSEND=4 // 设置即将发送数据的长度 (这里是4个字节) >CLCA // 看到大于号后,输入消息,CLCA,不要带回车,开启透传模式AT+CIPMODE=1 //开启透传模式

AT+CIPSEND//带回车-》 退出的时候+++不要勾选发送新行
优化连接单片机和8266以及点灯 看图
4G模块
一   接线5v 插卡(信号灯会亮),
二  配置AT指令 +++ 勾线新行 AT+CPIN检测信号卡 AT+ICCID查看信号卡信息 AT+CSQ检查信号值 
三   电脑与路由器连接网洛后 用网络调试助手搭建一个新的服务器  通过花生壳将网络调试助手的ip 和端口设置为内网IP穿透 (会产生新的地址和端口)-----4G模块通过配置好AT指令(穿透端口的tcp和端口)将两个连接起来 可以互相发送信息。AT+SOCK=TCPC,103.15.125,5555连接socket服务器

你可能感兴趣的:(51单片机,51单片机,单片机)