单片机数据接收缓冲流的设计与实现.docVIP

  • 3
  • 0
  • 约7.31千字
  • 约 9页
  • 2017-05-27 发布于湖北
  • 举报

单片机数据接收缓冲流的设计与实现.doc

单片机数据接收缓冲流的设计与实现课案

由一个串口接收数据引发的问题与字节缓冲流系统的设计 在一个wifi数据收发项目调试时发现,数据在高速连续发送和接收时,经常出现数据出现了丢失和系统的死机。单片机在接收串口数据时,传统采用中断方法或者查询指定标志位方法接收数据。 查询指定标志位:这种方式通常在main函数的大循环中不断的检测标志位或者等待该标志位来判断是否有数据接收。通常有两种方式: 1:在大循环中 if(标志位成立)表明有数据接收 然后进行数据的处理。 优点: 不会引起整个main函数 线程的阻塞 ;在简单的数据接收项目中可以使用 缺点: 单片机一般都为单线程,复杂的控制中采用操作系统,例如UC/OS;所以,将所以都函数放在main函数大循环中进行轮番处理。整个循环周期时间不确定,其他任务函数可能发生阻塞,不能够保证数据到来时,正好在执行检测指定标志位,从而出现了数据丢失。 2:在大循环中 while(标志位);通过while来等待数据的到来。 优点:数据不会出现丢失,稳定。 缺点:整个main函数主线程出现堵塞,其他函数无法执行,上述所示。 显然:以上两种发送在复杂的控制系统中是不能采用的 ,因此:在没有多任务操作系统时,数据的接收采用中断接收的法式是最佳的。使用中断,可以不用查询和等待的方式接收数据,解决了许多问题。,此时,单片机可以说是多线程执行程序。main函

文档评论(0)

1亿VIP精品文档

相关文档