博客首页 注册 建议与交流 排行榜 加入友情链接
推荐 投诉 搜索: 帮助

为人低掉,做事稳重

本BLOG符合--GNU-GPL--理念 \建立良好的习惯固然是令人钦佩的,但能及时发现并毅然改正自己最大的坏习惯则更具有实际意义\
sil.cublog.cn


缓冲区与中断
只记录现象不明原因:
 
条件:     2个缓冲区,一个标志用来区别,串口中断接收的数据是放在那个缓冲区里。
现象:死机,重起
 
------原因内存溢出------:
 
程序中,一缓冲区接收到字符串形式的命令后,切换到另一个缓冲区,做命令的处理以及与外部的通信,此时有一个地方出现了 问题。 具体没去深入追究。。。。
 
 
直接引入  新的改进方法:  取消缓冲区切换的方法,,,保持原来串口中断只用一个缓冲区,而当接收到命令字符串时,复制到另一个缓冲区即可。。。。这样原来程序改动也不大。
 
 
缓冲区应用原则:谁用谁初始化,用完在初始化或者叫清空。
 
 
                结论串口中断 只用一个缓冲区类型为volatile.
 
 
 
 
 
 
      

发表于: 2008-05-06 ,修改于: 2008-05-07 10:06,已浏览312次,有评论0条 推荐 投诉


网友评论

发表评论