用单片机实现温度远程显示 第2页

用单片机实现温度远程显示 第2页

重要的是,该仪表的说明书详细介绍了与该仪表进行数据交换的命令及格式,其通讯协议也相对较简单,这给我们用单片机实现温度远程显示 第2页降减低了难度(虽然有RS-485端口的仪表很多,但大多没有通讯命令的详细说明,给我们用单片机编程增加了难度)。

(二)XJ-08S巡回检测仪通讯协议

1、通讯口设置

l         通讯方式:RS-485标准电平

l         同步方式:起停同步方式

l         波特率:9600BPS

l         通讯距离:不大于1200M

l         通讯线:二线

l         数据代码:ASCII

l         数据格式:每字符10位,1个起始位,8个数据位,1个停止位

2、  数据传输格式

l         地址:2字节(高字节在前,低字节在后);

l         数据:按地址顺序,仪表数据传输格式为十六进制2字节定点数;

              2字节定点数=低字节高4位(ASCII码)+低字节低4位(ASCII码)

高字节高4位(ASCII码)+高字节低4位(ASCII码)

              若数据为负数,则采用补码方式传输;

l         在传输实时测量值时,传输完2字节定点数后,紧接着又传输2字节定点数,其中高字节低4位为小数点位数。

    :(50.010 表示为 46  34  30  31  30  30  30  31

                                          低字节  高字节              小数位数

3、  仪表通讯格式:

@            DE          帧类型           帧数据           CRC              CR

l         @           :通讯起始符

l         DE          :仪表设备号(地址)

l         帧类型    :操作命令

l         帧数据    :各种操作命令所对应的命令及数据

l         CRC       :校验字节(@CRC之前的其他几个字节的异或值

l         CR          :结束符(回车符)

4、应用中用到的命令及数据格式:

l         读仪表全部动态数据命令帧       @ DE RD CRC CR

l         命令回送帧           正确       @DE RD 帧数据  CRC CR

                                                 错误       @DE * * CRC CR

                     例:读28号仪表的全部动态数据

                            命令:’@1CRD64’,0D(ASCII40 31 43 52 44 36 34 0d)

                     错误返回码    ‘@1C**72’,0D(ASCII40 31 43 2A 2A 37 32 0D)

                     正确返回数据@ 1C RD XXXX  XXXX  XXXX  XXXX  XXXX  XXXX

                                                               0通道           1通道       2通道

XXXX  XXXX  XXXX  XXXX  XXXX  XXXX  XXXX  XXXX

3通道              4通道              5通道              6通道

XXXX  XXXX  XX’,0D

7通道       校验

五、单片机选择及硬件电路设计

1、  选用ATMEL公司生产的AT89S8252-24PC单片机,其主要参数及特点如下:

l         MCS-51产品兼容(其引脚图见原理图)

l         具有8K字节可擦写的FLASH内部程序存储器,可擦写1000次;2K字节EEPROM,可擦写100000次,SPI口(用PC机的并口连接5条线即可通过SPI口下载程序,下载软件可从网上下载,这样可节省购买编程器的费用;)。

注:笔者现已制作成了ISP2000三合一烧写器,详情见http://www.mcudiy.com

l         256字节RAM32根可编程I/O线,可编程串行口,内置看门狗。

与看门狗有关的特殊功能寄存器WMCON 地址= 96H,与看门狗有关的控制位为96h01567位,第567位用于设置看门狗定时时间(具体见第5页表格),本应用中第567位均置1,设置看门狗溢出时间为2048ms,第0位为看门狗使能控制位,该位置1将使能看门狗,其第1位为复用位,向第1位写1将复位看门狗定时器,具体操作如下:

a,使能看门狗,并将其溢出时间设定为2048msORL  96H, #0E1H;

b,看门狗定时器清0ORL  96H, #2

2、按键设计:

为方便使用,设计了三个按键,分别为巡回/定点切换键、键、键。切换键用于巡检与定点模式的切换,上键向上切换通道,下键向下切换通道;其中巡检/定点切换键通过外部中断1以中断方式工作,中断程序将巡回/定点标志取反后直接跳到主程序中巡回/定点标志判断程序前运行,由判断程序完成巡回/定点的切换。按键信号由单片机P3.3P3.4P3.5引脚输入。

3、显示电路设计

为方便观察,选用三个二位共阳级8段数码显示管(TOD5201AE)动态显示,一位显示仪表地址(从AF),一位显示通道号(从07通道),其余四位用来显示实时温度值;用单片机P1口驱动一片74HC244以吸收电流的方式控制段码,用单片机P0.0P0.5引脚驱动六个PNP三极管(9012)控制位选。

4、电源选用5V/1A市售成品开关电源。

5 根据智能仪表通讯协议的要求,串行口定义为方式1工作,一帧10位:1个起始位、8个数据位、一个停止位;用一片75176完成数据的发送与接收,由于RS-485为半双工,故用单片机P3.2引脚控制发送与接收的切换;两个智能仪表处于RS-485总线的两个端点,为提高可靠性,在RS-485总线的两个端点上分别并联一个120Ω1/4W终端电阻。

l         系统方框图如右示:

l         单片机装置电原理图见下页:若图片无法显示请联系QQ3249114

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] 下一页

Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有