文档介绍:基于485的时间记录仪设计
一系统功能设计
,并实现掉电后时钟继续振荡。
。
(可用按键模拟)后,记下动作时间并通过串口上报上位机,
格式为:1;2009-12-15 06:15:56 其中“1”表示继电编号”2009-12-1506:15:56”
为时间格式。
二系统方案设计
整体构思思路:在生产工艺中通过人工记录机器的工作状态显得很麻烦,可以通过设计一个系统,实现对工作状态的自动记录。当一个生产流水线启动时,通过继电器发出一个信号,51单片机使能DS1302,DS1302记录此刻的时间,51单片机读取时间,通过485传送到上位机,上位机就可以知道生产线的工作状态。这样就可以实现对工业生产过程的无人监督记录。
整个电路系统用到的器件有AT89S51,MAX-485,DS1302等芯片。
下面就这几种器件进行简要的介绍:
MAX-485介绍
RS-485是美衡双绞线作传输线的多点通讯标准。它采用差分信号进行传输; km;最大可连接32个驱动器和收发器;接收器最小灵敏度可达±200 mV; Mb/s。由此可见,RS-485协议正是针对远距离、高灵敏度、多点通讯制定的标准。
MAX485引脚(管脚)图及工作电路
RS-485具有以下特点:
1) RS-485的电气特性:逻辑“1”以两线间的电压差为+(2―6) V表示;逻辑“0”以两线间的电压差为-(2―6)V表示。接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片, 且该电平与TTL电平兼容,可方便与TTL 电路连接。
      2) RS-485的数据最高传输速率为10Mbps 
      3) RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干能力增强,即抗噪声干扰性好。 
      4) RS-485接口的最大传输距离标准值为4000英尺,实际上可达 3000米,另外RS-232-C接口在总线上只允许连接1个收发器, 即单站能力。而RS-485接口在总线上是允许连接多达128个收发器。即具有多站能力,这样用户可以利用单一的RS-485接口方便地建立起设备网络。
 MAX485接口芯片是Maxim公司的一种RS-485芯片。
一电源+5 V工作,额定电流为300 μA,采用半双工通讯方式。它完成将TTL电平转换为RS-485电平的功能。其引脚结构图如图1所示。从图中可以看出,MAX485芯片的结构和引脚都非常简单,内部含有一个驱动器和接收器。RO和DI端分别为接收器的输出和驱动器的输入端,与单片机连接时只需分别与单片机的RXD和TXD相连即可;/RE和DE端分别为接收和发送的使能端,当/RE为逻辑0时,器件处于接收状态;当DE为逻辑1时,器件处于发送状态,因为MAX485工作在半双工状态,所以只需用单片机的一个管脚控制这两个引脚即可;A端和B端分别为接收和发送的差分信号端,当A引脚的电平高于B时,代表发送的数据为1;当A的电平低于B端时,代表发送的数据为0。在与单片机连接时接线非常简单。只需要一个信号控制MAX485的接收和发送即可。同时将A和B端之间加匹配电阻,一般可选100Ω的电阻。
下面是通信中断接收的程序,,晶振为外部16M,MAX485的DE和RE短接连PC0口, 程序如下:
#define SEND_485 PORTC|=0x01
#define READ_485 PORTC&=0xfe
void Usart1_init(void)   //16Mhz频率,,8位数据位,无校验,接收发送使能,1位停止位
{
   UBRR1H=0;
   UBRR1L=103;
   UCSR1B=(1<<RXCIE1)|(1<<RXEN1)|(1<<TXEN1);   //发送接收使能,使用中断方式,
   UCSR1C=(1<<UCSZ10)|(1<<UCSZ11);   //0x06 8位数据,1位停止位,无校验
}
void Usart1_transmit(unsigned char c)   //查询方式发送接收字符函数
{
   SEND_485;
   DelayBus();DelayBus();DelayBus();
   while( !(UCSR1A&(1<<UDRE1)));//等待发送缓冲区为空
   UDR1=c;
   while(!(UCSR
1A&(1<<TXC1)));
   // UDCR0=c;
   UC