mirror of
https://github.com/halleysfifthinc/Toyota-AVC-LAN
synced 2025-06-07 07:56:21 +00:00
Setup and bugfix programming with avrdude
This commit is contained in:
parent
7245695bc7
commit
a9ea586ed4
@ -3,6 +3,9 @@ include(CMakeDependentOption)
|
|||||||
|
|
||||||
set(WITH_MCU OFF)
|
set(WITH_MCU OFF)
|
||||||
set(AVR_MCU "attiny3216")
|
set(AVR_MCU "attiny3216")
|
||||||
|
set(AVR_UPLOADTOOL_PORT /dev/ttyUSB1)
|
||||||
|
set(AVR_PROGRAMMER serialupdi)
|
||||||
|
set(AVR_UPLOADTOOL_BAUDRATE 230400)
|
||||||
|
|
||||||
set(CMAKE_TOOLCHAIN_FILE "${CMAKE_CURRENT_SOURCE_DIR}/cmake/avr-gcc-toolchain.cmake")
|
set(CMAKE_TOOLCHAIN_FILE "${CMAKE_CURRENT_SOURCE_DIR}/cmake/avr-gcc-toolchain.cmake")
|
||||||
|
|
||||||
|
@ -103,7 +103,7 @@ if(NOT AVR_SIZE_ARGS)
|
|||||||
if(APPLE)
|
if(APPLE)
|
||||||
set(AVR_SIZE_ARGS -B)
|
set(AVR_SIZE_ARGS -B)
|
||||||
else(APPLE)
|
else(APPLE)
|
||||||
set(AVR_SIZE_ARGS -C;--mcu=${AVR_MCU})
|
set(AVR_SIZE_ARGS -G)
|
||||||
endif(APPLE)
|
endif(APPLE)
|
||||||
endif(NOT AVR_SIZE_ARGS)
|
endif(NOT AVR_SIZE_ARGS)
|
||||||
|
|
||||||
@ -167,13 +167,12 @@ function(add_avr_executable EXECUTABLE_NAME)
|
|||||||
endif(NOT ARGN)
|
endif(NOT ARGN)
|
||||||
|
|
||||||
# set file names
|
# set file names
|
||||||
set(elf_file ${EXECUTABLE_NAME}${MCU_TYPE_FOR_FILENAME}.elf)
|
|
||||||
set(hex_file ${EXECUTABLE_NAME}${MCU_TYPE_FOR_FILENAME}.hex)
|
set(hex_file ${EXECUTABLE_NAME}${MCU_TYPE_FOR_FILENAME}.hex)
|
||||||
set(lst_file ${EXECUTABLE_NAME}${MCU_TYPE_FOR_FILENAME}.lst)
|
set(lst_file ${EXECUTABLE_NAME}${MCU_TYPE_FOR_FILENAME}.lst)
|
||||||
set(map_file ${EXECUTABLE_NAME}${MCU_TYPE_FOR_FILENAME}.map)
|
set(map_file ${EXECUTABLE_NAME}${MCU_TYPE_FOR_FILENAME}.map)
|
||||||
set(eeprom_image ${EXECUTABLE_NAME}${MCU_TYPE_FOR_FILENAME}-eeprom.hex)
|
set(eeprom_image ${EXECUTABLE_NAME}${MCU_TYPE_FOR_FILENAME}-eeprom.hex)
|
||||||
|
|
||||||
set (${EXECUTABLE_NAME}_ELF_TARGET ${elf_file} PARENT_SCOPE)
|
set (${EXECUTABLE_NAME}_ELF_TARGET ${EXECUTABLE_NAME} PARENT_SCOPE)
|
||||||
set (${EXECUTABLE_NAME}_HEX_TARGET ${hex_file} PARENT_SCOPE)
|
set (${EXECUTABLE_NAME}_HEX_TARGET ${hex_file} PARENT_SCOPE)
|
||||||
set (${EXECUTABLE_NAME}_LST_TARGET ${lst_file} PARENT_SCOPE)
|
set (${EXECUTABLE_NAME}_LST_TARGET ${lst_file} PARENT_SCOPE)
|
||||||
set (${EXECUTABLE_NAME}_MAP_TARGET ${map_file} PARENT_SCOPE)
|
set (${EXECUTABLE_NAME}_MAP_TARGET ${map_file} PARENT_SCOPE)
|
||||||
@ -188,19 +187,10 @@ function(add_avr_executable EXECUTABLE_NAME)
|
|||||||
LINK_FLAGS "-mmcu=${AVR_MCU} -Wl,--gc-sections -mrelax -Wl,-Map,${map_file}"
|
LINK_FLAGS "-mmcu=${AVR_MCU} -Wl,--gc-sections -mrelax -Wl,-Map,${map_file}"
|
||||||
)
|
)
|
||||||
|
|
||||||
add_custom_command(
|
|
||||||
OUTPUT ${hex_file}
|
|
||||||
COMMAND
|
|
||||||
${AVR_OBJCOPY} -j .text -j .data -O ihex ${elf_file} ${hex_file}
|
|
||||||
COMMAND
|
|
||||||
${AVR_SIZE_TOOL} ${AVR_SIZE_ARGS} ${elf_file}
|
|
||||||
DEPENDS ${EXECUTABLE_NAME}
|
|
||||||
)
|
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${lst_file}
|
OUTPUT ${lst_file}
|
||||||
COMMAND
|
COMMAND
|
||||||
${AVR_OBJDUMP} -d ${elf_file} > ${lst_file}
|
${AVR_OBJDUMP} -d ${EXECUTABLE_NAME} > ${lst_file}
|
||||||
DEPENDS ${EXECUTABLE_NAME}
|
DEPENDS ${EXECUTABLE_NAME}
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -210,7 +200,7 @@ function(add_avr_executable EXECUTABLE_NAME)
|
|||||||
COMMAND
|
COMMAND
|
||||||
${AVR_OBJCOPY} -j .eeprom --set-section-flags=.eeprom=alloc,load
|
${AVR_OBJCOPY} -j .eeprom --set-section-flags=.eeprom=alloc,load
|
||||||
--change-section-lma .eeprom=0 --no-change-warnings
|
--change-section-lma .eeprom=0 --no-change-warnings
|
||||||
-O ihex ${elf_file} ${eeprom_image}
|
-O ihex ${EXECUTABLE_NAME} ${eeprom_image}
|
||||||
DEPENDS ${EXECUTABLE_NAME}
|
DEPENDS ${EXECUTABLE_NAME}
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -225,9 +215,9 @@ function(add_avr_executable EXECUTABLE_NAME)
|
|||||||
add_custom_target(
|
add_custom_target(
|
||||||
upload_${EXECUTABLE_NAME}
|
upload_${EXECUTABLE_NAME}
|
||||||
${AVR_UPLOADTOOL} ${AVR_UPLOADTOOL_BASE_OPTIONS} ${AVR_UPLOADTOOL_OPTIONS}
|
${AVR_UPLOADTOOL} ${AVR_UPLOADTOOL_BASE_OPTIONS} ${AVR_UPLOADTOOL_OPTIONS}
|
||||||
-U flash:w:${hex_file}
|
-U flash:w:${EXECUTABLE_NAME}:e
|
||||||
-P ${AVR_UPLOADTOOL_PORT}
|
-P ${AVR_UPLOADTOOL_PORT}
|
||||||
DEPENDS ${hex_file}
|
DEPENDS ${EXECUTABLE_NAME}
|
||||||
COMMENT "Uploading ${hex_file} to ${AVR_MCU} using ${AVR_PROGRAMMER}"
|
COMMENT "Uploading ${hex_file} to ${AVR_MCU} using ${AVR_PROGRAMMER}"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -245,7 +235,7 @@ function(add_avr_executable EXECUTABLE_NAME)
|
|||||||
# disassemble
|
# disassemble
|
||||||
add_custom_target(
|
add_custom_target(
|
||||||
disassemble_${EXECUTABLE_NAME}
|
disassemble_${EXECUTABLE_NAME}
|
||||||
${AVR_OBJDUMP} -h -S ${elf_file} > ${EXECUTABLE_NAME}.lst
|
${AVR_OBJDUMP} -h -S ${EXECUTABLE_NAME} > ${EXECUTABLE_NAME}.lst
|
||||||
DEPENDS ${EXECUTABLE_NAME}
|
DEPENDS ${EXECUTABLE_NAME}
|
||||||
)
|
)
|
||||||
endfunction(add_avr_executable)
|
endfunction(add_avr_executable)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user