保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

基于双口RAM的LonWorks智能通信节点设计


有关接地、屏蔽和滤波的适当处理,有效减小了电磁干扰的影响。针对收发器FTT-10A,设计抗干扰电路时,应主要围绕印刷电路板上星形地结构和火花隙的设计。对于静电放电(ESD),在印刷电路板(PCB)设计中,采用火花放电隙,能够削弱到达收发器和后续缓冲器电路的ESD能量,使用箝位二极管,能大大增强节点承受来自网络连接端的ESD能力。对于电磁干扰,应尽量保证强噪声源(如DC/DC变换器、时钟电路等)远离收发器FTT-10A。

2 LonWorks智能通信节点的软件设计

在LON网程序设计中使用Neuron C语言。Neuron C是一种基于ANSI C且带有网络通信和高级硬件设备接口扩展语句的高级不应该。它增加了对I/O、事件处理、消息传递和分散数据目标的支持,扩充了包括软件定时器、网络变量、显示消息、一个多任务调度程序以及其它各具特点的函数等。采用Neuron C语言开发的应用程序,可直接在Lonbuilder神经元仿真器上进行调试,因此应用程序的开发可独立于硬件设计进行。智能节点通信流程如图3所示。

    程序中,节点Neuron 3150侧使用显示报文通信,能有效实现智能节点与单片机进行双向通信的功能。用Neuron C语言进行节点设计编程时,必须首先查询IO_6和IO_7的内容。定义两个比特类型的输入变量INTL和BUSYL,通过查询这两个变量的内容来确定程序的运行流程。编程如下:

//*****包含文件*****

#include<string.h>

#include<control.h>

//*****公共变量声明*****

#define Tlon_485 0xd000 //定义从LON网上所接收数据在双口RAM存储单元首址

#defin T485_lon 0xd0200 //定义从单片机侧所接收数据在双口RAM存储单元首址

IO_6 input bit INTL;//定义IO_6,IO_7为比特类型的输入变量

IO_7 input bit BUSYL;

Msg_tag tag_out1; //定义输出消息标签

//****系统主程序********priority when(msg_arrives)//显示网络消息事件

{unsigned int *p; //存储从LON网上接收的数据

int i;

p=(unsigned int*)(Tlon_485);

for(i=0;I<30;i++)

{*p=msg_in.data[i];

p++;

}

}

}

when(io_in(INTL)= =0)//当单片机侧有数据时申请中断

{when(io_in(BUSYL)= =1)

{unsigned int*u;

int j;

u=(unsigned int*)(T485_lon);

《基于双口RAM的LonWorks智能通信节点设计(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/154635.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。