波特率自适应

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

波特率自适应方案

一、波特率自适应概念

电表检测PC 机通信的波特率,并自动匹配通信。

二、方案

1、 点对点自适应通信,即PC 机与单一电表进行自适应通信。 如果我们想利用PC 机(波特率为1200bps )对未知波特率的电表通信,则需要进行下面几个步骤。

1.1 第一步:PC 机需要以1200bps 发送“ 55H 55H ”

1.2 第二步:等待未知波特率的电表应答。如果自适应成功则应答字符为:“80H ”,这时未知波特率的电表将更波特率为1200bps 。如果无应答,应答字符有误,或者在500ms 内未应答则此次自适应过程失败。重复第一步和第二步,重复三次都未应答则自适应失败。

1.3 第三步:成功自适应则可以利用1200bps 对电表进行通信。自适应失败只能将电表的波特率修改成1200bps 才能通信。

如果想用其他的波特率通信,请重复上面步骤

流程图

PC (1200)发送5555H → 电表回复80H → 1200正常通讯 →若要修改波特率 ↑ ↓

← 电表未回复80H

2、 点对多自适应通信,即广播方式让总线上的电表统一波特率

流程图

3、 电表单片机自适应波特率原理

在不同波特率下发送一位数据的时间是不一样的,利用这个原理,确认在1200、2400、4800、9600状态下发送一个字节所需要的时间段B1、B2、B3、B4,将其存储到单片机中。

PC 机以广播方式1200bps 发送5555H 等待500ms 再次广播

发送55H 等待500m PC 机以

1200bps 抄读系统表

当PC机发送数据到电表时,单片机利用定时器测量接收一个字节的时间A,然后将A与B1,B2,B3,B4进行比对,假如A在B1范围内,那么单片机将电表波特率设置为1200,修改波特率结束。

流程图如下所示:

广播或者PC发送5555H(1200波特率)

单片机接收到第一个字节数据

55H,产生接收中断1

定时器开始工作,每产生一次定

时器中断就对变量A进行累加

单片机接收到第二个字节数据

55H,产生接收中断2

关闭定时器,将变量A与

B1/B2/B3/B4进行比对,确认A

属于范围B1

单片机将电表波特率改为1200

波特率修改成功

相关文档
最新文档