Updated dlmstp project on Win32. Added rx_fsm.mak for Borland.

This commit is contained in:
skarg
2007-08-23 00:34:38 +00:00
parent 4f42b20590
commit e16ae6eded
4 changed files with 154 additions and 21 deletions
+1
View File
@@ -45,6 +45,7 @@
#include "dlmstp.h" #include "dlmstp.h"
#include "rs485.h" #include "rs485.h"
#include "npdu.h" #include "npdu.h"
#include "bits.h"
/* Number of MS/TP Packets Rx/Tx */ /* Number of MS/TP Packets Rx/Tx */
uint16_t MSTP_Packets = 0; uint16_t MSTP_Packets = 0;
+11 -1
View File
@@ -33,6 +33,7 @@
#include "dlmstp.h" #include "dlmstp.h"
#include "rs485.h" #include "rs485.h"
#include "npdu.h" #include "npdu.h"
#include "bits.h"
#define WIN32_LEAN_AND_MEAN #define WIN32_LEAN_AND_MEAN
#define STRICT 1 #define STRICT 1
@@ -113,7 +114,6 @@ int dlmstp_send_pdu(BACNET_ADDRESS * dest, /* destination address */
unsigned pdu_len) unsigned pdu_len)
{ /* number of bytes of data */ { /* number of bytes of data */
int bytes_sent = 0; int bytes_sent = 0;
uint8_t destination = 0; /* destination address */
unsigned i = 0; unsigned i = 0;
if (!Transmit_Packet.ready) { if (!Transmit_Packet.ready) {
@@ -700,6 +700,16 @@ bool dlmstp_init(char *ifname)
#ifdef TEST_DLMSTP #ifdef TEST_DLMSTP
#include <stdio.h> #include <stdio.h>
void apdu_handler(BACNET_ADDRESS * src, /* source address */
uint8_t * apdu, /* APDU data */
uint16_t pdu_len) /* for confirmed messages */
{
(void)src;
(void)apdu;
(void)pdu_len;
}
/* returns a delta timestamp */ /* returns a delta timestamp */
uint32_t timestamp_ms(void) uint32_t timestamp_ms(void)
{ {
+11 -2
View File
@@ -3,11 +3,12 @@
<FileVersion major="1" minor="6" /> <FileVersion major="1" minor="6" />
<Project> <Project>
<Option title="dlmstp" /> <Option title="dlmstp" />
<Option makefile="makefile" />
<Option pch_mode="2" /> <Option pch_mode="2" />
<Option compiler="gcc" /> <Option compiler="gcc" />
<Build> <Build>
<Target title="Debug"> <Target title="Debug">
<Option output="bin\Debug\dlmstp.exe" prefix_auto="1" extension_auto="1" /> <Option output="bin\Debug\dlmstp" prefix_auto="1" extension_auto="1" />
<Option object_output="obj\Debug\" /> <Option object_output="obj\Debug\" />
<Option type="1" /> <Option type="1" />
<Option compiler="gcc" /> <Option compiler="gcc" />
@@ -16,7 +17,7 @@
</Compiler> </Compiler>
</Target> </Target>
<Target title="Release"> <Target title="Release">
<Option output="bin\Release\dlmstp.exe" prefix_auto="1" extension_auto="1" /> <Option output="bin\Release\dlmstp" prefix_auto="1" extension_auto="1" />
<Option object_output="obj\Release\" /> <Option object_output="obj\Release\" />
<Option type="1" /> <Option type="1" />
<Option compiler="gcc" /> <Option compiler="gcc" />
@@ -43,6 +44,10 @@
<Add directory="..\..\demo\object" /> <Add directory="..\..\demo\object" />
</Compiler> </Compiler>
<Unit filename="..\..\bacdef.h" /> <Unit filename="..\..\bacdef.h" />
<Unit filename="..\..\bacint.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\bacint.h" />
<Unit filename="..\..\crc.c"> <Unit filename="..\..\crc.c">
<Option compilerVar="CC" /> <Option compilerVar="CC" />
</Unit> </Unit>
@@ -61,6 +66,9 @@
<Option compilerVar="CC" /> <Option compilerVar="CC" />
</Unit> </Unit>
<Unit filename="..\..\mstptext.h" /> <Unit filename="..\..\mstptext.h" />
<Unit filename="..\..\npdu.c">
<Option compilerVar="CC" />
</Unit>
<Unit filename="..\..\npdu.h" /> <Unit filename="..\..\npdu.h" />
<Unit filename="dlmstp.c"> <Unit filename="dlmstp.c">
<Option compilerVar="CC" /> <Option compilerVar="CC" />
@@ -72,6 +80,7 @@
<Extensions> <Extensions>
<code_completion /> <code_completion />
<envvars /> <envvars />
<debugger />
</Extensions> </Extensions>
</Project> </Project>
</CodeBlocks_project_file> </CodeBlocks_project_file>
+113
View File
@@ -0,0 +1,113 @@
#
# Simple makefile to build an executable for Win32 console
#
# This makefile assumes Borland development environment
# on Windows NT/9x/2000/XP
# Tools: bcc32, make, ilink
!ifndef BORLAND_DIR
BORLAND_DIR_Not_Defined:
@echo .
@echo You must define environment variable BORLAND_DIR to compile.
!endif
PRODUCT = rx_fsm
PRODUCT_EXE = $(PRODUCT).exe
# Choose the Data Link Layer to Enable
DEFINES = -DBACDL_MSTP
SRCS = rs485.c \
rx_fsm.c \
..\..\mstp.c \
..\..\mstptext.c \
..\..\indtext.c \
..\..\crc.c
OBJS = $(SRCS:.c=.obj)
# Compiler definitions
#
BCC_CFG = bcc32.cfg
CC = $(BORLAND_DIR)\bin\bcc32 +$(BCC_CFG)
#LINK = $(BORLAND_DIR)\bin\tlink32
LINK = $(BORLAND_DIR)\bin\ilink32
TLIB = $(BORLAND_DIR)\bin\tlib
#
# Include directories
#
CC_DIR = $(BORLAND_DIR)\BIN
BACNET_INCL = ..\..\;..\..\demo\handler\;..\..\demo\object\;.
INCL_DIRS = -I$(BORLAND_DIR)\include;$(BACNET_INCL)
CFLAGS = $(INCL_DIRS) $(CS_FLAGS) $(DEFINES)
# Libraries
#
C_LIB_DIR = $(BORLAND_DIR)\lib
LIBS = $(C_LIB_DIR)\IMPORT32.lib \
$(C_LIB_DIR)\CW32MT.lib
#
# Main target
#
# This should be the first one in the makefile
all : $(BCC_CFG) $(PRODUCT_EXE)
# Linker specific: the link below is for BCC linker/compiler. If you link
# with a different linker - please change accordingly.
#
# need a temp response file (@&&) because command line is too long
$(PRODUCT_EXE) : $(OBJS)
@echo Running Linker for $(PRODUCT_EXE)
$(LINK) -L$(C_LIB_DIR) -m -c -s -v @&&| # temp response file, starts with |
$(BORLAND_DIR)\lib\c0x32.obj $** # $** lists each dependency
$<
$*.map
$(LIBS)
| # end of temp response file
#
# Utilities
clean :
@echo Deleting obj files, $(PRODUCT_EXE) and map files.
del $(OBJS)
del $(PRODUCT_EXE)
del *.map
del $(BCC_CFG)
#
# Generic rules
#
.SUFFIXES: .cpp .c .sbr .obj
#
# cc generic rule
#
.c.obj:
$(CC) -o$@ $<
# Compiler configuration file
$(BCC_CFG) :
Copy &&|
$(CFLAGS)
-c
-y #include line numbers in OBJ's
-v #include debug info
-w+ #turn on all warnings
-Od #disable all optimizations
#-a4 #32 bit data alignment
#-M # generate link map
#-ls # linker options
#-WM- #not multithread
-WM #multithread
-w-aus # ignore warning assigned a value that is never used
-w-sig # ignore warning conversion may lose sig digits
| $@
# EOF: makefile