- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VB程序设计中串行通信的两种传输模式.pdf
第 10 卷第 2 期 2005 甘 肃 高师学 报 Vol10No . 2 2005 VB 程序设计中串行通信的两种传输模式 冯中毅 董海棠 兰州师范高等专科学校 ,甘肃兰州 730070 兰州交通大学 ,甘肃兰州 730070 摘 要 :在 Visual Basic 程序设计中 ,串行通信有两种传输模式 ,在文本模式下 ,字符变量只能处理 A SCII 码 0 至 127 的文本字符 ,而在二进制模式下传输数据就可以解决 A SCII 码中传送超过 128 的字符时所存在的问题 。在 实际开发应用中 ,采用了Visual Basic6 . 0 中的 M SComm 控件对两种传输模式进行实现 。当传输的数据中包含文 件 、控制字符以及数量较大的数值数据时 ,应该采用二进制模式 ; 当传输的数据中包含的是指令及可见字符 ,数值 数据也比较少时 ,可采用文本模式 。 关键词 :VB6 . 0 ; 串行通信 ;传输模式 中图分类号 : TP3 11 文献标识码 :A 文章编号 :1008 - 9020 2005 02 - 022 - 02 1 问题的提出 送两个字节 。在接收时 , 若是英文 , 则原样地呈现 ; 若是 在计算机与外部设备的串行通信中 , 所传输的数据有 汉字 , 则需要在等到第二字节到达时才会组合形成一个汉
两种格式 : 文本数据格式和二进制数据格式 。因而对应的 字字符 。也就是说 , VB 会判断第一个字节的值是否大于
传输模式也有两种 : 字符模式和字节模式 。即在两种方式 128 。如果 R THreshold 1 , 当一个汉字或英文字母从串口
下 , 分别把数据以文本和二进制数据的形式传输 。 送出时 , 均会引发接收事件 ; 如果 R THreshold 2 , 那么英 计算机与单片机之 间实现 串行通信 的方法很多 , 而 文字母必须传送两个以上字符 , 才会引发接收事件 , 汉字
VB6 . 0 中的 M SComm 控件以其简洁易用而得到了越来越 只要一个以上就可引发接收事件 。
广泛的应用 。通过对该控件的 Input Mode 属性的设置 , 就 在前面分析的基础上 , 在选择串行通信传输模式时 ,
可选择以何种方式发送和取回接收缓冲区中的数据 。 可以有以下一些考虑 。文本模式通常以小于 A SCII 码的 128 计算机中字符最常用的表示方法是A SCII 码 。如果以8 的字符码来传送 , 通常用于传送 A SCII 码的资料和指令 。
个 bit 表示一个字符 , 那么就有 256 种组合 , 也即 A SCII 码 二进制模式可以用于传送文件如 exe 文件 可执行文件 ,
表上的256 个字符 。而西文字符一般是以单 7 位一个字节 大于 128 的 A SCII 码单字节字符如与单片机通信时的嵌入
来表示的 , 最多有 128 种组合 , 对应于 A SCII 码表中的可 控制字符等 , 甚至在出现了误码时二进制模式也可以进行
见字符 。而 128 至 256 间的字符是不可见字符 。对于英文 正确辨别并作出相应的处理 。当然二进制模式也可以用于
字母来说 , 只需 A SCII 码的前 128 个字符就够了 , 但是对 传送文字资料和指令 , 但它需要在接收端进行相应处理才
于中文等多语种支持来说 , A SCII 码就不够用了。于是就 能复现资料 。两者都可以传送数值数据 , 但是二进制模式
出现了Unicode 码 。Unicode 对所有的字符都以两个字节表 传输的速度比文本模式快得多 。例如要传送一个数值 1000 ,
示 , 汉字如此 , 英文也是如此 。它涵盖了世界上几乎所有 如果使用文本模式则需要 4 个字节 , 即 1 , 0 , 0 , 0 各 占一
国家的字符码 , 为每种语言的每个字符和符号在 0 至 65535 个字节 ; 如果以二进制模式传送的话 , 由于 1000 这个数值
范围内定义了一个数字 再加上为将来发展保留的一些空 在计算机上可以用一个二进制整数来表示 , 所 以它只要 2 余空间 。于是每个字符都有一个惟一的内码对应 。为了与 个字节就可以了 , 两者相差了 50 %的传输时间。数据量较
AN SI 兼容 , 英文字符的高字节为 0 , 低字节仍用 以前的 小时差异不是很明显 , 但在数据量很大时 , 则这个差异就
AN SI 编码 如 A SCII 码 。例如 : “A ”, 用 4 100 H 表示 , 会降低系统效能 , 必须加以考虑 。
低字节为 4 1 ,
文档评论(0)