diff --git a/avr/devices/n11/n11_boot.asm b/avr/devices/n11/n11_boot.asm index aa81f1c..a78d5d5 100644 --- a/avr/devices/n11/n11_boot.asm +++ b/avr/devices/n11/n11_boot.asm @@ -4,22 +4,9 @@ ; This is for the maintenance system (i.e. the flash loader). ; ; All definitions and changes should go into this file. -; -; -; AtTiny84 -; -------- -; VCC 1 14 GND -; PB0 2 13 PA0 -; PB1 3 12 PA1 COM-DATA -; /RESET PB3 4 11 PA2 -; KEY1 PB2 5 10 PA3 LED -; COM_ATTN PA7 6 9 PA4 -; PA6 7 8 PA5 -; -------- -; ; *************************************************************************** - +.equ clock=1000000 ; Define the clock frequency .nolist .include "include/tn84def.inc" ; Define device ATtiny84 @@ -36,9 +23,6 @@ ; --------------------------------------------------------------------------- ; generic -.equ clock=1000000 ; Define the clock frequency - - .include "common/utils_wait.asm" .include "modules/com2/defs.asm" .include "modules/comproto/defs.asm" @@ -48,35 +32,14 @@ ; --------------------------------------------------------------------------- ; firmware settings -#define FW_TYPE AQHOME_FW_TYPE_ATT84_BASE -#define FW_VERSION 0x0001 - - -#define BASE_SYSTEM -#define WITH_FLASH +.equ FIRMWARE_VERSION_MAJOR = 0 +.equ FIRMWARE_VERSION_MINOR = 0 +.equ FIRMWARE_VERSION_PATCHLEVEL = 1 ; --------------------------------------------------------------------------- -; COM module - -.equ COM_BIT_LENGTH = 52000 ; 104000=9600, 52000=19200, 26000=38400 - -.equ COM_DDR_DATA = DDRA -.equ COM_PORT_DATA = PORTA -.equ COM_PIN_DATA = PINA -.equ COM_PINNUM_DATA = PORTA1 - -.equ COM_DDR_ATTN = DDRA -.equ COM_PORT_ATTN = PORTA -.equ COM_PIN_ATTN = PINA -.equ COM_PINNUM_ATTN = PORTA7 - -.equ COM_IRQ_ADDR_ATTN = PCMSK0 -.equ COM_IRQ_BIT_ATTN = 7 ; bit 7 in PCMSK0 -.equ COM_IRQ_GIFR_ATTN = PCIF0 -.equ COM_IRQ_GIMSK_ATTN = PCIE0 - +; LED .equ LED_DDR = DDRA .equ LED_PORT = PORTA @@ -114,10 +77,12 @@ reti ; USI_OVF -devInfoBlock: +devInfoBlock: ; 12 bytes devInfoManufacturer: .db 'A', 'Q', 'U', 'A' devInfoId: .db 'N', 0 devInfoVersion: .db 1, 0 ; version, revision +firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR + .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL firmwareStart: rjmp main ; will be overwritten when flashing diff --git a/avr/devices/n11/n11_defs.asm b/avr/devices/n11/n11_defs.asm index 7404c12..95cd97d 100644 --- a/avr/devices/n11/n11_defs.asm +++ b/avr/devices/n11/n11_defs.asm @@ -8,6 +8,136 @@ ; *************************************************************************** +; *************************************************************************** +; +; AtTiny84 +; -------- +; VCC 1 14 GND +; PB0 2 13 PA0 REED_OUT +; PB1 3 12 PA1 COM-DATA +; /RESET PB3 4 11 PA2 REED_IN1 +; [KEY1] PB2 5 10 PA3 LED +; COM_ATTN PA7 6 9 PA4 TWI-SCL +; TWI-SDA PA6 7 8 PA5 REED_IN2 +; -------- +; +; *************************************************************************** + + .equ BOOTLOADER_ADDR = 0xd00 +.equ FIRMWARE_VARIANT_BOOT = 0 +.equ FIRMWARE_VARIANT_TEMP_WINDOW = 1 + + + + +; --------------------------------------------------------------------------- +; LED module + +.equ LED_SIMPLE_ONTIME = 3 +.equ LED_SIMPLE_OFFTIME = 30 +.equ LED_SIMPLE_DDR = DDRA +.equ LED_SIMPLE_PORT = PORTA +.equ LED_SIMPLE_PINNUM = PORTA7 + + + +; --------------------------------------------------------------------------- +; COM module + +.equ COM_BIT_LENGTH = 52000 ; 104000=9600, 52000=19200, 26000=38400 + +.equ COM_DDR_DATA = DDRA +.equ COM_PORT_DATA = PORTA +.equ COM_PIN_DATA = PINA +.equ COM_PINNUM_DATA = PORTA1 + +.equ COM_DDR_ATTN = DDRA +.equ COM_PORT_ATTN = PORTA +.equ COM_PIN_ATTN = PINA +.equ COM_PINNUM_ATTN = PORTA7 + +.equ COM_IRQ_ADDR_ATTN = PCMSK0 +.equ COM_IRQ_BIT_ATTN = 7 ; bit 7 in PCMSK0 +.equ COM_IRQ_GIFR_ATTN = PCIF0 +.equ COM_IRQ_GIMSK_ATTN = PCIE0 + + + +; --------------------------------------------------------------------------- +; TWI master module + +.equ TWI_DDR_SCL = DDRA +.equ TWI_PORT_SCL = PORTA +.equ TWI_PIN_SCL = PINA +.equ TWI_PINNUM_SCL = PORTA4 + +.equ TWI_DDR_SDA = DDRA +.equ TWI_PORT_SDA = PORTA +.equ TWI_PIN_SDA = PINA +.equ TWI_PINNUM_SDA = PORTA6 + + + +; --------------------------------------------------------------------------- +; LCD module + +.equ LCD_TWI_ADDRESS = 0x3c +#define LCD_MINIMAL_FONT + + + +; --------------------------------------------------------------------------- +; BMP 280 + +.equ BMP280_ADDR = 0x76 + + + +; --------------------------------------------------------------------------- +; SI 7021 + +.equ SI7021_ADDR = 0x40 + + + +; --------------------------------------------------------------------------- +; ADC/CNY70 + + +.equ CNY70_PORT_LED = PORTB1 +.equ CNY70_DDR_LED = DDRB +.equ CNY70_PINNUM_LED = PORTB1 + +.equ CNY70_PORT_ADC = PORTA5 ; adc5 +.equ CNY70_DDR_ADC = DDRB +.equ CNY70_PINNUM_ADC = PORTA5 +.equ CNY70_MUX_ADC = MUX5 +.equ CNY70_ADCSRB_ADC = ADC5D + + + + +; --------------------------------------------------------------------------- +; Reed +; + +.equ REEDOUT_DDR = DDRA +.equ REEDOUT_PORT = PORTA +.equ REEDOUT_PIN = PINA +.equ REEDOUT_PINNUM = PORTA0 + +.equ REED1_DDR = DDRA +.equ REED1_PORT = PORTA +.equ REED1_PIN = PINA +.equ REED1_PINNUM = PORTA2 + +.equ REED2_DDR = DDRA +.equ REED2_PORT = PORTA +.equ REED2_PIN = PINA +.equ REED2_PINNUM = PORTA5 + + + diff --git a/avr/devices/n11/n11_main.asm b/avr/devices/n11/n11_main.asm index b436cd7..ae83c7f 100644 --- a/avr/devices/n11/n11_main.asm +++ b/avr/devices/n11/n11_main.asm @@ -18,20 +18,12 @@ ; All definitions and changes should go into this file. ; ; -; AtTiny84 -; -------- -; VCC 1 14 GND -; PB0 2 13 PA0 REED_OUT -; PB1 3 12 PA1 COM-DATA -; /RESET PB3 4 11 PA2 REED_IN1 -; [KEY1] PB2 5 10 PA3 LED -; COM_ATTN PA7 6 9 PA4 TWI-SCL -; TWI-SDA PA6 7 8 PA5 REED_IN2 -; -------- -; ; *************************************************************************** +.equ clock=1000000 ; Define the clock frequency + + .nolist .include "include/tn84def.inc" ; Define device ATtiny84 @@ -48,7 +40,6 @@ ; --------------------------------------------------------------------------- ; generic -.equ clock=1000000 ; Define the clock frequency .include "common/utils_wait.asm" @@ -56,6 +47,11 @@ ; --------------------------------------------------------------------------- ; firmware settings including list of modules used +.equ FIRMWARE_VERSION_MAJOR = 0 +.equ FIRMWARE_VERSION_MINOR = 0 +.equ FIRMWARE_VERSION_PATCHLEVEL = 1 + + #define MODULES_TIMER #define MODULES_COM #define MODULES_COM_WITH_ADDR_PROTO @@ -70,10 +66,7 @@ ; --------------------------------------------------------------------------- -; defines for modules - -#define LCD_MINIMAL_FONT - +; defines for values .equ VALUE_ID_TEMP1 = 0x01 .equ VALUE_ID_HUM1 = 0x02 @@ -83,102 +76,6 @@ .equ VALUE_ID_REED2 = 0x05 -; --------------------------------------------------------------------------- -; COM module - -.equ COM_BIT_LENGTH = 52000 ; 104000=9600, 52000=19200, 26000=38400 - -.equ COM_DDR_DATA = DDRA -.equ COM_PORT_DATA = PORTA -.equ COM_PIN_DATA = PINA -.equ COM_PINNUM_DATA = PORTA1 - -.equ COM_DDR_ATTN = DDRA -.equ COM_PORT_ATTN = PORTA -.equ COM_PIN_ATTN = PINA -.equ COM_PINNUM_ATTN = PORTA7 - -.equ COM_IRQ_ADDR_ATTN = PCMSK0 -.equ COM_IRQ_BIT_ATTN = 7 ; bit 7 in PCMSK0 -.equ COM_IRQ_GIFR_ATTN = PCIF0 -.equ COM_IRQ_GIMSK_ATTN = PCIE0 - - - -; --------------------------------------------------------------------------- -; TWI master module - -.equ TWI_DDR_SCL = DDRA -.equ TWI_PORT_SCL = PORTA -.equ TWI_PIN_SCL = PINA -.equ TWI_PINNUM_SCL = PORTA4 - -.equ TWI_DDR_SDA = DDRA -.equ TWI_PORT_SDA = PORTA -.equ TWI_PIN_SDA = PINA -.equ TWI_PINNUM_SDA = PORTA6 - - - -; --------------------------------------------------------------------------- -; LCD module - -.equ LCD_TWI_ADDRESS = 0x3c - - - -; --------------------------------------------------------------------------- -; BMP 280 - -.equ BMP280_ADDR = 0x76 - - - -; --------------------------------------------------------------------------- -; SI 7021 - -.equ SI7021_ADDR = 0x40 - - - -; --------------------------------------------------------------------------- -; ADC/CNY70 - - -.equ CNY70_PORT_LED = PORTB1 -.equ CNY70_DDR_LED = DDRB -.equ CNY70_PINNUM_LED = PORTB1 - -.equ CNY70_PORT_ADC = PORTA5 ; adc5 -.equ CNY70_DDR_ADC = DDRB -.equ CNY70_PINNUM_ADC = PORTA5 -.equ CNY70_MUX_ADC = MUX5 -.equ CNY70_ADCSRB_ADC = ADC5D - - - - -; --------------------------------------------------------------------------- -; Reed -; - -.equ REEDOUT_DDR = DDRA -.equ REEDOUT_PORT = PORTA -.equ REEDOUT_PIN = PINA -.equ REEDOUT_PINNUM = PORTA0 - -.equ REED1_DDR = DDRA -.equ REED1_PORT = PORTA -.equ REED1_PIN = PINA -.equ REED1_PINNUM = PORTA2 - -.equ REED2_DDR = DDRA -.equ REED2_PORT = PORTA -.equ REED2_PIN = PINA -.equ REED2_PINNUM = PORTA5 - - - ; *************************************************************************** ; code segment @@ -215,10 +112,12 @@ reti ; USI_OVF -devInfoBlock: +devInfoBlock: ; 12 bytes devInfoManufacturer: .db 'A', 'Q', 'U', 'A' devInfoId: .db 'N', 0 devInfoVersion: .db 1, 0 ; version, revision +firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR + .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL firmwareStart: rjmp main @@ -238,6 +137,9 @@ firmwareStart: rjmp main #ifdef MODULES_LED .include "modules/led/main.asm" #endif +#ifdef MODULES_LED_SIMPLE +.include "modules/led_simple/main.asm" +#endif #ifdef MODULES_COM .include "modules/com2/defs.asm" .include "modules/com2/main.asm" @@ -418,6 +320,10 @@ onEvery100ms: rcall Led_Tick #endif +#ifdef MODULES_LED_SIMPLE + rcall LedSimple_Every100ms +#endif + #ifdef MODULES_CNY70 rcall CNY70_Every100ms #endif diff --git a/avr/devices/n12/n12_boot.asm b/avr/devices/n12/n12_boot.asm index c5fd806..0c5800e 100644 --- a/avr/devices/n12/n12_boot.asm +++ b/avr/devices/n12/n12_boot.asm @@ -8,7 +8,7 @@ ; ; *************************************************************************** - +.equ clock=1000000 ; Define the clock frequency .nolist .include "include/tn84def.inc" ; Define device ATtiny84 @@ -25,47 +25,21 @@ ; --------------------------------------------------------------------------- ; generic -.equ clock=1000000 ; Define the clock frequency - - .include "common/utils_wait.asm" .include "modules/com2/defs.asm" .include "modules/comproto/defs.asm" - ; --------------------------------------------------------------------------- ; firmware settings -#define FW_TYPE AQHOME_FW_TYPE_ATT84_BASE -#define FW_VERSION 0x0001 - - -#define BASE_SYSTEM -#define WITH_FLASH - +.equ FIRMWARE_VERSION_MAJOR = 0 +.equ FIRMWARE_VERSION_MINOR = 0 +.equ FIRMWARE_VERSION_PATCHLEVEL = 1 ; --------------------------------------------------------------------------- -; COM module - -.equ COM_BIT_LENGTH = 52000 ; 104000=9600, 52000=19200, 26000=38400 - -.equ COM_DDR_DATA = DDRA -.equ COM_PORT_DATA = PORTA -.equ COM_PIN_DATA = PINA -.equ COM_PINNUM_DATA = PORTA0 - -.equ COM_DDR_ATTN = DDRA -.equ COM_PORT_ATTN = PORTA -.equ COM_PIN_ATTN = PINA -.equ COM_PINNUM_ATTN = PORTA1 - -.equ COM_IRQ_ADDR_ATTN = PCMSK0 -.equ COM_IRQ_BIT_ATTN = 1 ; bit 1 in PCMSK0 -.equ COM_IRQ_GIFR_ATTN = PCIF0 -.equ COM_IRQ_GIMSK_ATTN = PCIE0 - +; LED .equ LED_DDR = DDRA .equ LED_PORT = PORTA @@ -73,6 +47,7 @@ .equ LED_PINNUM = PORTA7 + ; *************************************************************************** ; code segment @@ -103,10 +78,12 @@ reti ; USI_OVF -devInfoBlock: +devInfoBlock: ; 12 bytes devInfoManufacturer: .db 'A', 'Q', 'U', 'A' devInfoId: .db 'N', 0 devInfoVersion: .db 11, 0 ; version, revision +firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR + .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL firmwareStart: rjmp main ; will be overwritten when flashing diff --git a/avr/devices/n12/n12_defs.asm b/avr/devices/n12/n12_defs.asm index 4b864db..758ba45 100644 --- a/avr/devices/n12/n12_defs.asm +++ b/avr/devices/n12/n12_defs.asm @@ -26,3 +26,114 @@ .equ BOOTLOADER_ADDR = 0xd00 + +.equ FIRMWARE_VARIANT_BOOT = 0 +.equ FIRMWARE_VARIANT_TEMP_WINDOW = 1 + + +; --------------------------------------------------------------------------- +; LED module + +.equ LED_SIMPLE_ONTIME = 3 +.equ LED_SIMPLE_OFFTIME = 30 +.equ LED_SIMPLE_DDR = DDRA +.equ LED_SIMPLE_PORT = PORTA +.equ LED_SIMPLE_PINNUM = PORTA7 + + + +; --------------------------------------------------------------------------- +; COM module + +.equ COM_BIT_LENGTH = 52000 ; 104000=9600, 52000=19200, 26000=38400 + +.equ COM_DDR_DATA = DDRA +.equ COM_PORT_DATA = PORTA +.equ COM_PIN_DATA = PINA +.equ COM_PINNUM_DATA = PORTA1 + +.equ COM_DDR_ATTN = DDRA +.equ COM_PORT_ATTN = PORTA +.equ COM_PIN_ATTN = PINA +.equ COM_PINNUM_ATTN = PORTA7 + +.equ COM_IRQ_ADDR_ATTN = PCMSK0 +.equ COM_IRQ_BIT_ATTN = 7 ; bit 7 in PCMSK0 +.equ COM_IRQ_GIFR_ATTN = PCIF0 +.equ COM_IRQ_GIMSK_ATTN = PCIE0 + + +; --------------------------------------------------------------------------- +; TWI master module + +.equ TWI_DDR_SCL = DDRA +.equ TWI_PORT_SCL = PORTA +.equ TWI_PIN_SCL = PINA +.equ TWI_PINNUM_SCL = PORTA4 + +.equ TWI_DDR_SDA = DDRA +.equ TWI_PORT_SDA = PORTA +.equ TWI_PIN_SDA = PINA +.equ TWI_PINNUM_SDA = PORTA6 + + +; --------------------------------------------------------------------------- +; LCD module + +.equ LCD_TWI_ADDRESS = 0x3c +#define LCD_MINIMAL_FONT + + + +; --------------------------------------------------------------------------- +; BMP 280 + +.equ BMP280_ADDR = 0x76 + + + +; --------------------------------------------------------------------------- +; SI 7021 + +.equ SI7021_ADDR = 0x40 + + + +; --------------------------------------------------------------------------- +; ADC/CNY70 + + +.equ CNY70_PORT_LED = PORTB1 +.equ CNY70_DDR_LED = DDRB +.equ CNY70_PINNUM_LED = PORTB1 + +.equ CNY70_PORT_ADC = PORTA5 ; adc5 +.equ CNY70_DDR_ADC = DDRB +.equ CNY70_PINNUM_ADC = PORTA5 +.equ CNY70_MUX_ADC = MUX5 +.equ CNY70_ADCSRB_ADC = ADC5D + + + + +; --------------------------------------------------------------------------- +; Reed +; + +.equ REEDOUT_DDR = DDRA +.equ REEDOUT_PORT = PORTA +.equ REEDOUT_PIN = PINA +.equ REEDOUT_PINNUM = PORTA0 + +.equ REED1_DDR = DDRA +.equ REED1_PORT = PORTA +.equ REED1_PIN = PINA +.equ REED1_PINNUM = PORTA2 + +.equ REED2_DDR = DDRA +.equ REED2_PORT = PORTA +.equ REED2_PIN = PINA +.equ REED2_PINNUM = PORTA5 + + + diff --git a/avr/devices/n12/n12_main.asm b/avr/devices/n12/n12_main.asm index f50cd51..1109418 100644 --- a/avr/devices/n12/n12_main.asm +++ b/avr/devices/n12/n12_main.asm @@ -8,29 +8,14 @@ ; *************************************************************************** - - ; *************************************************************************** ; Source file for temperature sensor node on AtTiny 84 ; ; This is for the full system (i.e. not the boot loader). -; -; All definitions and changes should go into this file. -; -; -; AtTiny84 -; -------- -; VCC 1 14 GND -; PB0 2 13 PA0 REED_OUT -; PB1 3 12 PA1 COM-DATA -; /RESET PB3 4 11 PA2 REED_IN1 -; [KEY1] PB2 5 10 PA3 LED -; COM_ATTN PA7 6 9 PA4 TWI-SCL -; TWI-SDA PA6 7 8 PA5 REED_IN2 -; -------- -; ; *************************************************************************** +.equ clock=1000000 ; Define the clock frequency + .nolist @@ -39,27 +24,26 @@ .include "n12_defs.asm" .include "defs.asm" +.include "common/utils_wait.asm" ; wait macro ; *************************************************************************** ; defines -; --------------------------------------------------------------------------- -; generic - -.equ clock=1000000 ; Define the clock frequency - -.include "common/utils_wait.asm" - - ; --------------------------------------------------------------------------- ; firmware settings including list of modules used +.equ FIRMWARE_VERSION_MAJOR = 0 +.equ FIRMWARE_VERSION_MINOR = 0 +.equ FIRMWARE_VERSION_PATCHLEVEL = 1 + + #define MODULES_TIMER #define MODULES_COM #define MODULES_COM_WITH_ADDR_PROTO -#define MODULES_LED +;#define MODULES_LED +#define MODULES_LED_SIMPLE #define MODULES_TWI_MASTER ;#define MODULES_LCD #define MODULES_SI7021 @@ -71,9 +55,6 @@ ; --------------------------------------------------------------------------- ; defines for modules -#define LCD_MINIMAL_FONT - - .equ VALUE_ID_TEMP1 = 0x01 .equ VALUE_ID_HUM1 = 0x02 @@ -82,102 +63,6 @@ .equ VALUE_ID_REED2 = 0x05 -; --------------------------------------------------------------------------- -; COM module - -.equ COM_BIT_LENGTH = 52000 ; 104000=9600, 52000=19200, 26000=38400 - -.equ COM_DDR_DATA = DDRA -.equ COM_PORT_DATA = PORTA -.equ COM_PIN_DATA = PINA -.equ COM_PINNUM_DATA = PORTA1 - -.equ COM_DDR_ATTN = DDRA -.equ COM_PORT_ATTN = PORTA -.equ COM_PIN_ATTN = PINA -.equ COM_PINNUM_ATTN = PORTA7 - -.equ COM_IRQ_ADDR_ATTN = PCMSK0 -.equ COM_IRQ_BIT_ATTN = 7 ; bit 7 in PCMSK0 -.equ COM_IRQ_GIFR_ATTN = PCIF0 -.equ COM_IRQ_GIMSK_ATTN = PCIE0 - - - -; --------------------------------------------------------------------------- -; TWI master module - -.equ TWI_DDR_SCL = DDRA -.equ TWI_PORT_SCL = PORTA -.equ TWI_PIN_SCL = PINA -.equ TWI_PINNUM_SCL = PORTA4 - -.equ TWI_DDR_SDA = DDRA -.equ TWI_PORT_SDA = PORTA -.equ TWI_PIN_SDA = PINA -.equ TWI_PINNUM_SDA = PORTA6 - - - -; --------------------------------------------------------------------------- -; LCD module - -.equ LCD_TWI_ADDRESS = 0x3c - - - -; --------------------------------------------------------------------------- -; BMP 280 - -.equ BMP280_ADDR = 0x76 - - - -; --------------------------------------------------------------------------- -; SI 7021 - -.equ SI7021_ADDR = 0x40 - - - -; --------------------------------------------------------------------------- -; ADC/CNY70 - - -.equ CNY70_PORT_LED = PORTB1 -.equ CNY70_DDR_LED = DDRB -.equ CNY70_PINNUM_LED = PORTB1 - -.equ CNY70_PORT_ADC = PORTA5 ; adc5 -.equ CNY70_DDR_ADC = DDRB -.equ CNY70_PINNUM_ADC = PORTA5 -.equ CNY70_MUX_ADC = MUX5 -.equ CNY70_ADCSRB_ADC = ADC5D - - - - -; --------------------------------------------------------------------------- -; Reed -; - -.equ REEDOUT_DDR = DDRA -.equ REEDOUT_PORT = PORTA -.equ REEDOUT_PIN = PINA -.equ REEDOUT_PINNUM = PORTA0 - -.equ REED1_DDR = DDRA -.equ REED1_PORT = PORTA -.equ REED1_PIN = PINA -.equ REED1_PINNUM = PORTA2 - -.equ REED2_DDR = DDRA -.equ REED2_PORT = PORTA -.equ REED2_PIN = PINA -.equ REED2_PINNUM = PORTA5 - - - ; *************************************************************************** ; code segment @@ -214,10 +99,12 @@ reti ; USI_OVF -devInfoBlock: +devInfoBlock: ; 12 bytes devInfoManufacturer: .db 'A', 'Q', 'U', 'A' devInfoId: .db 'N', 0 devInfoVersion: .db 12, 0 ; version, revision +firmwareVersion: .db FIRMWARE_VARIANT_TEMP_WINDOW, FIRMWARE_VERSION_MAJOR + .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL firmwareStart: rjmp main @@ -237,6 +124,9 @@ firmwareStart: rjmp main #ifdef MODULES_LED .include "modules/led/main.asm" #endif +#ifdef MODULES_LED_SIMPLE +.include "modules/led_simple/main.asm" +#endif #ifdef MODULES_COM .include "modules/com2/defs.asm" .include "modules/com2/main.asm" @@ -417,6 +307,11 @@ onEvery100ms: rcall Led_Tick #endif +#ifdef MODULES_LED_SIMPLE + rcall LedSimple_Every100ms +#endif + + #ifdef MODULES_CNY70 rcall CNY70_Every100ms #endif diff --git a/avr/main.asm b/avr/main.asm index 59b976e..64b8572 100644 --- a/avr/main.asm +++ b/avr/main.asm @@ -8,18 +8,6 @@ ; *************************************************************************** -; *************************************************************************** -; data in SRAM - -.dseg - - -#ifdef MODULES_LED - ledA3Sram: .byte LED_SRAM_SIZE -#endif - - - ; *************************************************************************** ; code diff --git a/avr/modules/led/main.asm b/avr/modules/led/main.asm index 3195aa4..7af0e0b 100644 --- a/avr/modules/led/main.asm +++ b/avr/modules/led/main.asm @@ -26,6 +26,15 @@ +; *************************************************************************** +; data + +.dseg + +ledA3Sram: .byte LED_SRAM_SIZE + + + ; ***************************************************************************