From 1ad2da7895e87dbc6737a1438afc50ed50d87065 Mon Sep 17 00:00:00 2001 From: skarg Date: Fri, 28 Nov 2008 22:05:46 +0000 Subject: [PATCH] Corrected compile errors in PIC port for MS/TP. Untested. --- .../ports/pic18f6720/BACnet-Server.mcp | 48 ++++++++++-------- .../ports/pic18f6720/BACnet-Server.mcw | Bin 58368 -> 57856 bytes bacnet-stack/ports/pic18f6720/rs485.c | 36 ++++++------- bacnet-stack/src/fifo.c | 3 +- 4 files changed, 47 insertions(+), 40 deletions(-) diff --git a/bacnet-stack/ports/pic18f6720/BACnet-Server.mcp b/bacnet-stack/ports/pic18f6720/BACnet-Server.mcp index 444b2bd7..b4932d36 100644 --- a/bacnet-stack/ports/pic18f6720/BACnet-Server.mcp +++ b/bacnet-stack/ports/pic18f6720/BACnet-Server.mcp @@ -83,6 +83,7 @@ file_056=. file_057=. file_058=. file_059=. +file_060=. [GENERATED_FILES] file_000=no file_001=no @@ -144,6 +145,7 @@ file_056=no file_057=no file_058=no file_059=no +file_060=no [OTHER_FILES] file_000=no file_001=no @@ -205,6 +207,7 @@ file_056=no file_057=no file_058=no file_059=no +file_060=no [FILE_INFO] file_000=C:\code\bacnet-stack\src\abort.c file_001=C:\code\bacnet-stack\src\bacapp.c @@ -244,28 +247,29 @@ file_034=C:\code\bacnet-stack\src\npdu.c file_035=C:\code\bacnet-stack\src\version.c file_036=apdu.c file_037=C:\code\bacnet-stack\demo\handler\noserv.c -file_038=stdbool.h -file_039=stdint.h -file_040=rs485.h -file_041=mstp.h -file_042=C:\mcc18\h\p18f6720.h -file_043=C:\code\bacnet-stack\include\bits.h -file_044=C:\code\bacnet-stack\include\abort.h -file_045=C:\code\bacnet-stack\include\ai.h -file_046=C:\code\bacnet-stack\include\apdu.h -file_047=C:\code\bacnet-stack\include\bacaddr.h -file_048=C:\code\bacnet-stack\include\bacapp.h -file_049=C:\code\bacnet-stack\include\bacdcode.h -file_050=C:\code\bacnet-stack\include\bacdef.h -file_051=C:\code\bacnet-stack\include\bacenum.h -file_052=C:\code\bacnet-stack\include\bacerror.h -file_053=C:\code\bacnet-stack\include\bacint.h -file_054=C:\code\bacnet-stack\include\bacprop.h -file_055=C:\code\bacnet-stack\include\bacreal.h -file_056=C:\code\bacnet-stack\include\bacstr.h -file_057=C:\code\bacnet-stack\include\bigend.h -file_058=C:\code\bacnet-stack\include\config.h -file_059=18F6720.lkr +file_038=C:\code\bacnet-stack\src\fifo.c +file_039=stdbool.h +file_040=stdint.h +file_041=rs485.h +file_042=mstp.h +file_043=C:\mcc18\h\p18f6720.h +file_044=C:\code\bacnet-stack\include\bits.h +file_045=C:\code\bacnet-stack\include\abort.h +file_046=C:\code\bacnet-stack\include\ai.h +file_047=C:\code\bacnet-stack\include\apdu.h +file_048=C:\code\bacnet-stack\include\bacaddr.h +file_049=C:\code\bacnet-stack\include\bacapp.h +file_050=C:\code\bacnet-stack\include\bacdcode.h +file_051=C:\code\bacnet-stack\include\bacdef.h +file_052=C:\code\bacnet-stack\include\bacenum.h +file_053=C:\code\bacnet-stack\include\bacerror.h +file_054=C:\code\bacnet-stack\include\bacint.h +file_055=C:\code\bacnet-stack\include\bacprop.h +file_056=C:\code\bacnet-stack\include\bacreal.h +file_057=C:\code\bacnet-stack\include\bacstr.h +file_058=C:\code\bacnet-stack\include\bigend.h +file_059=C:\code\bacnet-stack\include\config.h +file_060=18F6720.lkr [SUITE_INFO] suite_guid={5B7D72DD-9861-47BD-9F60-2BE967BF8416} suite_state= diff --git a/bacnet-stack/ports/pic18f6720/BACnet-Server.mcw b/bacnet-stack/ports/pic18f6720/BACnet-Server.mcw index 31711b56591b4bc7ca58ea7c2e8f2f28aa514121..679e31fbaa0bffa439fb6569fc15820053d127d6 100644 GIT binary patch literal 57856 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 rbpFA`CWbY9;S$z~H!(cnz6SilenceTimer = 0; + if (FIFO_Add(&FIFO_Tx, buffer, nbytes)) { + /* disable the receiver */ + PIE3bits.RC2IE = 0; + RCSTA2bits.CREN = 0; + /* enable the transceiver */ + RS485_TX_ENABLE = 1; + RS485_RX_DISABLE = 1; + /* enable the transmitter */ + TXSTA2bits.TXEN = 1; + PIE3bits.TX2IE = 1; + /* reset the silence timer per MSTP spec, sort of */ + mstp_port->SilenceTimer = 0; + } return; } diff --git a/bacnet-stack/src/fifo.c b/bacnet-stack/src/fifo.c index 3e3e216b..df6170ae 100755 --- a/bacnet-stack/src/fifo.c +++ b/bacnet-stack/src/fifo.c @@ -164,8 +164,9 @@ bool FIFO_Add( /* limit the ring to prevent overwriting */ if (FIFO_Available (b, count)) { while (count) { - b->buffer[b->head % b->buffer_len] = data_byte; + b->buffer[b->head % b->buffer_len] = *data_bytes; b->head++; + data_bytes++; count--; } status = true;