串口波特率到底能不能设置成57600

gzh911127 2010-07-23 12:50:53
我的程序设置成如下的波特率,好像没出现错误
MSComm1.Settings = "57600,n,8,1"
但MSDN中说VB的波特率只有以下才是合法的
110
300
600
1200
2400
9600(缺省)
14400
19200
28800
38400
56000
128000
256000
谁能解释一下是什么原因?
...全文
1390 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
zdingyun 2010-07-24
  • 打赏
  • 举报
回复
57600 * 2 = 115200
38400 * 3 = 115200
19200 * 6 = 115200
14400 * 7 = 115200
9600 * 12 = 115200
.......
300 * 384 = 115200
gzh911127 2010-07-24
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 zdingyun 的回复:]
VB code
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm1.Settings = "57600,n,8,1"
MSComm1.PortOpen = True
End Sub


不报错,就是合法.是符合封装在MSComm控件内的波特率.
[/Quote]
就怕不经意中引入错误,
我也一直在这样用,想弄明白到底是怎么回事
贝隆 2010-07-23
  • 打赏
  • 举报
回复
这个建议你使用API来实现串口通信,设置波特率,MSComm有的波特率是设置不成功的。看看这个:
http://download.csdn.net/source/1339593
现在还是人类 2010-07-23
  • 打赏
  • 举报
回复
MSComm 控件也是直接封装 API 的,他只是将你传递的值传递给 API 函数而已。
而根据 VC 里的 winbase.h 中的定义:
串口通讯设置中支持以下波特率的设置:

#define CBR_110 110
#define CBR_300 300
#define CBR_600 600
#define CBR_1200 1200
#define CBR_2400 2400
#define CBR_4800 4800
#define CBR_9600 9600
#define CBR_14400 14400
#define CBR_19200 19200
#define CBR_38400 38400
#define CBR_56000 56000
#define CBR_57600 57600
#define CBR_115200 115200
#define CBR_128000 128000
#define CBR_256000 256000
zdingyun 2010-07-23
  • 打赏
  • 举报
回复
zdingyun 2010-07-23
  • 打赏
  • 举报
回复
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm1.Settings = "57600,n,8,1"
MSComm1.PortOpen = True
End Sub

不报错,就是合法.是符合封装在MSComm控件内的波特率.
gzh911127 2010-07-23
  • 打赏
  • 举报
回复
我想知道57600合不合法
谁能给出一个合法的列表
谢谢!
chinaboyzyq 2010-07-23
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 gzh911127 的回复:]

引用 1 楼 zdingyun 的回复:
MSDN也有错误和不完整.
MSComm控件能摄制的波特率:
110
300
600
1200
2400
9600(缺省)
14400
19200
28800
38400
56000
57600
115200

这两个列表到底哪个对呀?
[/Quote]
#1
hbkjccl 2010-07-23
  • 打赏
  • 举报
回复
我一直用115200 没问题啊
zdingyun 2010-07-23
  • 打赏
  • 举报
回复
LZ:你把MSDN的列表中的128000和256000放MSCOMM件的SETTINS属性中试下不就知道了对还是错.
gzh911127 2010-07-23
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zdingyun 的回复:]
MSDN也有错误和不完整.
MSComm控件能摄制的波特率:
110
300
600
1200
2400
9600(缺省)
14400
19200
28800
38400
56000
57600
115200
[/Quote]
这两个列表到底哪个对呀?
zdingyun 2010-07-23
  • 打赏
  • 举报
