From 7fde61f849e33c5f7b93e29a8f5b36f8e21661a2 Mon Sep 17 00:00:00 2001 From: Martin Preuss Date: Mon, 28 Oct 2024 23:44:58 +0100 Subject: [PATCH] avr: added device n15. --- avr/devices/n15/n15_boot.asm | 35 +++++++++++++++++++++++++++++++++++ avr/devices/n15/n15_defs.asm | 24 ++++++++++++++++-------- avr/devices/n15/n15_main.asm | 15 ++++++++++++--- devices/nodes/0BUILD | 1 + devices/nodes/aqua_n15.xml | 17 +++++++++++++++++ 5 files changed, 81 insertions(+), 11 deletions(-) create mode 100644 devices/nodes/aqua_n15.xml diff --git a/avr/devices/n15/n15_boot.asm b/avr/devices/n15/n15_boot.asm index dbdfeaf..1994d13 100644 --- a/avr/devices/n15/n15_boot.asm +++ b/avr/devices/n15/n15_boot.asm @@ -123,5 +123,40 @@ main: .include "modules/flash/flash_ready.asm" +#if 0 +debugStop: + cli + sbi LED_SIMPLE_DDR, LED_SIMPLE_PINNUM ; out + cbi LED_SIMPLE_PORT, LED_SIMPLE_PINNUM ; on + + cbi COM_ATTN_DDR, COM_ATTN_PIN ; set ATTN port as input + cbi COM_ATTN_OUTPUT, COM_ATTN_PIN ; disable internal pullup for ATTN + + ldi r18, 0 +test_loop1: + ldi r16, 100 +test_loop2: + ldi r17, 100 +test_loop3: + Utils_WaitNanoSecs 10000, 0, r22 + dec r17 + brne test_loop3 + dec r16 + brne test_loop2 + sbi LED_SIMPLE_PORTIN, LED_SIMPLE_PINNUM ; toggle + inc r18 + mov r19, r18 + andi r19, 1 + brne test1 + sbi COM_ATTN_DDR, COM_ATTN_PIN + cbi COM_ATTN_OUTPUT, COM_ATTN_PIN + rjmp test_loop1 +test1: + cbi COM_ATTN_DDR, COM_ATTN_PIN + cbi COM_ATTN_OUTPUT, COM_ATTN_PIN + + rjmp test_loop1 +#endif + diff --git a/avr/devices/n15/n15_defs.asm b/avr/devices/n15/n15_defs.asm index 4db6831..8a14660 100644 --- a/avr/devices/n15/n15_defs.asm +++ b/avr/devices/n15/n15_defs.asm @@ -39,6 +39,7 @@ .equ LED_SIMPLE_OFFTIME = 30 .equ LED_SIMPLE_DDR = DDRA .equ LED_SIMPLE_PORT = PORTA +.equ LED_SIMPLE_PORTIN = PINA .equ LED_SIMPLE_PINNUM = PORTA3 @@ -49,14 +50,10 @@ .equ COM_BIT_LENGTH = 52000 ; 104000ns=9600, 52000ns=19200, 26000ns=38400 .equ COM_HALFBIT_LENGTH = 26000 ; see https://de.wikipedia.org/wiki/Universal_Asynchronous_Receiver_Transmitter -.equ COM_TXD_DDR = DDRA -.equ COM_TXD_DATA = PORTA -.equ COM_TXD_PIN = PORTA1 - -.equ COM_RXD_DDR = DDRA -.equ COM_RXD_INPUT = PINA -.equ COM_RXD_OUTPUT = PORTA -.equ COM_RXD_PIN = PORTA1 +.equ COM_DATA_DDR = DDRA +.equ COM_DATA_INPUT = PINA +.equ COM_DATA_OUTPUT = PORTA +.equ COM_DATA_PIN = PORTA1 .equ COM_ATTN_DDR = DDRA .equ COM_ATTN_INPUT = PINA @@ -162,3 +159,14 @@ +; --------------------------------------------------------------------------- +; Motion Sensor +; + +.equ MOTION_DDR = DDRB +.equ MOTION_INPUT = PINB +.equ MOTION_OUTPUT = PORTB +.equ MOTION_PIN = PORTB1 + + + diff --git a/avr/devices/n15/n15_main.asm b/avr/devices/n15/n15_main.asm index dfa0124..8cba870 100644 --- a/avr/devices/n15/n15_main.asm +++ b/avr/devices/n15/n15_main.asm @@ -61,13 +61,13 @@ #define MODULES_TWI_MASTER ;#define MODULES_LCD #define LCD_MINIMAL_FONT -#define MODULES_SI7021 +;#define MODULES_SI7021 #define MODULES_STATS ;#define MODULES_CNY70 -#define MODULES_REED +;#define MODULES_REED ;#define MODULES_OWI_MASTER ;#define MODULES_DS18B20 - +#define MODULES_MOTION ; --------------------------------------------------------------------------- ; defines for values @@ -79,6 +79,7 @@ .equ VALUE_ID_REED1 = 0x04 .equ VALUE_ID_REED2 = 0x05 .equ VALUE_ID_DS18B20_TEMP = 0x06 +.equ VALUE_ID_MOTION = 0x07 .equ VALUE_ID_REED_CONF = 0x81 @@ -196,6 +197,10 @@ firmwareStart: rjmp main .include "modules/reed/main.asm" #endif +#ifdef MODULES_MOTION + .include "modules/motion/main.asm" +#endif + ; *************************************************************************** @@ -415,6 +420,10 @@ onEvery100ms: rcall REED_Every100ms #endif +#ifdef MODULES_MOTION + rcall Motion_Every100ms +#endif + ret diff --git a/devices/nodes/0BUILD b/devices/nodes/0BUILD index 31d668d..c84d956 100644 --- a/devices/nodes/0BUILD +++ b/devices/nodes/0BUILD @@ -6,6 +6,7 @@ aqua_n11.xml aqua_n12.xml aqua_n14.xml + aqua_n15.xml diff --git a/devices/nodes/aqua_n15.xml b/devices/nodes/aqua_n15.xml new file mode 100644 index 0000000..bc843f8 --- /dev/null +++ b/devices/nodes/aqua_n15.xml @@ -0,0 +1,17 @@ + + + AQUA + N + 15 + + + + + + + + + + + +