论文部分内容阅读
摘要:阐述了节点开发设计的过程。在硬件设计部分重点说明了神经元芯片如何扩展外部存储器,在软件设计部分主要论述了节点的接口文件和应用程序的定义。
关键词:NodeBuilder Lonworks 智能节点 开发设计
中图分类号:TP393 文献标识码:B 文章编号:1002-2422(2008)01-0008-02
1 智能节点的硬件设计
采用神经芯片3150为主处理器,外加收发器、电源、晶振、存储器、I/O接口构成智能节点,如图1所示。
节点中,系统的固件存储在片外的EP2ROM中,地址为0x0000~0x3FFFH;应用程序也存储在片外的E2PROM中,地址为0x4000~0x7FFFH;片外RAM的地址为Ox8000~0xDFFFH。系统固件的存储地址要求从0x0000H开始,所以32kB E2PROM的地址应设计成Ox0000H~0x7FFFH;而RAM的地址是0x8000H~0xDFFFH(24kB)。将地址线A15直接作为E2pROM的选片信号线。当A15为低电平时,E2PROM被激活,因此保证了E2PROM的地址从0x0000H到0x7FFFH。地址线A13和A14进行与非逻辑再和A15与非后作为RAM存储器的选片信号线,这样,当地址信号线最高三位是100、101及110时,RAM存储器的选片信号才为低电平,所以RAM存储器的地址为1000000000000000~1101111111111111,即0x8000H~0xDFFFH,一共为24kB
设备I/O接口的声明格式如下:
inputIoutput[=initial-value];
事件及任务声明格式如下:
When(event)
{tasks}
为了说明应用程序如何定义,以图2所示的开环传感器为例,其应用程序如下:
#define LIGHT_SENSOR HBCORE 100L
#define MAX LUX 1000L
#define MIN_LUX OL
mtimer mpeating LightSensorTxTimer=LIGHT_SENSOR_HBCORE;
signcd long slLighlSensorLux;
unsigned long ulLightSensorMinSendT;
unsigned long ulLightSensorMaxSendT;
IO_4 input quadrature ioWheeh;
when(io_update_oeeurs(ioWheel))
{if(fblockNormalNotLockedOut(1ightSensor::global_index)) {
slLightSensorLux =(input_value*5);
slLightSensorLux=max(MIN_LUX,slLightSensorLux);
slLightSensorLux=min(MAX_LUX,slLightSensorLux);
if((ulLightSensorMinSendT>=
lightSensor::nvoLuxLevei::neiMinSendT)ll
(1ightSensor::nvoLuxLevd::nciMinSendT=0)){
ulLightSensorMinSendT=0;
ulLightSensorMaxSendT=0:
lightSensor::nvoLuxLevel=slLightSensorLux;}
}}
when(timer expires(lightSensorTxTimer))
{if(fblockNormalNotLockedOut(1ightSensor::global-index)){
if(ulLidnSensorMinSendT SendT){
ulLightSensorMinSendT;
} else{if(1ighlSensor::nvoLuxLevel !=slLightSensorLux){
lightSensor::nvoLuxLevel=slLightSensorLux:
ulLightSensorMinSendT=0;
ulLightSensorMaxSendT=0:}}
if (ulLightSensorMaxSendT MaxSendT){
ulLightSensorMaxSendT;
}else (lightSensor::nvoLuxLevel=slLightSensorLux;
ulLightSensorMinSendT=0;
ulLightSensorMaxSendT=0;
}}}
3 結束语
NodeBuilder工具使用Neuron c编程语言能够很容易的开发互操作性设备,节省一半的开发时间,从而加速LonMark认证:同时,新的编程向导程序可以快速的编写LonMark代码。NodeBuilder工具结合硬件、软件并以无以争辩的事实实现复杂的网络配制,能够开发许多的新产品,能够将互操作性产品快速的、以较低的成本在市场上销售,增强市场竞争能力。
关键词:NodeBuilder Lonworks 智能节点 开发设计
中图分类号:TP393 文献标识码:B 文章编号:1002-2422(2008)01-0008-02
1 智能节点的硬件设计
采用神经芯片3150为主处理器,外加收发器、电源、晶振、存储器、I/O接口构成智能节点,如图1所示。
节点中,系统的固件存储在片外的EP2ROM中,地址为0x0000~0x3FFFH;应用程序也存储在片外的E2PROM中,地址为0x4000~0x7FFFH;片外RAM的地址为Ox8000~0xDFFFH。系统固件的存储地址要求从0x0000H开始,所以32kB E2PROM的地址应设计成Ox0000H~0x7FFFH;而RAM的地址是0x8000H~0xDFFFH(24kB)。将地址线A15直接作为E2pROM的选片信号线。当A15为低电平时,E2PROM被激活,因此保证了E2PROM的地址从0x0000H到0x7FFFH。地址线A13和A14进行与非逻辑再和A15与非后作为RAM存储器的选片信号线,这样,当地址信号线最高三位是100、101及110时,RAM存储器的选片信号才为低电平,所以RAM存储器的地址为1000000000000000~1101111111111111,即0x8000H~0xDFFFH,一共为24kB
设备I/O接口的声明格式如下:
inputIoutput
事件及任务声明格式如下:
When(event)
{tasks}
为了说明应用程序如何定义,以图2所示的开环传感器为例,其应用程序如下:
#define LIGHT_SENSOR HBCORE 100L
#define MAX LUX 1000L
#define MIN_LUX OL
mtimer mpeating LightSensorTxTimer=LIGHT_SENSOR_HBCORE;
signcd long slLighlSensorLux;
unsigned long ulLightSensorMinSendT;
unsigned long ulLightSensorMaxSendT;
IO_4 input quadrature ioWheeh;
when(io_update_oeeurs(ioWheel))
{if(fblockNormalNotLockedOut(1ightSensor::global_index)) {
slLightSensorLux =(input_value*5);
slLightSensorLux=max(MIN_LUX,slLightSensorLux);
slLightSensorLux=min(MAX_LUX,slLightSensorLux);
if((ulLightSensorMinSendT>=
lightSensor::nvoLuxLevei::neiMinSendT)ll
(1ightSensor::nvoLuxLevd::nciMinSendT=0)){
ulLightSensorMinSendT=0;
ulLightSensorMaxSendT=0:
lightSensor::nvoLuxLevel=slLightSensorLux;}
}}
when(timer expires(lightSensorTxTimer))
{if(fblockNormalNotLockedOut(1ightSensor::global-index)){
if(ulLidnSensorMinSendT
ulLightSensorMinSendT;
} else{if(1ighlSensor::nvoLuxLevel !=slLightSensorLux){
lightSensor::nvoLuxLevel=slLightSensorLux:
ulLightSensorMinSendT=0;
ulLightSensorMaxSendT=0:}}
if (ulLightSensorMaxSendT
ulLightSensorMaxSendT;
}else (lightSensor::nvoLuxLevel=slLightSensorLux;
ulLightSensorMinSendT=0;
ulLightSensorMaxSendT=0;
}}}
3 結束语
NodeBuilder工具使用Neuron c编程语言能够很容易的开发互操作性设备,节省一半的开发时间,从而加速LonMark认证:同时,新的编程向导程序可以快速的编写LonMark代码。NodeBuilder工具结合硬件、软件并以无以争辩的事实实现复杂的网络配制,能够开发许多的新产品,能够将互操作性产品快速的、以较低的成本在市场上销售,增强市场竞争能力。