6818联网 8266wifi模块(附源码)

 

6818,8266的串口进行数据的收发 

 

前言

通过连接ttySAC1和8266的TXRX进行串口的通信,二者需要设置相同的波特率,数据位,奇偶校验同时关闭流控。

1.准备好Qt程序源码

2.通过Ubuntu交叉编译

3.导入开发板

4.连接8266进行通信


 

一、Qt 6818

1.添加 serialport 到.pro

代码如下(示例):

QT += core gui serialport

 

2.设置串口

1头文件.h中添加

#include <QSerialPortInfo>//串口所需要的头文件
#include <QSerialPort>

private:
    QSerialPort *serial;//串口类

 

2对应的.cpp中获取串口

 //============获取可用串口==============//
    foreach(const QSerialPortInfo &info,QSerialPortInfo::availablePorts()){
        //ui->comboBox_portname->addItem(info.portName());
        //测试串口是否可用
        QSerialPort ser(info);
        if(ser.open(QIODevice::ReadWrite)){//空闲
            ui->Serial_Box->addItem(ser.portName());
            //关闭
            ser.close();
        }
        else{//被占用
            ui->Serial_Box->addItem(ser.portName()+"(被占用)");
        }

 

 3打开并设置串口

if(ui->openSerialBtn->text()=="openSerial"){//打开
        serial = new QSerialPort(ui->Serial_Box->currentText(),this);
        if(!serial->open(QIODevice::ReadWrite)){
            QMessageBox::warning(this,"提示","打开串口失败!");
            serial->deleteLater();
            return;
        }

}
          serial->setBaudRate(QSerialPort::Baud115200); //1设置波特率
          serial->setDataBits(QSerialPort::Data8); //2设置数据位长度
          serial->setParity(QSerialPort::NoParity); //3设置校验位
          serial->setStopBits(QSerialPort::OneStop); //4设置停止位
          serial->setFlowControl(QSerialPort::NoFlowControl);//5关闭流控

我们的8266接6818的ttySAC1,ttySAC0是9pin转232的输出(烧录用的)。

3.编译到6818

将源代码复制到共享目录

5a6270a1a82d44f6a42b7fbf93cf43c5.png

 8a0c93d0b4ed4f859818b22d2a1d87a1.png

 执行armqmake

685ef3fdcf2d489bb7ef29d752dceba1.png

执行make生成 Serial文件

99bd73f96ca341d298c00a5a265b0656.png

0178dc213238462ea5772fb354b1fa88.png Serial烧录到6818执行即可!!

二、8266

1.代码示例

声明一下 我用的是 ESP12-F,引脚也是一样的

8f4b51290277413c9b4c29175fd6bfa6.jpeg

 

void setup()
{
    Serial.begin(115200);
    delay(10);
    Serial.println(ssid);
    WiFi.begin(ssid, password); //启动
    //在这里检测是否成功连接到目标网络,未连接则阻塞。
    while (WiFi.status() != WL_CONNECTED)
    {
        delay(500);
    }

    Serial.println(WiFi.localIP());

    //设置ticker 定时执行获取天气函数
    ticker.attach(1, tickerCount);
    myStepper.setSpeed(120);
}

源代码放链接,有需要自取哈。

三、连接后效果

7236c8e033514dc0963168ed324626c1.jpeg

 

 


总结

以上就是6818通过串口通信8266的步骤,主要演示实现过程,有讲得不细致的地方,请多多包涵~

附上程序源码,仅供参考。

链接: https://pan.baidu.com/s/1PTvLZ9igtHH15uXRtwwZww?pwd=up49 提取码: up49 

 

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值