LIN总线技术在教学楼照明系统中的应用
该状态信息通过指示灯等形式通过CAN总线发给其他控制单元。
从节点的设计分为两个模块,即传感器模块和执行器模块。传感器用于检测室内光线度等信息,当传感器检测到有人时,立刻判断此时教室内的光线是否适合学习,并将此信息通过LIN总线传给主节点,主节点收到消息后,判断该情况对应的灯光控制模式,然后向LIN总线发送带相应标识符场的报文头,启动一次主节点向从节点发送数据的LIN总线通信。等待LIN总线处理该报文帧之后,主节点启动一次从节点向主节点发送数据的LIN总线通信,该从节点即为前一次LIN总线通信中,接收到主节点命令的从节点。如果主节点接收到的从节点数据与理论上应该收到的数据不符,主节点上的报错指示灯点亮,并可以显示发生故障的从节点号码。
3.3 LIN节点实现
LIN网络的主机节点和从机节点采用MCS-51系列单片机AT89C51和PHLIP的TJA1020收发器组成,LIN协议控制器AT89C51是低功耗/低电压、高性能CMOS 8位单片机。空闲方式停止CPU工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。TJA1020是LIN主/从协议控制器和LIN物理总线之间的接口。它使用的波特率可从2.4到20Kbits/s。控制器在TXD管脚输入的发送数据流通过LIN收发器转换成LIN总线信号,并由收发器控制转换速率和波形,减少EME。
3.3.1 LIN主节点设计
LIN主节点硬件原理如图2所示。由LIN协议的分析可知,在一次帧通信过程中,主从节点在大部分时间里是以标准的串行通信数据帧的形式交换数据的,通信的关键是要实现主节点和从节点的同步。在同步过程中,主、从节点所执行的操作是不同的:主机节点的任务是要发送报文头,从节点的任务是接收和判断报文头,实现与主节点的同步。
报文头的间隔场是一个基于主机节点时钟频率的13个以上位时(bit time)和至少1个位时的间隔界定符。对主节点来讲,这一部分是实现主节点功能的关键。一般情况下,串行口和I/O口(TXD,RXD)都是复用的,本系统中首先利用TXD管脚,将其作为I/O口使用,在程序中利用定时器在TXD/P3.1管脚上延时一个13个bit位定时的时间的低电平。也就是相当于在发送之前,控制TXD为高电平,在发送开始的时候,首先在该管脚输出一个低电平,利用定时器延时13bit位的时间,然后再拉高。
同步场的作用是使LIN从机和主机位速率同步,从而正确接收报文。当利用中断和定时器进行判别同步间隔后,就可以接收同步场。当主从节点的位速率相同时,同步场的数据可当串行数据发送和接收,没有特殊的意义。
3.3.2 LIN从节点设计
LIN从节点硬件原理如图3所示,从节点实现的关键是能够正确实时地接收报文头,达到与主节点的同步,为下一步的数据交换做好准备。
从节点对间隔场和同步字节场的接收完全采用中断方式进行。为了能及时感受到主节点报文头的起始阶段,将串口接收数据端RXD端与单片机的一个外部中断触发端口(INT1或INT0)相连,这样,当主节点发送过来的间隔场的下降沿到来时,就可以实时地触发从节点进入对报文头的接收程序段。从节点自总线电平下降沿到来之际,就对总线显性电平(低电平)持续的时间进行累积计算,直到发现总线恢复为隐性电平(高电平)为止。如果此段持续时间大于11个主节点工作位时时间,那么从节点就断定是一次帧通信的开始。接着从节点对同步字节场的接收作好准备,在同步字节场开始位的第一个下降沿起,连续对同步字节场的后4个下降沿进行计时累加,最后将得到的计时时间除以8,得到主节点发送数据的位时时间,即主节点下一步将要进行数据通信的波特率。从节点以此作为串口波特率设定值,通过串口与主节点交换数据。
间隔场和同步字节场的计时方法是将定时器T0设定成定时一个位时时间后中断,在各个阶段查询定时器T0中断次数,通过计算T0中断次数的差值,可以间接算出各个阶段的持续时间长度。
由于普通单片机的外部中断触发端只有下降沿和低电平两种触发方式,所以报文头间隔场开始阶段和同步字节场的下降沿可以触发从节点,但报文信号的上升沿却无法让从节点感知。让接收数据流分别经过1个三态门和1个三态非门再进入单片机的串口,2个三态门由单片机的两个端口来控制,就可以解决这个问题。一般情况下,三态门导通,三态非门截止,数据流正常进入单片机串口。当间隔场的下降沿触发单片机后,程序控制三态门截止,三态非门导通,数据流反相进入单片机,间隔场的上升沿经过三态非门后变成下降沿,同样也可以触发单片机中
- 一套基于ZigBee的室内智能照明系统设计(03-27)
- 智能照明中的总线协议(12-15)
- 基于单片机的交流LED智能照明系统设计(08-08)
- 图书馆I-bus智能照明总线系统的应用(07-31)
- 基于单片机的LED智能照明控制系统的设计(12-09)
- 基于51单片机实现智能照明控制系统的设计(12-08)