avr: adapted to latest changes in COM2 module (using uartBitbang)

This commit is contained in:
Martin Preuss
2024-10-25 00:15:24 +02:00
parent e232b4adbf
commit 3546c93d23
20 changed files with 174 additions and 66 deletions

View File

@@ -104,9 +104,9 @@ main:
; ***************************************************************************
; includes
.include "modules/com2/lowlevel.asm"
.include "modules/uart_bitbang/bytelevel.asm"
.include "modules/uart_bitbang/packetlevel.asm"
.include "modules/com2/crc.asm"
.include "modules/com2/packets.asm"
.include "common/crc8.asm"
.include "common/utils_wait_fixed.asm"
.include "common/utils_copy_from_flash.asm"

View File

@@ -50,15 +50,19 @@
.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_DDR_DATA = DDRA
.equ COM_PORT_DATA = PORTA
.equ COM_PIN_DATA = PINA
.equ COM_PINNUM_DATA = PORTA1
.equ COM_TXD_DDR = DDRA
.equ COM_TXD_DATA = PORTA
.equ COM_TXD_PIN = PORTA1
.equ COM_DDR_ATTN = DDRA
.equ COM_PORT_ATTN = PORTA
.equ COM_PIN_ATTN = PINA
.equ COM_PINNUM_ATTN = PORTA7
.equ COM_RXD_DDR = DDRA
.equ COM_RXD_INPUT = PINA
.equ COM_RXD_OUTPUT = PORTA
.equ COM_RXD_PIN = PORTA1
.equ COM_ATTN_DDR = DDRA
.equ COM_ATTN_INPUT = PINA
.equ COM_ATTN_OUTPUT = PORTA
.equ COM_ATTN_PIN = PORTA7
.equ COM_IRQ_ADDR_ATTN = PCMSK0
.equ COM_IRQ_BIT_ATTN = 7 ; bit 7 in PCMSK0

View File

@@ -93,7 +93,7 @@
; rjmp main ; Reset vector
rjmp BOOTLOADER_ADDR ; Reset vector ; use this for flashed system
reti ; EXT_INT0
rjmp com2IsrPcint0 ; PCI0
rjmp uartBitbangIsrPcint0 ; PCI0
reti ; PCI1
reti ; WATCHDOG
reti ; ICP1
@@ -143,6 +143,11 @@ firmwareStart: rjmp main
#ifdef MODULES_COM
.include "modules/com2/defs.asm"
.include "modules/com2/main.asm"
.include "modules/com2/buffer.asm"
.include "modules/uart_bitbang/defs.asm"
.include "modules/uart_bitbang/main.asm"
.include "modules/uart_bitbang/bytelevel.asm"
.include "modules/uart_bitbang/packetlevel.asm"
#ifdef MODULES_COM_WITH_ADDR_PROTO
.include "modules/comproto/defs.asm"
.include "modules/comproto/main.asm"

View File

@@ -104,9 +104,9 @@ main:
; ***************************************************************************
; includes
.include "modules/com2/lowlevel.asm"
.include "modules/uart_bitbang/bytelevel.asm"
.include "modules/uart_bitbang/packetlevel.asm"
.include "modules/com2/crc.asm"
.include "modules/com2/packets.asm"
.include "common/crc8.asm"
.include "common/utils_wait_fixed.asm"
.include "common/utils_copy_from_flash.asm"

View File

@@ -50,15 +50,19 @@
.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_DDR_DATA = DDRA
.equ COM_PORT_DATA = PORTA
.equ COM_PIN_DATA = PINA
.equ COM_PINNUM_DATA = PORTA1
.equ COM_TXD_DDR = DDRA
.equ COM_TXD_DATA = PORTA
.equ COM_TXD_PIN = PORTA1
.equ COM_DDR_ATTN = DDRA
.equ COM_PORT_ATTN = PORTA
.equ COM_PIN_ATTN = PINA
.equ COM_PINNUM_ATTN = PORTA7
.equ COM_RXD_DDR = DDRA
.equ COM_RXD_INPUT = PINA
.equ COM_RXD_OUTPUT = PORTA
.equ COM_RXD_PIN = PORTA1
.equ COM_ATTN_DDR = DDRA
.equ COM_ATTN_INPUT = PINA
.equ COM_ATTN_OUTPUT = PORTA
.equ COM_ATTN_PIN = PORTA7
.equ COM_IRQ_ADDR_ATTN = PCMSK0
.equ COM_IRQ_BIT_ATTN = PCINT7 ; bit 7 in PCMSK0

View File

@@ -93,7 +93,7 @@
; rjmp main ; Reset vector
rjmp BOOTLOADER_ADDR ; Reset vector ; use this for flashed system
reti ; EXT_INT0
rjmp com2IsrPcint0 ; PCI0
rjmp uartBitbangIsrPcint0 ; PCI0
reti ; PCI1
reti ; WATCHDOG
reti ; ICP1
@@ -143,6 +143,11 @@ firmwareStart: rjmp main
#ifdef MODULES_COM
.include "modules/com2/defs.asm"
.include "modules/com2/main.asm"
.include "modules/com2/buffer.asm"
.include "modules/uart_bitbang/defs.asm"
.include "modules/uart_bitbang/main.asm"
.include "modules/uart_bitbang/bytelevel.asm"
.include "modules/uart_bitbang/packetlevel.asm"
#ifdef MODULES_COM_WITH_ADDR_PROTO
.include "modules/comproto/defs.asm"
.include "modules/comproto/main.asm"

View File

