登录
首页 » C# » C#实现环形缓冲区实例

C#实现环形缓冲区实例

于 2019-10-24 发布
0 176
下载积分: 1 下载次数: 1

代码说明:

因个人需求,需要测试串口数据,直接拿去应用就可以了,经历半个月的压力测试,都没问题, *组件功能:利用环形缓冲区的特点实现对接收到的数据环形缓冲进行缓冲, *进而减少应用程序对数据解析的压力,同时通过组件里面封装的读取缓冲 *区的数据的函数,来读取缓冲区完整的一帧数据,从而减少或是避免数据 *包的丢失的情况的发生,同时也减少了工程师重复编写数据解析方法的重,

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 模仿QQ播放器的简单音乐播放器
    可以从网易云音乐读取音乐,添加本地音乐等
    2016-05-11下载
    积分:1
  • c# 超级按键模拟键盘按键 实例源码下载
    InitSuperKeys() 安装WINIO驱动,一般用于Form_Load事件中调用CloseSuperKeys() 卸载WINIO驱动,一般用于Form_Closed事件中调用KeyDown(Key) 模拟普通Key键按下。KeyDownEx(Key)模拟扩展Key键按下。KeyUp(Key)模拟普通Key键弹起。KeyUpEx(Key)模拟扩展Key键弹起。KeyPress(Key)模拟普通Key键按下并弹起一次。其中按下和弹起的默认时间间隔是200毫秒KeyPress(Key,Int32)模拟普通Key键按下并弹起一次。其中按下和弹起的时间间隔是第二个参数,单位为毫秒。KeyPressEx(Key)模拟扩展按键Key按下并弹起一次。其中按下和弹起的默认时间间隔是200毫秒,写入扩展按键信息间隔时间为100毫秒KeyPressEx(Key,Int32)模拟扩展按键Key按下并弹起一次。其中按下和弹起的时间间隔是第二个参数,单位为毫秒,写入扩展按键信息间隔时间为100毫秒。KeyPressEx(Key,Int32,Int32)模拟扩展按键Key按下并弹起一次。其中按下和弹起的时间间隔是第二个参数,单位为毫秒,写入扩展按键信息间隔时间是第三个参数,单位为毫秒。特别说明:1、 在执行模拟按键之前必须先执行InitSuperKeys()进行驱动的安装,在窗体关闭之后最好可以卸载驱动。2、 以上方法中的参数Key为我在WinIoSys类中定义的一个枚举,并非DONET系统的Key枚举。3、 普通Key是指A,B,C,Space这种标准键盘按键。而扩展按键是指“方向键”等特殊按键,系统在处理这种扩展键的时候会先有一个写扩展按键信息的时间。因此没有Ex结尾的方法都是用于标准普通按键的,有Ex结尾的方法是用于特殊的扩展按键的。其中他们都有重载,用户可以自己设置间隔时间。至于按键详细分类,请自己上Google搜索。4、 模拟一次按键事件后,一定要让程序Sleep一些毫秒,否则下一个按键是无法正常模拟出的。5、 貌似USB走的是总线,和端口操作无关,因此该方法理论上不支持USB接口的键盘。由于大多数鼠标都是USB接口的。6、 部分杀毒软件会提醒用户安装驱动,或者将WinIo.sys报为病毒,其实这是正常现象。
    2015-03-17下载
    积分:1
  • C# 截取图片中的文字 并OCR识别
    英文识别率百分之99以上,中文识别率百分之30左右,如果自己有庞大的数据库可提升识别率, 源码内有 识别中文,英文 数字等区别,自行更改, 单一英文加数字识别率是最高的 该项目需要在安装 Microsoft Office Document Imaging 下载地址 如下: http://www.xdowns.com/soft/4/25/2009/Soft_50716.html 
    2017-12-02下载
    积分:1
  • NPOI操作EXCEL报表(常用类库)
    NPOI操作EXCEL报表
    2019-02-26下载
    积分:1
  • 皮肤
    很用的皮肤哦
    2013-06-07下载
    积分:1
  • asp.net 宾馆客房管理系统(源码+数据库+开题报告+论文)
    宾馆客房管理系统
    2019-06-25下载
    积分:1
  • 于51单片机的硬币电子秤的实现
    这是基于51单片机的硬币电子秤的实现,内含C语言源码和proteus仿真实现 【源码目录】 硬币电子秤的实现 ├── 1Kg电子秤程序(LCD1602显示)│   ├── HX711.H│   ├── HX711.LST│   ├── HX711.OBJ│   ├── HX711.c│   ├── LCD1602.LST│   ├── LCD1602.OBJ│   ├── LCD1602.c│   ├── LCD1602.h│   ├── MAIN.H│   ├── lcd12864.LST│   ├── lcd12864.OBJ│   ├── lcd12864.c│   ├── lcd12864.h│   ├── main│   ├── main.LST│   ├── main.M51│   ├── main.OBJ│   ├── main.c│   ├── main.hex│   ├── main.lnp│   ├── main.plg│   ├── main.uvgui.Administrator│   ├── main.uvgui.Cai Chao│   ├── main.uvgui_Administrator.bak│   ├── main.uvgui_Cai Chao.bak│   ├── main.uvopt│   ├── main.uvproj│   ├── main_uvopt.bak│   ├── main_uvproj.bak│   ├── uart.LST│   ├── uart.OBJ│   ├── uart.c│   └── uart.h├── HX711模块加载文件│   └── HX711.hex├── Last Loaded 电子秤实现3.fv8.5.pdsbak├── Last Loaded 电子秤实现3.pdsbak├── 电子秤实现3.pdsprj├── 电子秤实现3.pdsprj.DESKTOP-SC10NBS.zxh.workspace└── 电子秤实现3.pdsprj.LAPTOP-KPK9NO8B.浪峰姐姐.workspace2 directories, 39 files【核心代码】void main(){    Uart_Init();    Send_Word("Weight"); Send_Word("Num"); Init_LCD1602(); LCD1602_write_com(0x80); LCD1602_write_word("Weight"); LCD1602_write_com(0x80 7); LCD1602_write_word("Num"); Delay_ms(1000); //ÑÓʱ,µÈ´ý´«¸ÐÆ÷Îȶ¨ Get_Maopi(); //³ÆÃ«Æ¤ÖØÁ¿ while(1) { EA = 0; Get_Weight(); //³ÆÖØ Number = Weight_Shiwu/(coin_weight*10); EA = 1; Scan_Key(); //ÏÔʾµ±Ç°ÖØÁ¿ if( Flag_ERROR == 1) {            Send_Word("ERROR"); LCD1602_write_com(0x80 0x40); LCD1602_write_word("ERROR "); } else {                     Send_ASCII(Weight_Shiwu/1000 0X30);            Send_ASCII(Weight_Shiwu%1000/100 0X30);            Send_ASCII(Weight_Shiwu%100/10 0X30); Send_Word(".");            Send_ASCII(Weight_Shiwu%10 0X30);            Send_Word("g"); LCD1602_write_com(0x80 0x40); LCD1602_write_data(Weight_Shiwu/1000 0X30);            LCD1602_write_data(Weight_Shiwu%1000/100 0X30);            LCD1602_write_data(Weight_Shiwu%100/10 0X30); LCD1602_write_word(".");            LCD1602_write_data(Weight_Shiwu%10 0X30); LCD1602_write_word("g"); Send_ASCII(Number/100 0x30); Send_ASCII(Number%100/10 0x30); Send_ASCII(Number%10 0x30); LCD1602_write_com(0x80 0x40 7); LCD1602_write_data(Number/100 0x30); LCD1602_write_data(Number%100/10 0x30); LCD1602_write_data(Number%10 0x30); Send_ASCII(coin/10 0x30); Send_ASCII(coin%10 0x30); Send_Word("jiao"); LCD1602_write_com(0x80 12); LCD1602_write_data(coin/10 0x30); LCD1602_write_data(coin%10 0x30); LCD1602_write_com(0x80 0x40 12); LCD1602_write_word("jiao"); } }}
    2021-05-06下载
    积分:1
  • NFC协议NDEF
    NFC协议NDEF
    2016-06-13下载
    积分:1
  • C深度解剖
    C语言深度解剖
    2014-04-18下载
    积分:1
  • 学堂在线+C++高级程序设计+郑莉+课程所有代码
    郑莉老师课程代码,解压后200多M
    2020-02-15下载
    积分:1
  • 696518资源总数
  • 105554会员总数
  • 2今日下载