Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Diff: mbed.bat
- Revision:
- 5:ace99c9d0e4e
- Parent:
- 0:e5c84595673c
- Child:
- 6:f3529afba368
--- a/mbed.bat Fri Aug 14 07:07:59 2020 +0000 +++ b/mbed.bat Sun Aug 16 10:08:01 2020 +0000 @@ -1,151 +1,151 @@ -#!/bin/bash - -echo off - -MBED_SYS_PATH=~/src/arm/sys -LIB_PATH=~/src/arm/lib -OS=6 -PROF=DEBUG -PROJ_NAME=${PWD##*/} -PORT=/dev/ttyACM0 - -#MCU="$1" -#shift # past argument - -MACROS=() -SRC_LIB_PATH=() -while [[ $# -gt 0 ]] -do -key="$1" - -case $key in - all) - FLASH='-f' - shift # past argument - ;; - -f) - FLASH='-f' - shift # past argument - ;; - -c|clean) - CLEAN='-c' - shift # past argument - ;; - -D|--macro) - MACROS+=('-D '$2) - shift # past argument - shift # past value - ;; - -l) - SRC_LIB_PATH+=' --source '${LIB_PATH}/$2 - shift # past argument - shift # past value - ;; - -m) - MCU="$2" - shift # past argument - shift # past value - ;; - -os) - OS="$2" - shift # past argument - shift # past value - ;; - -p|--port) - PORT="$2" - shift # past argument - shift # past value - ;; - -r|--release) - PROF=RELEASE - shift # past argument - ;; - *) # additional args - ARGS+=("$key $2") - shift # past argument - ;; -esac -done - -if [ ${OS} == 2 ] -then - GCC_ARM_PATH=/opt/gcc-arm-none-eabi-6-2017-q2-update - MBED_OS_PATH=${MBED_SYS_PATH}/mbed - CUSTOM_TARGETS_PATH=${MBED_SYS_PATH}/custom_targets/mbed - PROFILE=debug - if [ ${PROF} == RELEASE ] - then - PROFILE=release - fi -else - GCC_ARM_PATH=/opt/gcc-arm-none-eabi-9-2019-q4-major - MBED_OS_PATH=${MBED_SYS_PATH}/mbed-os - CUSTOM_TARGETS_PATH=${MBED_SYS_PATH}/custom_targets/mbed-os - PROFILE=${MBED_SYS_PATH}/mbed-os/tools/profiles/debug.json - if [ ${PROF} == RELEASE ] - then - PROFILE=${MBED_SYS_PATH}/mbed-os/tools/profiles/release.json - fi -fi - -mbed config -G GCC_ARM_PATH ${GCC_ARM_PATH}/bin -mbed config -G MBED_OS_DIR ${MBED_OS_PATH} -if ! [ -f ./.mbed ] -then - mbed new . -fi -mbed export -i qtcreator -m ${MCU} --source . --source ${CUSTOM_TARGETS_PATH} --source ${MBED_OS_PATH} --source ${GCC_ARM_PATH}/arm-none-eabi/include ${SRC_LIB_PATH} -#mbed export -i vscode_gcc_arm -m ${MCU} --source . --source ${CUSTOM_TARGETS_PATH} --source ${MBED_OS_PATH} --source ${GCC_ARM_PATH}/arm-none-eabi/include ${SRC_LIB_PATH} -mbed compile -t GCC_ARM -m ${MCU} ${ARGS} --source . --source ${CUSTOM_TARGETS_PATH} --source ${MBED_OS_PATH} ${SRC_LIB_PATH} $CLEAN --profile ${PROFILE} - -#if [ "${MCU}" == "LPC1768X" ] -#then -# ${GCC_ARM_PATH}/bin/arm-none-eabi-objcopy -I binary -O ihex ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.bin ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.hex -#fi - -if [ "${FLASH}" == "-f" ] -then - case ${MCU} in - LPC1768) - MCU_CFG="pyOCD" - ;; - LPC1768X) - MCU_CFG="pyOCD" - ;; - BLUEPILL|MAPLE_MINI|NUCLEO_F103RB|STM32F103RC|STM32F103VE) - MCU_CFG="/usr/local/share/openocd/scripts/board/st_nucleo_f103rb.cfg" - ;; - NUCLEO_F446RE|STM32F407VE) - MCU_CFG="/usr/local/share/openocd/scripts/board/st_nucleo_f4.cfg" - ;; - NUCLEO_F767ZI) - MCU_CFG="/usr/local/share/openocd/scripts/board/stm32f7discovery.cfg" - ;; - *) - MCU_CFG="not_supported" - echo "No support to flash "${MCU} - ;; - esac - if [ "$MCU_CFG" != "not_supported" ] - then - echo "Flashing the "${MCU}" ..." - case ${MCU_CFG} in - pyOCD) - if [ "$PORT" == "/dev/ttyACM0" ] - then - ~/.local/bin/pyocd-flashtool -t lpc1768 ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.bin - #~/.local/bin/pyocd-flashtool -t lpc1768 ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.bin > /dev/null 2>&1 - else - lpc21isp -bin ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.bin ${PORT} 115200 96000 - fi - ;; - *) - openocd -f ${MCU_CFG} -c """program ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.elf verify reset exit""" - #openocd -f ${MCU_CFG} -c """program ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.elf verify reset exit""" > /dev/null 2>&1 - ;; - esac - echo "Done" - fi -fi - +#!/bin/bash + +echo off + +MBED_SYS_PATH=~/src/arm/sys +LIB_PATH=~/src/arm/lib +OS=6 +PROF=DEBUG +PROJ_NAME=${PWD##*/} +PORT=/dev/ttyACM0 + +#MCU="$1" +#shift # past argument + +MACROS=() +SRC_LIB_PATH=() +while [[ $# -gt 0 ]] +do +key="$1" + +case $key in + all) + FLASH='-f' + shift # past argument + ;; + -f) + FLASH='-f' + shift # past argument + ;; + -c|clean) + CLEAN='-c' + shift # past argument + ;; + -D|--macro) + MACROS+=('-D '$2) + shift # past argument + shift # past value + ;; + -l) + SRC_LIB_PATH+=' --source '${LIB_PATH}/$2 + shift # past argument + shift # past value + ;; + -m) + MCU="$2" + shift # past argument + shift # past value + ;; + -os) + OS="$2" + shift # past argument + shift # past value + ;; + -p|--port) + PORT="$2" + shift # past argument + shift # past value + ;; + -r|--release) + PROF=RELEASE + shift # past argument + ;; + *) # additional args + ARGS+=("$key $2") + shift # past argument + ;; +esac +done +if [ ${OS} == 2 ] +then + GCC_ARM_PATH=/opt/gcc-arm-none-eabi-6-2017-q2-update + MBED_OS_PATH=${MBED_SYS_PATH}/mbed + CUSTOM_TARGETS_PATH=${MBED_SYS_PATH}/custom_targets/mbed + PROFILE=debug + if [ ${PROF} == RELEASE ] + then + PROFILE=release + fi +else + GCC_ARM_PATH=/opt/gcc-arm-none-eabi-9-2019-q4-major + MBED_OS_PATH=${MBED_SYS_PATH}/mbed-os + CUSTOM_TARGETS_PATH=${MBED_SYS_PATH}/custom_targets/mbed-os + PROFILE=${MBED_SYS_PATH}/mbed-os/tools/profiles/debug.json + if [ ${PROF} == RELEASE ] + then + PROFILE=${MBED_SYS_PATH}/mbed-os/tools/profiles/release.json + fi +fi + +mbed config -G GCC_ARM_PATH ${GCC_ARM_PATH}/bin +mbed config -G MBED_OS_DIR ${MBED_OS_PATH} +if ! [ -f ./.mbed ] +then + mbed new . +fi +mbed export -i qtcreator -m ${MCU} --source . --source ${CUSTOM_TARGETS_PATH} --source ${MBED_OS_PATH} --source ${GCC_ARM_PATH}/arm-none-eabi/include ${SRC_LIB_PATH} +#mbed export -i vscode_gcc_arm -m ${MCU} --source . --source ${CUSTOM_TARGETS_PATH} --source ${MBED_OS_PATH} --source ${GCC_ARM_PATH}/arm-none-eabi/include ${SRC_LIB_PATH} +mbed compile -t GCC_ARM -m ${MCU} ${ARGS} --source . --source ${CUSTOM_TARGETS_PATH} --source ${MBED_OS_PATH} ${SRC_LIB_PATH} $CLEAN --profile ${PROFILE} + +#if [ "${MCU}" == "LPC1768DBG" ] +#then +# ${GCC_ARM_PATH}/bin/arm-none-eabi-objcopy -I binary -O ihex ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.bin ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.hex +#fi + +if [ "${FLASH}" == "-f" ] +then + case ${MCU} in + LPC1768) + MCU_CFG="pyOCD" + ;; + LPC1768DBG) + MCU_CFG="pyOCD" + ;; + BLUEPILL|MAPLE_MINI|NUCLEO_F103RB|STM32F103RC|STM32F103VE) + MCU_CFG="/usr/local/share/openocd/scripts/board/st_nucleo_f103rb.cfg" + ;; + NUCLEO_F446RE|STM32F407VE) + MCU_CFG="/usr/local/share/openocd/scripts/board/st_nucleo_f4.cfg" + ;; + NUCLEO_F767ZI) + MCU_CFG="/usr/local/share/openocd/scripts/board/stm32f7discovery.cfg" + ;; + *) + MCU_CFG="not_supported" + echo "No support to flash "${MCU} + ;; + esac + if [ "$MCU_CFG" != "not_supported" ] + then + echo "Flashing the "${MCU}" ..." + case ${MCU_CFG} in + pyOCD) + if [ "$PORT" == "/dev/ttyACM0" ] + then + ~/.local/bin/pyocd-flashtool -t lpc1768 ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.bin + #~/.local/bin/pyocd-flashtool -t lpc1768 ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.bin > /dev/null 2>&1 + else + lpc21isp -bin ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.bin ${PORT} 115200 96000 + fi + ;; + *) + openocd -f ${MCU_CFG} -c """program ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.elf verify reset exit""" + #openocd -f ${MCU_CFG} -c """program ./BUILD/${MCU}/GCC_ARM-${PROF}/${PROJ_NAME}.elf verify reset exit""" > /dev/null 2>&1 + ;; + esac + echo "Done" + fi +fi + +