avr: introduced network module
this will be the base module for network modules.
This commit is contained in:
@@ -29,10 +29,10 @@ ttyOnUart1_iface: .byte UART_HW_IFACE_SIZE
|
||||
TtyOnUart1_Init:
|
||||
ldi yl, LOW(ttyOnUart1_iface)
|
||||
ldi yh, HIGH(ttyOnUart1_iface)
|
||||
rcall UART_HW_InterfaceInit ; (R16, R17, X)
|
||||
rcall UART_HW_Uart1_Init ; (R16, R17, X)
|
||||
rcall UART_HW_Interface_Init ; (R16, R17, X)
|
||||
rcall UART_HW_Uart1_Init ; (R16, R17, X)
|
||||
ldi r16, TTYONUART1_IFACENUM
|
||||
std Y+UART_HW_IFACE_OFFS_IFACENUM, r16
|
||||
std Y+NET_IFACE_OFFS_IFACENUM, r16
|
||||
ret
|
||||
; @end
|
||||
|
||||
@@ -47,15 +47,15 @@ TtyOnUart1_Periodically:
|
||||
ldi yl, LOW(ttyOnUart1_iface)
|
||||
ldi yh, HIGH(ttyOnUart1_iface)
|
||||
|
||||
ldd r16, Y+UART_HW_IFACE_OFFS_READTIMER
|
||||
ldd r16, Y+NET_IFACE_OFFS_READTIMER
|
||||
inc r16
|
||||
breq TtyOnUart1_Periodically_l1
|
||||
std Y+UART_HW_IFACE_OFFS_READTIMER, r16
|
||||
std Y+NET_IFACE_OFFS_READTIMER, r16
|
||||
TtyOnUart1_Periodically_l1:
|
||||
ldd r16, Y+UART_HW_IFACE_OFFS_WRITETIMER
|
||||
ldd r16, Y+NET_IFACE_OFFS_WRITETIMER
|
||||
inc r16
|
||||
breq TtyOnUart1_Periodically_l2
|
||||
std Y+UART_HW_IFACE_OFFS_WRITETIMER, r16
|
||||
std Y+NET_IFACE_OFFS_WRITETIMER, r16
|
||||
TtyOnUart1_Periodically_l2:
|
||||
ret
|
||||
; @end
|
||||
@@ -259,7 +259,7 @@ ttyOnUart1RunWriteBufferEmpty:
|
||||
cp r16, r17
|
||||
breq ttyOnUart1RunWriteBufferEmpty_setIdle
|
||||
std Y+UART_HW_IFACE_OFFS_WRITEBUFNUM, r17
|
||||
rcall UART_HW_FixedBuffers_ReleaseByNum ; (R16, X)
|
||||
rcall NET_Buffer_ReleaseByNum ; (R16, X)
|
||||
ttyOnUart1RunWriteBufferEmpty_setIdle:
|
||||
rcall UART_HW_Uart1_StopTx ; disable transceiver and interrupts (R16)
|
||||
ldi r16, UART_HW_WRITEMODE_IDLE
|
||||
|
||||
Reference in New Issue
Block a user