@@ -104,9 +104,9 @@ main:
; ***************************************************************************
; includes
.include "modules/com2/lowlevel.asm"
.include "modules/uart_bitbang/bytelevel.asm"
.include "modules/uart_bitbang/packetlevel.asm"
.include "modules/com2/crc.asm"
.include "modules/com2/packets.asm"
.include "common/crc8.asm"
.include "common/utils_wait_fixed.asm"
.include "common/utils_copy_from_flash.asm"

View File

@@ -48,15 +48,20 @@
.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_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_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_ATTN_DDR = DDRA
.equ COM_ATTN_INPUT = PINA
.equ COM_ATTN_OUTPUT = PORTA
.equ COM_ATTN_PIN = PORTA7
.equ COM_IRQ_ADDR_ATTN = PCMSK0
.equ COM_IRQ_BIT_ATTN = PCINT7 ; bit 7 in PCMSK0

View File

@@ -98,7 +98,7 @@
; rjmp main ; Reset vector
rjmp BOOTLOADER_ADDR ; Reset vector ; use this for flashed system
reti ; EXT_INT0
rjmp com2IsrPcint0 ; PCI0
rjmp uartBitbangIsrPcint0 ; PCI0
reti ; PCI1
reti ; WATCHDOG
reti ; ICP1
@@ -148,6 +148,11 @@ firmwareStart: rjmp main
#ifdef MODULES_COM
.include "modules/com2/defs.asm"
.include "modules/com2/main.asm"
.include "modules/com2/buffer.asm"
.include "modules/uart_bitbang/defs.asm"
.include "modules/uart_bitbang/main.asm"
.include "modules/uart_bitbang/bytelevel.asm"
.include "modules/uart_bitbang/packetlevel.asm"
#ifdef MODULES_COM_WITH_ADDR_PROTO
.include "modules/comproto/defs.asm"
.include "modules/comproto/main.asm"

View File

@@ -105,9 +105,9 @@ main:
; ***************************************************************************
; includes
.include "modules/com2/lowlevel.asm"
.include "modules/uart_bitbang/bytelevel.asm"
.include "modules/uart_bitbang/packetlevel.asm"
.include "modules/com2/crc.asm"
.include "modules/com2/packets.asm"
.include "common/crc8.asm"
.include "common/utils_wait_fixed.asm"
.include "common/utils_copy_from_flash.asm"

View File

@@ -48,15 +48,20 @@
.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_DDR_DATA = DDRA
.equ COM_PORT_DATA = PORTA
.equ COM_PIN_DATA = PINA
.equ COM_PINNUM_DATA = PORTA0
.equ COM_TXD_DDR = DDRA
.equ COM_TXD_DATA = PORTA
.equ COM_TXD_PIN = PORTA0
.equ COM_RXD_DDR = DDRA
.equ COM_RXD_INPUT = PINA
.equ COM_RXD_OUTPUT = PORTA
.equ COM_RXD_PIN = PORTA0
.equ COM_ATTN_DDR = DDRA
.equ COM_ATTN_INPUT = PINA
.equ COM_ATTN_OUTPUT = PORTA
.equ COM_ATTN_PIN = PORTA1
.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

View File

@@ -87,7 +87,7 @@
; rjmp main ; Reset vector
rjmp BOOTLOADER_ADDR ; Reset vector ; use this for flashed system
reti ; EXT_INT0
rjmp com2IsrPcint0 ; PCI0
rjmp uartBitbangIsrPcint0 ; PCI0
reti ; PCI1
reti ; WATCHDOG
reti ; ICP1
@@ -137,6 +137,11 @@ firmwareStart: rjmp main
#ifdef MODULES_COM
.include "modules/com2/defs.asm"
.include "modules/com2/main.asm"
.include "modules/com2/buffer.asm"
.include "modules/uart_bitbang/defs.asm"
.include "modules/uart_bitbang/main.asm"
.include "modules/uart_bitbang/bytelevel.asm"
.include "modules/uart_bitbang/packetlevel.asm"
#ifdef MODULES_COM_WITH_ADDR_PROTO
.include "modules/comproto/defs.asm"
.include "modules/comproto/main.asm"

View File

@@ -101,9 +101,9 @@ main:
; ***************************************************************************
; includes
.include "modules/com2/lowlevel.asm"
.include "modules/uart_bitbang/bytelevel.asm"
.include "modules/uart_bitbang/packetlevel.asm"
.include "modules/com2/crc.asm"
.include "modules/com2/packets.asm"
.include "common/crc8.asm"
.include "common/utils_wait_fixed.asm"
.include "common/utils_copy_from_flash.asm"

View File

@@ -45,16 +45,6 @@
.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_DDR_DATA = DDRB
.equ COM_PORT_DATA = PORTB
.equ COM_PIN_DATA = PINB
.equ COM_PINNUM_DATA = PORTB1
.equ COM_DDR_ATTN = DDRB
.equ COM_PORT_ATTN = PORTB
.equ COM_PIN_ATTN = PINB
.equ COM_PINNUM_ATTN = PORTB2
.equ COM_IRQ_ADDR_ATTN = PCMSK
.equ COM_IRQ_BIT_ATTN = PCINT2 ; bit 2 in PCMSK0 (PCINT2)
.equ COM_IRQ_GIFR_ATTN = PCIF

View File

@@ -159,6 +159,12 @@ firmwareStart: rjmp main
.include "modules/sk6812/main.asm"
#endif
; test
#include "modules/uart_irq/defs.asm"
#include "modules/uart_irq/iface.asm"
#include "modules/uart_irq/iface1.asm"
; ***************************************************************************
; data in SRAM