ESP8266使用笔记

说明

ESP8266是个串口WIFI模块,价格便宜,使用串口操作方便,但是数据传输速度较低,受限于串口通信。

三种工作模式

  1. AP(路由模式)
  2. STATION(客户端模式)
  3. STATION+AP(混合模式)

AP

AT+RST     #重启
AT+CWMODE=2    #设置为ap模式
AT+CWSAP="TEST","12345678",1,3    #ssid  pwd  chl(通道号),(ecn)加密方式0 OPEN 1 WEP 2 WPA_PSK 3 WPA2_PSK 4 WPA_WPA2_PSK 
AT+CWLIF    #查看链接列表
AT+CIFSR    #查看本机地址

 

STATION

AT+RST #重启
AT+CWMODE=1  #设置为sta模式
AT+CWLAP  #查看无线列表
AT+CWJAP="SSID","PWD"   #链接无线
AT+CWJAP?    #查询连接的AP
AT+CIFSR    #返回模块ip地址

 

创建server

AT+CWMODE=1    #sta模式
AT+CIPMUX=1    #多路模式
AT+CIPSERVER=1,80    #1开启 0关闭,80 端口  等待链接。。。
AT+CIFSR    #查看模块ip
AT+CIPSTATUS    #查看当前连接的客户端: 链接id号,tcp类型,ip地址,端口号,0属于clinet链接 1属于server链接
AT+CIPSEND=0,30  #发送数据  单路时=length ,多路时=id,length
AT+CIPCLOSE=0    #关闭TCP UDP链接, 单路模式为0,多路为对应id

创建client

AT+CIPSERVER=0    #关闭server服务
AT+CIPMUX=1    #多连模式
AT+CIPSTART=2,"TCP","192.168.1.2",8080 #单路时 type,addr,port; 多路时 id,type,addr,port
AT+CIPSEND=2,10    #发送数据 单路时=length ,多路时=id,length
AT+CIPCLOSE=0 #关闭TCP UDP链接, 单路模式为0,多路为对应id

 

常用命令列表

AT+RST #重启
AT+CWMODE=2 #设置模式 1-Station模式,2-AP模式,3-AP兼Station模式
AT+CWMODE?  #查看模式
AT+CIPMUX?    #是否建立多链接  0单路模式  1多路
AT+CIPSTO? #查询超时
AT+CIPSTATUS #查看当前连接的客户端: 链接id号,tcp类型,ip地址,端口号,0属于clinet链接 1属于server链接
AT+CIPSTO #设置服务器超时时间、
AT+CIPSTO? #查询服务器超时时间

 

linux下 minicom设置USB转串口(com端口)

inicom是一个串口通信工具,就像Windows下的超级终端。可用来与串口设备通信,如调试交换机和Modem等。它的Debian软件包的名称就叫minicom。

安装

apt-get install minicom

配置

输入minicom -s 进入配置选项

选择Serial port setup  进入串行端口设置

  1. 输入大写A,修改Serial Device为‘/dev/ttyUSB0’
  2. 输入回车
  3. 再输入大写F,修改Hardware Flow Control为NO
  4. 输入回车,退出配置
  5. 选择Save setup as dfl保存设置
  6. 选择Exit from Minicom退出

 

 

APICloud学习笔记

数据存储方式

  1. file:目录操作,文件存储
  2. db:本地sqlite数据库
  3. localstorage:html5 localstorage
  4. preterence:set/get/remove Prefs

窗口操作方式

  • api.openFrame 打开子窗口
  • api.openFrameGroup 打开子窗口组
  • api.openWin 打开新窗口
  • api.setRefreshHeaderInfo 下拉刷新
  • api.refreshHeaderLoadDone 下拉刷新结束,回掉内调用

实例:

<a onclick="newFrame()" >新页面</a>
<script>
function newFrame(){
   api.openWin({
	        name: 'aa',
	        url: 'html/home.html'
     });
}
apiready=function(){	
    var $header=$api.byId('firstHeader');	
    $api.fixIos7Bar($header);	
    var main=$api.byId('main');	
    var $header_h=$api.offset($header).h;	
    var main_h=$api.offset(main).h	
    // var $nav_h=$api.offset($nav).h	
    api.openFrame({	
        name:'p1_frame1',	
        url:'p1_frame1.html',	
        rect:{	
            x:0,	
            y:$header_h,	
            w:'auto',	
            h:main_h	
        }	
    })	
}	
</script>

云端数据操作

  1. 开启数据云
  2. 定义数据字段表

调用数据

var query = api.require('query');
query.createQuery(
    function(ret, err) {
        var qid = ret.qid;
        query.limit({
            qid:qid,
            value:20
        });
        query.whereStartWith({
            qid:qid,
            column:'name',
            value:'张'
        });
        var model = api.require('model');
        model.findAll({
            class:'Person',
            qid:qid
        }, function(ret, err) {
            if (ret) {

            }
        });
    }
);

 

centos7 开放端口

centos使用了firewalld

 

禁用

# systemctl mask firewalld

停用

# systemctl stop firewalld

 

查询是否开启80端口则:

# firewall-cmd --query-port=80/tcp

开启80端口:

# firewall-cmd --add-port=80/tcp