昨天的下午时,主管叫我做个串口小软件,我都知这份工要做有关串口的相关东西,不过我一点都不会,没接触过,,但是昨天的时候见个售后技术的同事用VB+MSComm控件来做类似的程序,简单的要命,我就挺有信心的(不过我不能用组件,因为它要安装才能用,有缺陷)。这软件用来定时发送命令,同埋点击特定按钮发送特定代码的。当主管问我几时做完时,我就话明天中午吃饭前,点知答完过后,我就怀疑自己啦,没接触过的东西行不行啊..
好彩之前做的智能数字会议系统(没做完的,做左小小,一直不停的模仿其它智能数字会议系统来做,老板叫我甘做的)用得上,好似D数据库操作,同埋D逻辑能用得上(代码还是写好一点,这样才能通用),GOOD啊...不过还是改好多,加左500几行代码先做完,昨晚做到12点先睡,早上又一直做先完成。
在做的过程中,遇到几个问题:
(1)COM SetCommState设置参数时,老是在StopBits停止位设置出错。后来才知道"5位数据位与2位停止位的组合6,7,8位数据位与1.5位停止位的组合都是错误的,而且
StopBits 0代表1 stop bit. 1代表1.5 stop bit. 2代表2stop bit",我之前老是以为设1就代表1 stop bit,汗.... (2)我软件使用的是Unicode 字符集,谁叫网上说使用 Unicode 字符范围比较广,就一直用这字符集。到发送数据时就出错啦,那工控机矩阵(不知道是不是这样说),不能响应.后来把Unicode 字符转换成多字节就可以啦.-_-,做开机启动时也遇到这样问题. 现在总算做完啦,不过这串口可不是这么简单,就像SOCKET(看过精通Windows Sockets网络开发:基于Visual C++实现就知道自己有多肤浅)一样,用组件很容易一些简单功能,但要做好可不简单,还有很长的路。