如果Arduino以此波特率连续发送字节,则速度将最大为9600/10 = 960字节/秒(1个字节将需要10个波特:8个数据位1开始1个停止) . 然后将在超过104秒内收集100000个字节 . 如果通信没有中断,您的代码应该可以正常工作 . 要调试它,您可以在while循环中添加它:

System.Threading.Thread.Sleep(1000); //sleep 1 second

Console.WriteLine("Total accumulated = " + bytesread);

但是,更好的方法是使用 SerialPort 的 DataReceived 事件:

int buffersize = 100000;

SerialPort port = new SerialPort("COM3", 9600);

port.DataReceived += port_DataReceived;

// To be safe, set the buffer size as double the size you want to read once

// This is for the case when the system is busy and delays the event processing

port.ReadBufferSize = 2 * buffersize;

// DataReceived event will be fired when in the receive buffer

// are at least ReceivedBytesThreshold bytes

port.ReceivedBytesThreshold = buffersize;

port.Open();

事件处理程序:

private void port_DataReceived(object sender, SerialDataReceivedEventArgs e)

{

// The event will also be fired for EofChar (byte 0x1A), ignore it

if (e.EventType == SerialData.Eof)

return;

// Read the BytesToRead value,

// don't assume it's exactly ReceivedBytesThreshold

byte[] buffer = new byte[port.BytesToRead];

port.Read(buffer, 0, buffer.Length);

// ... Process the buffer ...

}

arduino的串口缓冲区_C#无法从串口Arduino读取完整缓冲区相关推荐

  1. 休眠 关闭串口输出_C#实例:串口通讯

    先看下运行结果: 最近在研究串口通讯,其中有几个比较重要的概念,RS-232这种适配于上位机和PC端进行连接,RS-232只限于PC串口和设备间点对点的通信.它很简单的就可以进行连接,由于串口通讯是异 ...

  2. c# wifi串口通信_C#中的串口通信

    串行接口(Serial port)又称"串口",主要用于串行式逐位数据传输.常见的有一般电脑应用的RS-232(使用 25 针或 9 针连接器)和工业电脑应用的半双工RS-485与 ...

  3. Arduino(5) 使用Mega2560设计上下位机串口通信系统的下位机

    前言 因项目需求,我们要从PC端去控制一些外部设备,比如激光器.光放大器等,这些设备一般使用到的都是低速的串口通信,所以我们需要设计一个上下位机串口通信系统来控制这些设备.这篇文章先讲如何使用Ardu ...

  4. Arduino与LU-ASR01语音识别模块的双向串口通信实现

    之前我写了一篇<Arduino的智能语言输入实现>,讨论了Arduino与LU-ASR01之间通过串口通信实现Arduino的中文语音输入,不过那个通信是不完整的,因为LU-ASR01的串 ...

  5. Arduino控制超声波检测与0.96OLED及串口显示

    Arduino控制超声波检测与0.96OLED及串口显示代码使用库共享(包括超声波检测与U8glib): 使用元件: 0.96寸 12864 I2C OLED 128x64规格 超声波检测模块 湿度模 ...

  6. Arduino UNO + DS1302简单获取时间并串口打印

    Arduino UNO + DS1302简单获取时间并串口打印 DS1302模块 DS1302简介 DS1302 是DALLAS 公司推出的涓流充电时钟芯片,内含有一个实时时钟/日历和31 字节静态R ...

  7. 【雕爷学编程】Arduino动手做(142)---GY-25串口倾斜度模块

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的.鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为 ...

  8. Arduino与掌控板通过软串口通信将数据上传阿里云

    注:本文系湛江市第十七中学星火创客团队及岭南师范学院物联网俱乐部原创部分参赛项目,转载请保留声明. 在Mind+上使用 Arduino UNO上云的话,需要购买DFRobot的OBLOQ物联网模块,由 ...

  9. c# wifi串口通信_C# 串口通信总结

    我们知道对于 标准DLL,可以采用DllImport进行调用.例如: [DllImport("KMY350X.dll")] private static extern int Op ...

  10. android 串口调试工具_树莓派通用串口通信实验

    一.介绍 对于树莓派 3B+来说,他的UART功能有三种:1.内部蓝牙使用:2.控制终端使用:3.与其他设备进行串口通信. 在树莓派USB TO TTL模块实验中学习了通过串口对树莓派进行控制台控制, ...

最新文章

  1. Oracle 数据库linux下sql命令行按回退键变成^H字符输入问题解决方法
  2. 重复数据插入unique列时,锁加在哪?
  3. IDEA 的这款插件真是逆天了,代码那都不是事!
  4. 打造狂拽炫酷的主流自定义侧滑控件(仿酷狗和QQ5.0)
  5. C#强化系列文章七:序列化和反序列化
  6. 可道云 docker 群晖_【curl】校园网群晖DS120j自动认证
  7. MATLAB--查表
  8. php支持微信h5支付,PHP接入微信H5支付的方法示例
  9. win10 android10之后高通芯片 adb和fastboot驱动无法识别问题
  10. TCP/IP常见协议及协议号及端口号
  11. java中文转英文_Java中文转换为英文拼音
  12. 安卓手机状态栏显示秒_让安卓手机上方状态栏时间显示精确到秒方法
  13. 洽谈国内单机游戏下载站
  14. VPN 虚拟专用网络隧道
  15. wf显示远端服务器无反应,无线路由器连接不上网络,一直提示网络服务器远端无响应!...
  16. 自定义函数使用GridSearchCV参数寻优
  17. 直流无刷电机(BLDC)转速闭环调速系统及Matlab/Simulink仿真分析(二)
  18. 【noip】【lca】火车运输 倍增
  19. 【转帖】关于找工作的鸡零狗碎(续)
  20. 最新UI界面漫画小程序源码,带后台支持流量主,24小时全自动更新!

热门文章

  1. HDU2147 kiki's game
  2. vue分割开的tab组件效果
  3. LNMP的安装(命令)
  4. 楼道游戏 c语言,C语言基础题!
  5. microsoft sql server无法删除_分享一则生产数据库sql优化案例:从无法删除到耗时20秒
  6. 成考java_成考本科课程:《Java程序设计》
  7. em算法详细例子及推导_EM算法详解
  8. java arraylist对象_Java中ArrayList的对象引用问题
  9. Introduction to Computer Networking学习笔记(一):网络层模型及IP header
  10. mongodb 分组聚合_MongoDB 临时表横空出现 1 万+,这条语句执行前请准备好翻车的姿势...