回复
MSDN也有错误和不完整.
MSComm控件能摄制的波特率:
110
300
600
1200
2400
9600(缺省)
14400
19200
28800
38400
56000
57600
115200
1. 串口WIFI模块 功能概述(支持透明传输) HLK-WIFI-M03硬件部分 项目 指标 串口电平 TTL/RS232 连接器 插针(8PIN,兼容以前的4PIN连接),具有防插反设计 1VCC,2 RX 3 TX ,4GND 5 GPIO0,6 GPIO1,7LINK,8 RST 指示灯 连接状态,板上显示,同时输出信号到外部接口READY 无线传输状态,板上显示,同时输出信号到外部接口LED1 天线 外接天线 体积 55.2x25.4x10mm(较小) 温度范围 0~70 degC 供电 +3.3V +/-10% HLK-WIFI-M03软件部分 项目 指标 无线功能 协议标准 802.11b/bg 网络类型 Infra/adhoc/private 安全认证 OPEN/WEP64/WEP128/CCMP/TKIP/WPI OPEN/SHAREKEY/WPA/WPA2/WAI 节能 打开/关闭RF 网络功能 传输层协议 TCP/IP/UDP/ARP/ICMP/DHCP 应用层协议 HTTP(Server,仅用于远程WEB配置功能) DNS(Client) 用户接口功能 串口波特率 1200bps~115200bps 串口传输模式 命令模式:接收AT指令集 透明模式:时间/长度(可设置)触发,特殊字符(可设置)退出 控制协议 AT+命令集 配置参数 掉电保存(flash),支持自动备份与恢复 测试、维护 生产测试 支持Litepoint测试命令集/设置MAC地址/设置发送功率 支持UART接口 固件升级 通过配置管理程序 上位机软件 配置管理程序 用于模块的参数配置、联网、传输功能演示等 生产测试程序 用于生产阶段的出厂检测,包括物理层测试、功率校正、MAC地址烧写 虚拟串口客户端程序 与固件中的虚拟串口服务器程序一起用于实现无线串口功能 其它 用户手册 全部AT+指令集的使用方法Demo源码 2. HLK-WIFI-M03功能定义 2.1 模块固件程序 2.1.1 无线功能  支持802.11b-only、802.11b/g mix  支持1~13信道  支持1M、2M、5.5M、6M、9M、11M、12M、18M、24M、36M、48M、54M传输速率  支持网络扫描,串口返回所有网络信息。  支持加入infra网络  支持创建/加入adhoc网络  支持OPEN/WEP64/WEP128/CCMP/TKIP/WPI加密模式  支持OPEN/WEP/WPA/WPA2/WAI认证方式  支持仅使用ssid联网 支持绑定BSSID联网  支持用户通过AT+指令主动控制联网  支持使用配置参数自动联网  支持节能(待机状态下关闭RF方式) 2.1.2 网络功能  支持TCP/IP协议  IP协议 支持网段穿越(通过设置网关和子网掩码) 不支持分段的接收与发送  ARP协议 支持接收arp请求,并回复响应 支持发送arp请求,并接收响应  ICMP协议 支持接收ping请求,并回复响应 支持发送ping请求,并接收响应 不支持长度大于1460的ping请求  TCP协议 支持client模式 支持server模式,每个server只能接入一个client 支持最多n个socket(其中1个用于WEB远程管理,用户可用n-1个) (注:n待定)  UDP协议 支持client模式,仅用于发送 支持server模式,仅用于接收 支持最多n个socket 支持广播地址  DHCP协议 支持作为client,自动获取ip地址  支持HTTP协议,内置一个http服务器,用于实现远程WEB管理功能  DNS协议,支持客户端 2.1.3用户接口功能  用户接口类型  物理串口  数据格式 数据位:5/6/7/8位 停止位:无/1/1.5/2位 奇偶校验位:无/奇/偶 流控:无  波特率 支持常用1200/2400/4800/9600/19200/38400/57600/115200bps  命令模式 模块上电后初始化完成后进入命令模式,此模式下仅接收并响应AT+指令。用户在此模式下可以通过AT+指令集对模块进行各种控制操作。 使用AT+指令可以从命令模式进入透明模式。  透明模式 此模式为数据传输状态,所有输入输出数据(除逃逸字符以外)均进行透明传输处理,模块仅作为串口与无线网络之间的数据通路。在此模式下,只有一条虚拟的数据收发通路处于激活状态,即: 当使用tcp连接时,只有一个socket可用,无论client或server模式; 当使用udp连接时,一个client模式socket和一个server模式的socket可用; 满足下列条件之一即可从命令模式进入透明模式:  模块成功接收用户发出的AT+指令并发送完响应后  配置参数中设置了自动联网及自动进入透明模式,模块在自动联网成功后 满足下列条件即可从透明模式退出到命令模式:  模块成功接收用户发出的符合限定条件的逃逸字符  远程管理  WEB服务器 模块内置一个web服务器,用户通过浏览器可以连接该服务器,并对模块内部配置参数进行远程配置。  虚拟串口服务器 模块内置一个虚拟串口服务器,实现远程的基于AT+指令的配置管理功能 实现虚拟串口与物理串口之间的数据转发 虚拟串口服务器仅在透明传输模式下启用有效 通过配置参数可设置是否启用虚拟串口服务器功能  状态指示  无线传输状态指示灯 模块使用输出信号LED1指示当前无线传输状态 无数据传输 - 常灭 有数据传输 - 闪烁  连接状态 模块使用输出信号READY指示当前连接状态,0 - 断开,1 - 连接 在不同的传输模式下READY信号的含义不同,分别为: 命令模式:表示模块与AP直接的连接状态 透明模式:表示模块与AP及服务器之间的连接状态  状态1 模块使用输出信号LED2指示当前连接状态 尺寸大小:

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