Arduino设置SoftwareSerial缓冲区大小

SoftwareSerial的缓冲区大小设置

概述

新的Arduino的ESP8266软串口的缓冲区原来老的库中有宏定义可以用来修改接收和发送缓冲区的大小。在现在新的库中已经没有这个设置了,那怎么才能修改缓冲区的大小哪?

修改缓冲区的大小

定义软串口

cpp 复制代码
#include 《SoftwareSerial.h>
// 程序中定义软串口
SoftwareSerial mSerial(RXD1, TXD1);
// 在setup() 定义缓冲区大小
setup()
{
	Serial.begin(115200);
	delay(2000);
	mSerial.begin(19200,SWSERIAL_8N1,RXD1,TXD1,false,256);
}

这就可以将缓冲区修改成256个字节。

实验

原来在程序中默认大小为64个字节

cpp 复制代码
void begin(uint32_t baud, Config config,
        int8_t rxPin, int8_t txPin, bool invert,
        int bufCapacity = 64, int isrBufCapacity = 0) {
        UARTBase::begin(baud, config, rxPin, txPin, invert);
        if (GpioCapabilities::isValidInputPin(rxPin)) {
            beginRx(GpioCapabilities:: hasPullUp(rxPin), bufCapacity, isrBufCapacity);
        }
        if (GpioCapabilities::isValidOutputPin(txPin)) {
            beginTx();
        }
        enableRx(true);
    }

现在经过调用begin,将缓冲区扩大为256.

实际运行结果:

相关推荐
xyx-3v7 小时前
VS CodeC51 单片机开发环境搭建
单片机·嵌入式硬件
iCxhust8 小时前
c# U盘映像生成工具
开发语言·单片机·c#
小宋同学在不断学习10 小时前
stm32--SPI原理应用W25Q64(二)
stm32·单片机·spi
lingzhilab10 小时前
零知开源——STM32F4结合BMP581气压传感器实现ST7789中文显示教程
stm32·单片机·嵌入式硬件
夜月yeyue10 小时前
设计模式分析
linux·c++·stm32·单片机·嵌入式硬件
猫猫的小茶馆12 小时前
【STM32】外部中断
stm32·单片机·嵌入式硬件·mcu·51单片机
森焱森13 小时前
垂起固定翼无人机介绍
c语言·单片机·算法·架构·无人机
brave and determined14 小时前
国产MCU学习Day11——CW32F030C8T6 低电压检测器(LVD)详解与应用
单片机·嵌入式硬件·嵌入式·国产mcu·cw32f030c8t6·cw32f030c8t6lvd·低电压检测器
金色光环18 小时前
stm32与tp-linkv2接线、解决识别不到芯片问题
stm32·单片机·嵌入式硬件