日期:2011-01-22  浏览次数:20428 次

  虽然在大学的时候学的是计算机专业,但现在的本科生的计算机水平我想大家心里都有数。到单位后闲了很长一段时间。但后来就慢慢开始有了些项目,一开始就是有关串口通信的。难度大了点,但我在的地方是一个不可以轻易说“不”的地方,只好硬着头皮开始干了,为了与时俱进我选择了VS.net2003虽然事实证明成熟的通信协议用成熟的语言(VC6,VB6)可能效果更好些.但为了和新一代编程语言更好的接触。

  说起串口通信,无非是create file开串口,write file向串口写数据,read file从串口读数据。再结合具体设备的相关数据格式就可以编程了。我建立的是VC.NET,Windows窗体工程。于是麻烦就开始出现了。在.NET的窗体工程里我很喜欢像在VB里编程那样,直接双击按钮之类的控件,然后在Form1.h里直接写程序,能不用函数的就不用函数。很快,createfile函数无法识别,但在编程窗口里系统能认识并给出相应的函数参数提示。

  查MSDN发现需要#include,虽然form1.cpp里有,但也只有在form1.h里再include一遍了,结果就是命名空间里的有些东西出现错误无法使用了,虽然麻烦些,但还是把函数写在.cpp文件里吧!然后,有些串口设备会自带一些实现本身功能的.dll,不用说了,又不能用,尤其是用C/C++写的,尤其是底层的数据格式和数组,VB的模块兼容性好些,可以用VB.net二次封装一下。对串口本身的操作并不复杂,但问题是连接迎硬件后需要花费大量的心思去面对保护的问题,硬件不会完全按照说明书那样去工作的!