avr: adapted boot firmware for n21 abd n22.
This commit is contained in:
@@ -15,6 +15,7 @@
|
|||||||
n20
|
n20
|
||||||
n21
|
n21
|
||||||
n22
|
n22
|
||||||
|
n23
|
||||||
r02
|
r02
|
||||||
t03
|
t03
|
||||||
x03
|
x03
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ firmwareStart: rjmp main ; will be overwritten when flashing
|
|||||||
|
|
||||||
|
|
||||||
main:
|
main:
|
||||||
rjmp bootLoader ; this routine is in modules/flash/proto.asm
|
rjmp bootLoader ; this routine is in modules/bootloader/main.asm
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -111,52 +111,34 @@ main:
|
|||||||
.include "common/utils_wait_fixed.asm"
|
.include "common/utils_wait_fixed.asm"
|
||||||
.include "common/utils_copy_from_flash.asm"
|
.include "common/utils_copy_from_flash.asm"
|
||||||
.include "common/utils_copy_sdram.asm"
|
.include "common/utils_copy_sdram.asm"
|
||||||
.include "modules/flash/bootloader.asm"
|
|
||||||
.include "modules/flash/flash.asm"
|
.include "modules/flash/defs.asm"
|
||||||
.include "modules/flash/recv.asm"
|
.include "modules/flash/eeprom.asm"
|
||||||
.include "modules/flash/send.asm"
|
.include "modules/flash/io.asm"
|
||||||
|
.include "modules/flash/io_attn.asm"
|
||||||
|
.include "modules/flash/io_bitbang.asm"
|
||||||
|
.include "modules/flash/flash1p.asm"
|
||||||
|
.include "modules/flash/flashprocess.asm"
|
||||||
.include "modules/flash/wait.asm"
|
.include "modules/flash/wait.asm"
|
||||||
.include "modules/flash/hdl_flash_start.asm"
|
.include "modules/bootloader/main.asm"
|
||||||
.include "modules/flash/hdl_flash_data.asm"
|
|
||||||
.include "modules/flash/hdl_flash_end.asm"
|
|
||||||
.include "modules/flash/flash_rsp.asm"
|
|
||||||
.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
|
|
||||||
|
|
||||||
|
systemSetSpeed:
|
||||||
|
.if clock == 8000000
|
||||||
|
ldi r16, (1<<CLKPCE)
|
||||||
|
ldi r17, 0
|
||||||
|
out CLKPR, r16
|
||||||
|
out CLKPR, r17
|
||||||
|
.endif
|
||||||
|
|
||||||
|
.if clock == 1000000
|
||||||
|
ldi r16, (1<<CLKPCE)
|
||||||
|
ldi r17, (1<<CLKPS1) | (1<<CLKPS0)
|
||||||
|
out CLKPR, r16
|
||||||
|
out CLKPR, r17
|
||||||
|
.endif
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -122,7 +122,8 @@ devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; v
|
|||||||
firmwareVersion: .db FIRMWARE_VARIANT_TEMP_WINDOW, FIRMWARE_VERSION_MAJOR
|
firmwareVersion: .db FIRMWARE_VARIANT_TEMP_WINDOW, FIRMWARE_VERSION_MAJOR
|
||||||
.db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
|
.db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
|
||||||
|
|
||||||
firmwareStart: rjmp main
|
firmwareStart:
|
||||||
|
rjmp main
|
||||||
|
|
||||||
|
|
||||||
; ***************************************************************************
|
; ***************************************************************************
|
||||||
|
|||||||
@@ -93,8 +93,7 @@ firmwareStart: rjmp main ; will be overwritten when flashing
|
|||||||
|
|
||||||
|
|
||||||
main:
|
main:
|
||||||
rjmp bootLoader ; this routine is in modules/flash/proto.asm
|
rjmp bootLoader ; this routine is in modules/bootloader/main.asm
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -108,17 +107,33 @@ main:
|
|||||||
.include "common/utils_wait_fixed.asm"
|
.include "common/utils_wait_fixed.asm"
|
||||||
.include "common/utils_copy_from_flash.asm"
|
.include "common/utils_copy_from_flash.asm"
|
||||||
.include "common/utils_copy_sdram.asm"
|
.include "common/utils_copy_sdram.asm"
|
||||||
.include "modules/flash/bootloader.asm"
|
|
||||||
.include "modules/flash/flash.asm"
|
.include "modules/flash/defs.asm"
|
||||||
.include "modules/flash/recv.asm"
|
.include "modules/flash/eeprom.asm"
|
||||||
.include "modules/flash/send.asm"
|
.include "modules/flash/io.asm"
|
||||||
|
.include "modules/flash/io_attn.asm"
|
||||||
|
.include "modules/flash/io_bitbang.asm"
|
||||||
|
.include "modules/flash/flash1p.asm"
|
||||||
|
.include "modules/flash/flashprocess.asm"
|
||||||
.include "modules/flash/wait.asm"
|
.include "modules/flash/wait.asm"
|
||||||
.include "modules/flash/hdl_flash_start.asm"
|
.include "modules/bootloader/main.asm"
|
||||||
.include "modules/flash/hdl_flash_data.asm"
|
|
||||||
.include "modules/flash/hdl_flash_end.asm"
|
|
||||||
.include "modules/flash/flash_rsp.asm"
|
|
||||||
.include "modules/flash/flash_ready.asm"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
systemSetSpeed:
|
||||||
|
.if clock == 8000000
|
||||||
|
ldi r16, (1<<CLKPCE)
|
||||||
|
ldi r17, 0
|
||||||
|
out CLKPR, r16
|
||||||
|
out CLKPR, r17
|
||||||
|
.endif
|
||||||
|
|
||||||
|
.if clock == 1000000
|
||||||
|
ldi r16, (1<<CLKPCE)
|
||||||
|
ldi r17, (1<<CLKPS1) | (1<<CLKPS0)
|
||||||
|
out CLKPR, r16
|
||||||
|
out CLKPR, r17
|
||||||
|
.endif
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user