Corrected object supported list.

This commit is contained in:
skarg
2007-10-16 22:46:28 +00:00
parent 22c227f326
commit 9ff27e38aa
5 changed files with 22 additions and 6 deletions
+1 -1
View File
@@ -39,7 +39,7 @@
#error Modify the Analog_Input_Name to handle multiple digits
#endif
static float Present_Value[MAX_ANALOG_INPUTS];
float Present_Value[MAX_ANALOG_INPUTS];
/* we simply have 0-n object instances. Yours might be */
/* more complex, and then you need validate that the */
File diff suppressed because one or more lines are too long
+5
View File
@@ -260,6 +260,11 @@ int Device_Encode_Property_APDU(uint8_t * apdu,
/* Note: this is the list of objects that can be in this device,
not a list of objects that this device can access */
bitstring_init(&bit_string);
/* must have the bit string as big as it can be */
for (i = 0; i < MAX_ASHRAE_OBJECT_TYPE; i++) {
/* initialize all the object types to not-supported */
bitstring_set_bit(&bit_string, (uint8_t) i, false);
}
/* FIXME: indicate the objects that YOU support */
bitstring_set_bit(&bit_string, OBJECT_DEVICE, true);
bitstring_set_bit(&bit_string, OBJECT_ANALOG_INPUT, true);
+7
View File
@@ -32,6 +32,8 @@
#include "npdu.h"
#include "txbuf.h"
#include "iam.h"
#include "device.h"
/* For porting to IAR, see:
http://www.avrfreaks.net/wiki/index.php/Documentation:AVR_GCC/IarToAvrgcc*/
@@ -114,13 +116,18 @@ static void NPDU_LED_On(void)
NPDU_Timer = 20;
}
extern float Present_Value[9];
void task_milliseconds(void)
{
static uint16_t counter = 0;
while (Timer_Milliseconds) {
Timer_Milliseconds--;
/* add other millisecond timer tasks here */
RS485_LED_Timers();
NDPU_Timers();
counter++;
Present_Value[0] = counter;
Present_Value[1] = counter;
}
}
+8 -4
View File
@@ -272,19 +272,23 @@ bool RS485_ReceiveError(void)
uint8_t dummy_data;
/* check for framing error */
#if 0
if (BIT_CHECK(UCSR0A,FE0)) {
/* FIXME: how do I clear the error flags? */
BITMASK_CLEAR(UCSR0A,(_BV(FE0) | _BV(DOR0) | _BV(UPE0)));
ReceiveError = true;
}
#endif
/* check for overrun error */
if (BIT_CHECK(UCSR0A,DOR0)) {
ReceiveError = true;
}
if (ReceiveError) {
RS485_LED1_On();
/* flush the receive buffer */
do {
dummy_data = UDR0;
} while (BIT_CHECK(UCSR0A,RXC0));
ReceiveError = true;
}
if (ReceiveError) {
RS485_LED1_On();
}
return ReceiveError;