start using new COM module in n27, r05 and t03.
This commit is contained in:
@@ -70,6 +70,17 @@
|
||||
.equ COM_IRQ_GIMSK_ATTN = PCIE0
|
||||
|
||||
|
||||
.equ COM_CLK_DDR = DDRA
|
||||
.equ COM_CLK_INPUT = PINA
|
||||
.equ COM_CLK_OUTPUT = PORTA
|
||||
.equ COM_CLK_PIN = PORTA7
|
||||
|
||||
.equ COM_IRQ_ADDR_CLK = PCMSK0
|
||||
.equ COM_IRQ_BIT_CLK = PCINT7 ; bit 7 in PCMSK0
|
||||
.equ COM_IRQ_GIFR_CLK = PCIF0
|
||||
.equ COM_IRQ_GIMSK_CLK = PCIE0
|
||||
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
; TWI master module
|
||||
|
||||
@@ -61,7 +61,8 @@
|
||||
#define MODULES_CLOCK
|
||||
#define MODULES_LED_SIMPLE
|
||||
#define MODULES_NETWORK
|
||||
#define MODULES_UART_BITBANG
|
||||
;#define MODULES_UART_BITBANG
|
||||
#define MODULES_COM2W
|
||||
#define MODULES_TWI_MASTER
|
||||
;#define MODULES_LCD
|
||||
;#define LCD_MINIMAL_FONT
|
||||
@@ -123,7 +124,8 @@
|
||||
; rjmp main ; Reset vector
|
||||
rjmp BOOTLOADER_ADDR ; Reset vector ; use this for flashed system
|
||||
reti ; EXT_INT0
|
||||
rjmp UART_BitBang_PcintIsr ; PCI0
|
||||
; rjmp UART_BitBang_PcintIsr ; PCI0
|
||||
rjmp com2wPcintIsr ; PCI0
|
||||
reti ; PCI1
|
||||
reti ; WATCHDOG
|
||||
reti ; ICP1
|
||||
@@ -218,7 +220,8 @@ onEveryLoop:
|
||||
; ---------------------------------------------------------------------------
|
||||
; defines for network interface
|
||||
|
||||
.equ netInterfaceData = uart_bitbang_iface
|
||||
;.equ netInterfaceData = uart_bitbang_iface
|
||||
.equ netInterfaceData = com2w_iface
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -56,11 +56,11 @@
|
||||
.equ COM_HALFBIT_LENGTH = 26000 ; see https://de.wikipedia.org/wiki/Universal_Asynchronous_Receiver_Transmitter
|
||||
|
||||
; settings for comOnUart0
|
||||
;.equ COM_DATA_DDR = DDRA
|
||||
;.equ COM_DATA_INPUT = PINA
|
||||
;.equ COM_DATA_OUTPUT = PORTA
|
||||
;.equ COM_DATA_PUE = PUEA
|
||||
;.equ COM_DATA_PIN = PORTA2
|
||||
.equ COM_DATA0_DDR = DDRA
|
||||
.equ COM_DATA0_INPUT = PINA
|
||||
.equ COM_DATA0_OUTPUT = PORTA
|
||||
.equ COM_DATA0_PUE = PUEA
|
||||
.equ COM_DATA0_PIN = PORTA2
|
||||
|
||||
.equ COM_ATTN0_DDR = DDRA
|
||||
.equ COM_ATTN0_INPUT = PINA
|
||||
@@ -87,6 +87,25 @@
|
||||
.equ COM_IRQ_GIMSK_ATTN1 = PCIE1
|
||||
|
||||
|
||||
; settings for comOnUart1
|
||||
.equ COM_DATA1_DDR = DDRA
|
||||
.equ COM_DATA1_INPUT = PINA
|
||||
.equ COM_DATA1_OUTPUT = PORTA
|
||||
.equ COM_DATA1_PUE = PUEA
|
||||
.equ COM_DATA1_PIN = PORTA4
|
||||
|
||||
.equ COM_CLK1_DDR = DDRB
|
||||
.equ COM_CLK1_INPUT = PINB
|
||||
.equ COM_CLK1_OUTPUT = PORTB
|
||||
.equ COM_CLK1_PUE = PUEB
|
||||
.equ COM_CLK1_PIN = PORTB1
|
||||
|
||||
.equ COM_IRQ_ADDR_CLK1 = PCMSK1
|
||||
.equ COM_IRQ_BIT_CLK1 = PCINT9 ; bit PCINT9 in PCMSK1
|
||||
.equ COM_IRQ_GIFR_CLK1 = PCIF1
|
||||
.equ COM_IRQ_GIMSK_CLK1 = PCIE1
|
||||
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
; TWI master module
|
||||
|
||||
@@ -70,12 +70,13 @@
|
||||
#endif
|
||||
#define MODULES_NETWORK
|
||||
#define MODULES_COMONUART0
|
||||
#define MODULES_COMONUART1
|
||||
;#define MODULES_COMONUART1
|
||||
#define MODULES_COM2W1
|
||||
;#define APPS_NETWORK
|
||||
#define APPS_ROUTER
|
||||
|
||||
|
||||
.equ NET_BUFFERS_NUM = 11
|
||||
.equ NET_BUFFERS_NUM = 10
|
||||
|
||||
|
||||
|
||||
@@ -102,7 +103,7 @@
|
||||
rjmp BOOTLOADER_ADDR ; 1: RESET Reset vector use this for flashed system
|
||||
reti ; 2: INT0 External Interrupt Request 0
|
||||
rjmp ComOnUart0_AttnChangeIsr ; 3: PCINT0 Pin Change Interrupt 0
|
||||
rjmp ComOnUart1_AttnChangeIsr ; 4: PCINT1 Pin Change Interrupt 1
|
||||
rjmp COM2W1_ClkChangeIsr ; 4: PCINT1 Pin Change Interrupt 1
|
||||
reti ; 5: WDT Watchdog Time-out
|
||||
reti ; 6: TIM1_CAPT Timer/Counter1 Capture Event
|
||||
reti ; 7: TIM1_COMPA (OC1A) Timer/Counter1 Compare Match A
|
||||
@@ -125,7 +126,7 @@
|
||||
reti ; 24: USART0_DRE USART0 Data Register Empty
|
||||
reti ; 25: USART0_TXC USART0 Tx Complete
|
||||
reti ; 26: USART1_RXS USART1 Rx Start
|
||||
rjmp ComOnUart1_RxCharIsr ; 27: USART1_RXC USART1 Rx Complete
|
||||
reti ; 27: USART1_RXC USART1 Rx Complete
|
||||
reti ; 28: USART1_DRE USART1 Data Register Empty
|
||||
reti ; 29: USART1_TXC USART1 Tx Complete
|
||||
reti ; 30: TWI Two-Wire-Interface
|
||||
@@ -210,7 +211,7 @@ onMessageReceived:
|
||||
; defines for network interface
|
||||
|
||||
.equ netInterfaceData = comOnUart0_iface
|
||||
.equ netInterfaceData2 = comOnUart1_iface
|
||||
.equ netInterfaceData2 = com2w1_iface
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -79,6 +79,25 @@
|
||||
|
||||
|
||||
|
||||
.equ COM_DATA_DDR = DDRA
|
||||
.equ COM_DATA_INPUT = PINA
|
||||
.equ COM_DATA_OUTPUT = PORTA
|
||||
.equ COM_DATA_PUE = PUEA
|
||||
.equ COM_DATA_PIN = PORTA2
|
||||
|
||||
.equ COM_CLK_DDR = DDRA
|
||||
.equ COM_CLK_INPUT = PINA
|
||||
.equ COM_CLK_OUTPUT = PORTA
|
||||
.equ COM_CLK_PUE = PUEA
|
||||
.equ COM_CLK_PIN = PORTA0
|
||||
|
||||
.equ COM_IRQ_ADDR_CLK = PCMSK0
|
||||
.equ COM_IRQ_BIT_CLK = PCINT0 ; bit 0 in PCMSK0
|
||||
.equ COM_IRQ_GIFR_CLK = PCIF0
|
||||
.equ COM_IRQ_GIMSK_CLK = PCIE0
|
||||
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
; 1-Wire Master
|
||||
;
|
||||
|
||||
@@ -74,7 +74,8 @@
|
||||
;#define MODULES_DS18B20
|
||||
;#define MODULES_MOTION
|
||||
#define MODULES_NETWORK
|
||||
#define MODULES_COMONUART0
|
||||
#define MODULES_COM2W
|
||||
;#define MODULES_COMONUART0
|
||||
#define MODULES_TTYONUART1
|
||||
#define APPS_STATS
|
||||
#define APPS_NETWORK
|
||||
@@ -109,7 +110,8 @@
|
||||
|
||||
rjmp BOOTLOADER_ADDR ; 1: RESET Reset vector use this for flashed system
|
||||
reti ; 2: INT0 External Interrupt Request 0
|
||||
rjmp ComOnUart0_AttnChangeIsr ; 3: PCINT0 Pin Change Interrupt 0
|
||||
; rjmp COM2W1_ClkChangeIsr ; 3: PCINT0 Pin Change Interrupt 0
|
||||
rjmp com2wPcintIsr ; 3: PCINT0 Pin Change Interrupt 0
|
||||
reti ; 4: PCINT1 Pin Change Interrupt 1
|
||||
reti ; 5: WDT Watchdog Time-out
|
||||
reti ; 6: TIM1_CAPT Timer/Counter1 Capture Event
|
||||
@@ -129,7 +131,8 @@
|
||||
reti ; 20: TIM2_OVF (OVF2) Timer/Counter2 Overflow
|
||||
reti ; 21: SPI SPI Serial Transfer Complete
|
||||
reti ; 22: USART0_RXS USART0 Rx Start
|
||||
rjmp ComOnUart0_RxCharIsr ; 23: USART0_RXC USART0 Rx Complete
|
||||
; rjmp ComOnUart0_RxCharIsr ; 23: USART0_RXC USART0 Rx Complete
|
||||
reti ; 23: USART0_RXC USART0 Rx Complete
|
||||
reti ; 24: USART0_DRE USART0 Data Register Empty
|
||||
reti ; 25: USART0_TXC USART0 Tx Complete
|
||||
reti ; 26: USART1_RXS USART1 Rx Start
|
||||
@@ -165,7 +168,7 @@ firmwareStart:
|
||||
onSystemStart:
|
||||
; set interface number for UART0
|
||||
ldi r16, COMONUART0_IFACENUM
|
||||
sts comOnUart0_iface+NET_IFACE_OFFS_IFACENUM, r16
|
||||
sts netInterfaceData2+NET_IFACE_OFFS_IFACENUM, r16
|
||||
; set interface number for UART1
|
||||
ldi r16, TTYONUART1_IFACENUM
|
||||
sts ttyOnUart1_iface+NET_IFACE_OFFS_IFACENUM, r16
|
||||
@@ -246,7 +249,7 @@ letSysHandleMsg:
|
||||
ld r16, X
|
||||
cpi r16, 0xff
|
||||
breq letSysHandleMsg_forMe
|
||||
lds r17, comOnUart0_iface+NET_IFACE_OFFS_ADDRESS
|
||||
lds r17, netInterfaceData2+NET_IFACE_OFFS_ADDRESS
|
||||
cp r16, r17
|
||||
brne letSysHandleMsg_end
|
||||
letSysHandleMsg_forMe:
|
||||
@@ -304,8 +307,8 @@ addMsgToInterface:
|
||||
clc
|
||||
ret
|
||||
addMsgToInterface_toUart0:
|
||||
ldi yl, LOW(comOnUart0_iface)
|
||||
ldi yh, HIGH(comOnUart0_iface)
|
||||
ldi yl, LOW(netInterfaceData2)
|
||||
ldi yh, HIGH(netInterfaceData2)
|
||||
rjmp NET_Interface_AddOutgoingMsgNum ; try to add msg to interface
|
||||
addMsgToInterface_toUart1:
|
||||
ldi yl, LOW(ttyOnUart1_iface)
|
||||
@@ -332,5 +335,6 @@ addMsgToInterface_toUart1:
|
||||
; defines for network interface
|
||||
|
||||
.equ netInterfaceData = ttyOnUart1_iface
|
||||
.equ netInterfaceData2 = comOnUart0_iface
|
||||
;.equ netInterfaceData2 = comOnUart0_iface
|
||||
.equ netInterfaceData2 = com2w_iface
|
||||
|
||||
|
||||
Reference in New Issue
Block a user