diff --git a/Makefile b/Makefile index 50a89d3..e82b658 100644 --- a/Makefile +++ b/Makefile @@ -54,6 +54,7 @@ all: clean # $(MAKE) -C zone3.1 $(MAKE) -C zone4 $(MAKE) -C bsp/$(BOARD)/boot + java -jar multizone.jar \ --arch $(BOARD) \ --config bsp/$(BOARD)/multizone.cfg \ diff --git a/bsp/E31/memory.lds b/bsp/E31/memory.lds index e15a10a..b590b0d 100644 --- a/bsp/E31/memory.lds +++ b/bsp/E31/memory.lds @@ -1,5 +1,5 @@ /* Copyright(C) 2020 Hex Five Security, Inc. - All Rights Reserved */ flash = 0x40400000; -itim = 0x08000000; /* 16K */ +itim = 0x01800000; /* 16K */ dtim = 0x80000000; /* 64K */ diff --git a/bsp/E31/memory.ods b/bsp/E31/memory.ods index c5f8e26..3b1c9cf 100644 Binary files a/bsp/E31/memory.ods and b/bsp/E31/memory.ods differ diff --git a/bsp/S51/memory.ods b/bsp/S51/memory.ods index 27eb57e..0c9c59c 100644 Binary files a/bsp/S51/memory.ods and b/bsp/S51/memory.ods differ diff --git a/multizone.jar b/multizone.jar index 63f7783..a34ad41 100644 Binary files a/multizone.jar and b/multizone.jar differ diff --git a/zone3.1/main.c b/zone3.1/main.c index 47075c3..a6b9e57 100644 --- a/zone3.1/main.c +++ b/zone3.1/main.c @@ -45,13 +45,13 @@ static uint32_t spi_rw(const uint32_t cmd){ for (uint32_t i = 1<<31; i != 0; i >>= 1){ + BITSET(GPIO_BASE+GPIO_OUTPUT_VAL, 1 << SPI_TCK); + if (tx_data & i) BITSET(GPIO_BASE+GPIO_OUTPUT_VAL, 1 << SPI_TDO); else BITCLR(GPIO_BASE+GPIO_OUTPUT_VAL, 1 << SPI_TDO); - BITSET(GPIO_BASE+GPIO_OUTPUT_VAL, 1 << SPI_TCK); - BITCLR(GPIO_BASE+GPIO_OUTPUT_VAL, 1 << SPI_TCK); if( GPIO_REG(GPIO_INPUT_VAL) & (1<< SPI_TDI) ) diff --git a/zone3/main.c b/zone3/main.c index 5d4926e..b6e09ce 100644 --- a/zone3/main.c +++ b/zone3/main.c @@ -11,9 +11,9 @@ #define SPI_TDO 9 // out //#define SPI_SYN 8 // out - not used -#define MAN_CMD_TIME 200*RTC_FREQ/1000 // 200ms +#define MAN_CMD_TIME RTC_FREQ/1000*200 // 200ms #define KEEP_ALIVE_TIME 1*RTC_FREQ // 1 sec -#define LED_TIME 20*RTC_FREQ/1000 // 20ms +#define LED_TIME RTC_FREQ/1000*20 // 20ms static uint8_t CRC8(const uint8_t bytes[]){ @@ -40,20 +40,21 @@ static uint32_t spi_rw(const uint32_t cmd){ uint32_t rx_data = 0; - for (uint32_t i = 1<<31; i != 0; i = i>>1){ + for (uint32_t i = 1<<31; i != 0; i >>= 1){ - if (tx_data & i) - GPIO_REG(GPIO_OUTPUT_VAL) |= (1 << SPI_TDO); - else - GPIO_REG(GPIO_OUTPUT_VAL) &= ~(1 << SPI_TDO); + BITSET(GPIO_BASE+GPIO_OUTPUT_VAL, 1 << SPI_TCK); - GPIO_REG(GPIO_OUTPUT_VAL) |= (1 << SPI_TCK); - GPIO_REG(GPIO_OUTPUT_VAL) &= ~(1 << SPI_TCK); + if (tx_data & i) + BITSET(GPIO_BASE+GPIO_OUTPUT_VAL, 1 << SPI_TDO); + else + BITCLR(GPIO_BASE+GPIO_OUTPUT_VAL, 1 << SPI_TDO); - if( GPIO_REG(GPIO_INPUT_VAL) & (1<< SPI_TDI) ) - rx_data |= i; + BITCLR(GPIO_BASE+GPIO_OUTPUT_VAL, 1 << SPI_TCK); - } + if( GPIO_REG(GPIO_INPUT_VAL) & (1<< SPI_TDI) ) + rx_data |= i; + + } return rx_data; } @@ -137,13 +138,13 @@ uint64_t task2(){ // Keep alive 1sec const uint64_t time = MZONE_RDTIME(); // Turn on LED & start LED timer - GPIO_REG(GPIO_OUTPUT_VAL) |= (1<